1 |
C $Header$ |
C $Header$ |
2 |
C $Name$ |
C $Name$ |
3 |
|
|
4 |
|
#include "PACKAGES_CONFIG.h" |
5 |
#include "CPP_OPTIONS.h" |
#include "CPP_OPTIONS.h" |
6 |
|
|
7 |
CBOP |
CBOP |
33 |
C | |
C | |
34 |
C |-- INI_GRID |
C |-- INI_GRID |
35 |
C | |
C | |
36 |
|
C |-- INI_EOS |
37 |
|
C | |
38 |
C |-- INI_DEPTHS |
C |-- INI_DEPTHS |
39 |
C | |
C | |
40 |
C |-- INI_MASKS_ETC |
C |-- INI_MASKS_ETC |
41 |
C | |
C | |
|
C |-- INI_LINEAR_PHSURF |
|
|
C | |
|
|
C |-- INI_CORI |
|
|
C | |
|
42 |
C |-- PACKAGES_BOOT |
C |-- PACKAGES_BOOT |
43 |
C | |
C | |
44 |
C |-- PACKAGES_READPARMS |
C |-- PACKAGES_READPARMS |
45 |
C | |
C | |
46 |
|
C |-- PACKAGES_INIT_FIXED |
47 |
|
C | |
48 |
C |-- PACKAGES_CHECK |
C |-- PACKAGES_CHECK |
49 |
C | |
C | |
50 |
C |-- PACKAGES_INIT_FIXED |
C |-- INI_LINEAR_PHSURF |
51 |
C | |
C | |
52 |
C |-- ZONAL_FILT_INIT |
C |-- INI_CORI |
53 |
C | |
C | |
54 |
C |-- INI_CG2D |
C |-- INI_CG2D |
55 |
C | |
C | |
56 |
C |-- INI_CG3D |
C |-- INI_CG3D |
57 |
C | |
C | |
58 |
|
C |-- CONFIG_CHECK |
59 |
|
C | |
60 |
C |-- CONFIG_SUMMARY |
C |-- CONFIG_SUMMARY |
61 |
|
C | |
62 |
|
C |-- MNC_INIT |
63 |
|
|
64 |
C !USES: |
C !USES: |
65 |
IMPLICIT NONE |
IMPLICIT NONE |
79 |
CALL INI_PARMS( myThid ) |
CALL INI_PARMS( myThid ) |
80 |
_BARRIER |
_BARRIER |
81 |
|
|
82 |
#ifndef EXCLUDE_MONITOR |
#ifdef ALLOW_MONITOR |
83 |
C-- Initialise MONITOR I/O streams so we can report config. info |
C-- Initialise MONITOR I/O streams so we can report config. info |
84 |
CALL MON_INIT( myThid ) |
CALL MON_INIT( myThid ) |
85 |
_BARRIER |
_BARRIER |
91 |
CALL INI_GRID( myThid ) |
CALL INI_GRID( myThid ) |
92 |
_BARRIER |
_BARRIER |
93 |
|
|
94 |
|
C-- Set equation of state parameters. |
95 |
|
CALL INI_EOS( myThid ) |
96 |
|
_BARRIER |
97 |
|
|
98 |
C-- Initialise map of depths |
C-- Initialise map of depths |
99 |
CALL INI_DEPTHS( myThid ) |
CALL INI_DEPTHS( myThid ) |
100 |
_BARRIER |
_BARRIER |
104 |
CALL INI_MASKS_ETC( myThid ) |
CALL INI_MASKS_ETC( myThid ) |
105 |
_BARRIER |
_BARRIER |
106 |
|
|
|
C-- Set Bo_surf => define the Linear Relation: Phi_surf(eta) |
|
|
CALL INI_LINEAR_PHISURF( myThid ) |
|
|
|
|
|
C-- Set coriolis operators |
|
|
CALL INI_CORI( myThid ) |
|
|
|
|
107 |
C-- Configure packages |
C-- Configure packages |
108 |
CALL PACKAGES_BOOT( myThid ) |
CALL PACKAGES_BOOT( myThid ) |
109 |
|
|
110 |
C-- Read configuration parameters for packages |
C-- Read configuration parameters for packages |
111 |
CALL PACKAGES_READPARMS( myThid ) |
CALL PACKAGES_READPARMS( myThid ) |
112 |
|
|
113 |
|
C-- Call fixed data initialization phase of packages |
114 |
|
CALL PACKAGES_INIT_FIXED( myThid ) |
115 |
|
|
116 |
C-- Check dependances between packages |
C-- Check dependances between packages |
117 |
CALL PACKAGES_CHECK( myThid ) |
CALL PACKAGES_CHECK( myThid ) |
118 |
|
|
119 |
C-- Call fixed data initialization phase of packages |
C-- Set Bo_surf => define the Linear Relation: Phi_surf(eta) |
120 |
CALL PACKAGES_INIT_FIXED( myThid ) |
CALL INI_LINEAR_PHISURF( myThid ) |
121 |
|
|
122 |
#ifdef ALLOW_ZONAL_FILT |
C-- Set coriolis operators |
123 |
C-- Latitude circle filter initialisation |
CALL INI_CORI( myThid ) |
|
CALL ZONAL_FILT_INIT(myThid) |
|
|
_BARRIER |
|
|
#endif |
|
124 |
|
|
125 |
C-- Set laplace operators for use in 2D conjugate gradient solver. |
C-- Set laplace operators for use in 2D conjugate gradient solver. |
126 |
CALL INI_CG2D( myThid ) |
CALL INI_CG2D( myThid ) |
127 |
|
|
128 |
#ifdef ALLOW_NONHYDROSTATIC |
#ifdef ALLOW_NONHYDROSTATIC |
129 |
C-- Set laplace operators for use in 3D conjugate gradient solver. |
C-- Set laplace operators for use in 3D conjugate gradient solver. |
130 |
|
ceh3 needs an IF ( useNONHYDROSTATIC ) THEN |
131 |
CALL INI_CG3D( myThid ) |
CALL INI_CG3D( myThid ) |
132 |
#endif |
#endif |
133 |
|
|
134 |
|
C-- Check parameters and model cofiguration |
135 |
|
CALL CONFIG_CHECK( myThid ) |
136 |
|
|
137 |
C-- Finally summarise the model cofiguration |
C-- Finally summarise the model cofiguration |
138 |
CALL CONFIG_SUMMARY( myThid ) |
CALL CONFIG_SUMMARY( myThid ) |
139 |
|
|
140 |
|
#ifdef COMPONENT_MODULE |
141 |
|
C-- Post component-model configuration information to coupler |
142 |
|
C and get config. info for other component(s). |
143 |
|
IF ( useCoupler ) CALL CPL_EXCH_CONFIGS( myThid ) |
144 |
|
#endif |
145 |
|
|
146 |
|
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
147 |
|
|
148 |
|
#ifdef ALLOW_MNC |
149 |
|
|
150 |
|
C Initialize the MNC package |
151 |
|
CALL MNC_INIT(myThid) |
152 |
|
CALL MNC_CW_INIT(myThid, sNx,sNy, OLx,OLy, nSx,nSy, nPx,nPy, Nr) |
153 |
|
|
154 |
|
C Write the grid information |
155 |
|
CALL MNC_CW_WRITE_GRID_INFO(myThid, 'grid') |
156 |
|
|
157 |
|
C Create MNC definitions for DYNVARS.h variables |
158 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'iter', '-_-_--__-__t', 0,0) |
159 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'iter',1, |
160 |
|
& 'long_name','iteration_count') |
161 |
|
|
162 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'U', 'U_xy_Hn__C__t', 4,5) |
163 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'U',1,'units','m/s') |
164 |
|
|
165 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'V', 'V_xy_Hn__C__t', 4,5) |
166 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'V',1,'units','m/s') |
167 |
|
|
168 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'T', 'Cen_xy_Hn__C__t', 4,5) |
169 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'T',1,'units','degC') |
170 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'T',1,'long_name', |
171 |
|
& 'potential_temperature') |
172 |
|
|
173 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'S', 'Cen_xy_Hn__C__t', 4,5) |
174 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'S',1,'long_name', |
175 |
|
& 'salinity') |
176 |
|
|
177 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'Eta', 'Cen_xy_Hn__-__t', 3,4) |
178 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'Eta',1,'long_name', |
179 |
|
& 'free-surface_r-anomaly') |
180 |
|
|
181 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'W', 'Cen_xy_Hn__C__t', 4,5) |
182 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'W',1,'units','m/s') |
183 |
|
|
184 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'totPhiHyd', 'Cen_xy_Hn__C__t', 4,5) |
185 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'phiHydLow', 'Cen_xy_Hn__-__t', 3,4) |
186 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'phi_nh', 'Cen_xy_Hn__C__t', 4,5) |
187 |
|
|
188 |
|
CALL MNC_CW_ADD_VNAME(myThid, 'tr1', 'Cen_xy_Hn__C__t', 4,5) |
189 |
|
CALL MNC_CW_ADD_VATTR_TEXT(myThid,'tr1',1, |
190 |
|
& 'long_name','passive_tracer_1') |
191 |
|
#endif |
192 |
|
|
193 |
|
RETURN |
194 |
END |
END |