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

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

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

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

Legend:
Removed from v.1.29  
changed lines
  Added in v.1.76

  ViewVC Help
Powered by ViewVC 1.1.22