/[MITgcm]/MITgcm/model/src/packages_init_variables.F
ViewVC logotype

Contents of /MITgcm/model/src/packages_init_variables.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.69 - (show annotations) (download)
Wed Sep 10 09:18:57 2008 UTC (15 years, 9 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint61d
Changes since 1.68: +12 -1 lines
 - separate initialisation of "fixed" and "variable" variables

1 C $Header: /u/gcmpack/MITgcm/model/src/packages_init_variables.F,v 1.68 2008/08/17 02:07:17 jmc Exp $
2 C $Name: $
3
4 #include "PACKAGES_CONFIG.h"
5 #include "AD_CONFIG.h"
6 #include "CPP_OPTIONS.h"
7
8 CBOP
9 C !ROUTINE: PACKAGES_INIT_VARIABLES
10 C !INTERFACE:
11 SUBROUTINE PACKAGES_INIT_VARIABLES( myThid )
12
13 C !DESCRIPTION: \bv
14 C *==========================================================*
15 C | SUBROUTINE PACKAGES_INIT_VARIABLES
16 C | o Does initialisation of package-related variable data
17 C *==========================================================*
18 C \ev
19
20 C !CALLING SEQUENCE:
21 C PACKAGES_INIT_VARIABLES
22 C |
23 C |-- DIAGNOSTICS_INIT_VARIA
24 C |
25 C |-- GAD_GAD_INIT_VARIA
26 C |
27 C |-- CD_CODE_INI_VARS
28 C |
29 C |-- GMREDI_INIT
30 C |
31 C |-- DWNSLP_INIT_VARIA
32 C |
33 C |-- KPP_INIT
34 C |-- KPP_OPEN_DIAGS
35 C |
36 C |-- PP81_INIT
37 C |
38 C |-- MY82_INIT_VARIA
39 C |
40 C |-- GGL90_INIT
41 C |
42 C |-- SEAICE_INIT_VARIA
43 C |
44 C |-- SHELFICE_INIT_VARIA
45 C |
46 C |-- PTRACERS_INIT_VARIA
47 C |
48 C |-- GCHEM_INIT_VARI
49 C |
50 C |-- LAND_INI_VARS
51 C |
52 C |-- CTRL_INIT_VARIABLES
53 C |-- CTRL_MAP_INI_ECCO
54 C |-- CTRL_MAP_INI
55 C |
56 C |-- EXF_INIT
57 C |
58 C |-- EBM_INI_VARS
59 C |
60 C |-- COST_INIT_VARIA
61 C |
62 C |-- PROFILES_INIT_VARIA
63 C |
64 C |-- OBCS_INIT_VARIABLES
65 C |
66 C |-- BULKF_INIT_VARIA
67 C |
68 C |-- THSICE_INI_VARS
69 C |
70 C |-- CPL_INI_VARS
71 C |
72 C |-- ATM2D_INIT_VARS
73 C |
74 C |-- FIZHI_INI_VARS
75 C |
76 C |-- MATRIX_INIT
77 C |
78 C |-- RBCS_INIT_VARIA
79 C |
80 C |-- REGRID_INIT_VARIA
81 C |
82 C |-- SALT_PLUME_INIT_VARIA
83 C |
84 C |-- CHEAPAML_INIT_VARIA
85 C |
86 C |-- MYPACKAGE_INIT_VARIA
87
88 C !USES:
89 IMPLICIT NONE
90 C === Global variables ===
91 #include "SIZE.h"
92 #include "EEPARAMS.h"
93 #include "PARAMS.h"
94 #ifdef ALLOW_AUTODIFF_TAMC
95 # include "DYNVARS.h"
96 # include "tamc.h"
97 # include "tamc_keys.h"
98 #endif
99
100 C !INPUT/OUTPUT PARAMETERS:
101 C === Routine arguments ===
102 C myThid - Number of this instances
103 INTEGER myThid
104 CEOP
105
106 #ifdef ALLOW_DEBUG
107 IF (debugMode)
108 & CALL DEBUG_ENTER('PACKAGES_INIT_VARIABLES',myThid)
109 #endif /* ALLOW_DEBUG */
110
111 #ifdef ALLOW_DIAGNOSTICS
112 IF ( useDiagnostics ) THEN
113 CALL DIAGNOSTICS_INIT_VARIA( myThid )
114 ENDIF
115 #endif /* ALLOW_DIAGNOSTICS */
116
117 #ifdef ALLOW_GENERIC_ADVDIFF
118 IF ( useGAD ) THEN
119 # ifdef ALLOW_DEBUG
120 IF (debugMode) CALL DEBUG_CALL('GAD_INIT_VARIA',myThid)
121 # endif
122 CALL GAD_INIT_VARIA( myThid )
123 ENDIF
124 #endif /* ALLOW_GENERIC_ADVDIFF */
125
126 #ifdef ALLOW_CD_CODE
127 C-- Initialize CD_CODE variables:
128 C- note(jmc): before packaging CD_CODE, was done within ini_fields (=called before),
129 C therefore call CD-ini-vars before others pkg.
130 IF (useCDscheme) THEN
131 # ifdef ALLOW_DEBUG
132 IF (debugMode) CALL DEBUG_CALL('CD_CODE_INI_VARS',myThid)
133 # endif
134 CALL CD_CODE_INI_VARS( myThid )
135 ENDIF
136 #endif /* ALLOW_CD_CODE */
137
138 #ifdef ALLOW_GMREDI
139 C-- Initialize GM/Redi parameterization
140 IF (useGMRedi) THEN
141 # ifdef ALLOW_DEBUG
142 IF (debugMode) CALL DEBUG_CALL('GMREDI_INIT',myThid)
143 # endif
144 CALL GMREDI_INIT( myThid )
145 ENDIF
146 #endif /* ALLOW_GMREDI */
147
148 #ifdef ALLOW_DOWN_SLOPE
149 IF ( useDOWN_SLOPE ) THEN
150 CALL DWNSLP_INIT_VARIA( myThid )
151 ENDIF
152 #endif /* ALLOW_DOWN_SLOPE */
153
154 #ifdef ALLOW_KPP
155 C-- Initialize KPP vertical mixing scheme.
156 IF (useKPP) THEN
157 # ifdef ALLOW_DEBUG
158 IF (debugMode)
159 & CALL DEBUG_CALL('KPP_INIT + KPP_OPEN_DIAGS',myThid)
160 # endif
161 CALL KPP_INIT( myThid )
162 CALL KPP_OPEN_DIAGS( myThid )
163 ENDIF
164 #endif /* ALLOW_KPP */
165
166 #ifdef ALLOW_PP81
167 C-- Initialize PP81 vertical mixing scheme.
168 IF (usePP81) THEN
169 # ifdef ALLOW_DEBUG
170 IF (debugMode) CALL DEBUG_CALL('PP81_INIT',myThid)
171 # endif
172 CALL PP81_INIT( myThid )
173 ENDIF
174 #endif /* ALLOW_PP81 */
175
176 #ifdef ALLOW_MY82
177 C-- Initialize MY82 vertical mixing scheme.
178 IF (useMY82) THEN
179 CALL MY82_INIT_VARIA( myThid )
180 ENDIF
181 #endif /* ALLOW_MY82 */
182
183 #ifdef ALLOW_GGL90
184 C-- Initialize GGL90 vertical mixing scheme.
185 IF (useGGL90) THEN
186 # ifdef ALLOW_DEBUG
187 IF (debugMode) CALL DEBUG_CALL('GGL90_INIT',myThid)
188 # endif
189 CALL GGL90_INIT( myThid )
190 ENDIF
191 #endif /* ALLOW_GGL90 */
192
193 #ifdef ALLOW_SEAICE
194 C-- Initialize SEAICE model.
195 cph# ifndef ALLOW_AUTODIFF_TAMC
196 IF (useSEAICE) THEN
197 cph# endif
198 # ifdef ALLOW_DEBUG
199 IF (debugMode) CALL DEBUG_CALL('SEAICE_INIT_VARIA',myThid)
200 # endif
201 CALL SEAICE_INIT_VARIA( myThid )
202 cph# ifndef ALLOW_AUTODIFF_TAMC
203 ENDIF
204 cph# endif
205 #endif /* ALLOW_SEAICE */
206
207 #ifdef ALLOW_SHELFICE
208 IF (useShelfIce) THEN
209 # ifdef ALLOW_DEBUG
210 IF (debugMode) CALL DEBUG_CALL('SHELFICE_INIT_VARIA',myThid)
211 # endif
212 CALL SHELFICE_INIT_VARIA( myThid )
213 ENDIF
214 #endif /* ALLOW_SHELFICE */
215
216 cph-- moved further down
217 cph#ifdef ALLOW_OBCS
218 cphC-- Open boundaries data
219 cph IF (useOBCS) THEN
220 cph CALL OBCS_INIT_VARIABLES( myThid )
221 cph ENDIF
222 cph#endif
223
224 #ifdef ALLOW_PTRACERS
225 # ifndef ALLOW_AUTODIFF_TAMC
226 IF ( usePTRACERS ) THEN
227 # endif
228 # ifdef ALLOW_DEBUG
229 IF (debugMode) CALL DEBUG_CALL('PTRACERS_INIT_VARIA',myThid)
230 # endif
231 CALL PTRACERS_INIT_VARIA( myThid )
232 # ifndef ALLOW_AUTODIFF_TAMC
233 ENDIF
234 # endif
235 #endif /* ALLOW_PTRACERS */
236
237 #ifdef ALLOW_GCHEM
238 # ifndef ALLOW_AUTODIFF_TAMC
239 IF (useGCHEM) THEN
240 # endif
241 CALL GCHEM_INIT_VARI( myThid )
242 # ifndef ALLOW_AUTODIFF_TAMC
243 ENDIF
244 # endif
245 #endif /* ALLOW_GCHEM */
246
247 #ifdef ALLOW_LAND
248 IF ( useLAND ) THEN
249 # ifdef ALLOW_DEBUG
250 IF (debugMode) CALL DEBUG_CALL('LAND_INI_VARS',myThid)
251 # endif
252 CALL LAND_INI_VARS( myThid )
253 ENDIF
254 #endif /* ALLOW_LAND */
255
256 #ifdef ALLOW_SMOOTH
257 CALL SMOOTH_INIT_VARIA(myThid)
258 #endif /* ALLOW_SMOOTH */
259
260 #ifdef ALLOW_AUTODIFF
261 CADJ STORE theta = tapelev_init, key = 1
262 c-- Initialise auxiliary xx_ fields
263 IF (debugMode) CALL DEBUG_CALL('CTRL_INIT_VARIABLES',myThid)
264 CALL CTRL_INIT_VARIABLES ( myThid )
265 c-- Map the control variables onto the model state.
266 # ifdef ALLOW_ECCO
267 IF (debugMode) CALL DEBUG_CALL('CTRL_MAP_INI_ECCO',myThid)
268 CALL CTRL_MAP_INI_ECCO( myThid )
269 # else
270 IF (debugMode) CALL DEBUG_CALL('CTRL_MAP_INI',myThid)
271 CALL CTRL_MAP_INI( myThid )
272 # endif
273 _BARRIER
274 #endif /* ALLOW_AUTODIFF */
275
276 #ifdef ALLOW_EXF
277 IF (useEXF) THEN
278 # ifdef ALLOW_DEBUG
279 IF (debugMode) CALL DEBUG_CALL('EXF_INIT',myThid)
280 # endif
281 CALL EXF_INIT( myThid )
282 ENDIF
283 #endif /* ALLOW_EXF */
284
285 #ifdef ALLOW_EBM
286 # ifdef ALLOW_AUTODIFF
287 CADJ STORE theta = tapelev_init, key = 1
288 # endif
289 IF (useEBM) THEN
290 CALL EBM_INI_VARS( myThid )
291 ENDIF
292 #endif /* ALLOW_EBM */
293
294 #ifdef ALLOW_COST
295 c-- Initialise the cost function.
296 ceh3 needs an IF ( useCOST ) THEN
297 CALL COST_INIT_VARIA( myThid )
298 _BARRIER
299 #endif /* ALLOW_COST */
300
301 #ifdef ALLOW_PROFILES
302 c-- Initialise the cost function.
303 CALL PROFILES_INIT_VARIA( myThid )
304 _BARRIER
305 #endif /* ALLOW_PROFILES */
306
307 #ifdef ALLOW_OBCS
308 C-- Open boundaries data
309 IF (useOBCS) THEN
310 # ifdef ALLOW_DEBUG
311 IF (debugMode) CALL DEBUG_CALL('OBCS_INIT_VARIABLES',myThid)
312 # endif
313 CALL OBCS_INIT_VARIABLES( myThid )
314 ENDIF
315 #endif /* ALLOW_OBCS */
316
317 #ifdef ALLOW_BULK_FORCE
318 IF (useBulkForce) THEN
319 CALL BULKF_INIT_VARIA( myThid )
320 ENDIF
321 #endif /* ALLOW_BULK_FORCE */
322
323 #ifdef ALLOW_THSICE
324 IF (useThSIce) THEN
325 # ifdef ALLOW_DEBUG
326 IF (debugMode) CALL DEBUG_CALL('THSICE_INI_VARS',myThid)
327 # endif
328 CALL THSICE_INI_VARS( myThid)
329 ENDIF
330 #endif /* ALLOW_THSICE */
331
332 #ifdef COMPONENT_MODULE
333 IF (useCoupler) THEN
334 # ifdef ALLOW_DEBUG
335 IF (debugMode) CALL DEBUG_CALL('CPL_INI_VARS',myThid)
336 # endif
337 CALL CPL_INI_VARS( myThid )
338 ENDIF
339 #endif /* COMPONENT_MODULE */
340
341 #ifdef ALLOW_ATM2D
342 IF (useAtm2d) THEN
343 # ifdef ALLOW_DEBUG
344 IF (debugMode) CALL DEBUG_CALL('ATM2D_INIT_VARS',myThid)
345 # endif
346 CALL ATM2D_INIT_VARS( myThid )
347 ENDIF
348 #endif /* ALLOW_ATM2D */
349
350 #ifdef ALLOW_FIZHI
351 C Initialize FIZHI state variables
352 IF (useFIZHI) THEN
353 # ifdef ALLOW_DEBUG
354 IF (debugMode) CALL DEBUG_CALL('FIZHI_INIT_VARS',myThid)
355 # endif
356 CALL FIZHI_INIT_VARS( myThid )
357 ENDIF
358 #endif /* ALLOW_FIZHI */
359
360 #ifdef ALLOW_MATRIX
361 IF ( useMATRIX ) THEN
362 # ifdef ALLOW_DEBUG
363 IF (debugMode) CALL DEBUG_CALL('MATRIX_INIT',myThid)
364 # endif
365 CALL MATRIX_INIT( myThid )
366 ENDIF
367 #endif /* ALLOW_MATRIX */
368
369 #ifdef ALLOW_RBCS
370 IF ( useRBCS ) THEN
371 CALL RBCS_INIT_VARIA( myThid )
372 ENDIF
373 #endif /* ALLOW_RBCS */
374
375 #ifdef ALLOW_REGRID
376 IF ( useREGRID ) THEN
377 CALL REGRID_INIT_VARIA( myThid )
378 ENDIF
379 #endif /* ALLOW_REGRID */
380
381 #ifdef ALLOW_SALT_PLUME
382 IF ( useSALT_PLUME ) THEN
383 CALL SALT_PLUME_INIT_VARIA( myThid )
384 ENDIF
385 #endif /* ALLOW_SALT_PLUME */
386
387 #ifdef ALLOW_CHEAPAML
388 IF (useCheapAML) THEN
389 CALL CHEAPAML_INIT_VARIA( myThid )
390 ENDIF
391 #endif /* ALLOW_CHEAPAML */
392
393 #ifdef ALLOW_MYPACKAGE
394 IF ( useMYPACKAGE ) THEN
395 CALL MYPACKAGE_INIT_VARIA( myThid )
396 ENDIF
397 #endif /* ALLOW_MYPACKAGE */
398
399 #ifdef ALLOW_DEBUG
400 IF (debugMode)
401 & CALL DEBUG_LEAVE('PACKAGES_INIT_VARIABLES',myThid)
402 #endif /* ALLOW_DEBUG */
403
404 RETURN
405 END

  ViewVC Help
Powered by ViewVC 1.1.22