/[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.73 - (show annotations) (download)
Fri Jun 26 23:10:09 2009 UTC (14 years, 11 months ago) by jahn
Branch: MAIN
CVS Tags: checkpoint61t, checkpoint61u, checkpoint61s
Changes since 1.72: +7 -1 lines
add package longstep

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

  ViewVC Help
Powered by ViewVC 1.1.22