/[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.4 by jmc, Tue Feb 20 19:39:42 2001 UTC revision 1.76 by jmc, Tue Nov 24 00:17:42 2009 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
3    
4    #include "PACKAGES_CONFIG.h"
5    #include "AD_CONFIG.h"
6  #include "CPP_OPTIONS.h"  #include "CPP_OPTIONS.h"
7    
8    CBOP
9    C     !ROUTINE: PACKAGES_INIT_VARIABLES
10    C     !INTERFACE:
11        SUBROUTINE PACKAGES_INIT_VARIABLES( myThid )        SUBROUTINE PACKAGES_INIT_VARIABLES( myThid )
 C     /==========================================================\  
 C     | SUBROUTINE PACKAGES_INIT_VARIABLES                       |  
 C     | o Does initialisation of package-related variable data   |  
 C     |==========================================================|  
 C     \==========================================================/  
       IMPLICIT NONE  
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       |-- 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:
95          IMPLICIT NONE
96  C     === Global variables ===  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:
107  C     === Routine arguments ===  C     === Routine arguments ===
108  C     myThid -  Number of this instances  C     myThid -  Number of this instances
109        INTEGER myThid        INTEGER myThid
110    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
133    C--   Initialize CD_CODE variables:
134    C- note(jmc): before packaging CD_CODE, was done within ini_fields (=called before),
135    C             therefore call CD-ini-vars before others pkg.
136          IF (useCDscheme) THEN
137    # 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
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        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
198    C--   Initialize SEAICE model.
199    cph# ifndef ALLOW_AUTODIFF_TAMC
200          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
221    cph#ifdef ALLOW_OBCS
222    cphC--   Open boundaries data
223    cph      IF (useOBCS) THEN
224    cph        CALL OBCS_INIT_VARIABLES( myThid )
225    cph      ENDIF
226    cph#endif
227    
228    #ifdef ALLOW_PTRACERS
229    # ifndef ALLOW_AUTODIFF_TAMC
230          IF ( usePTRACERS ) THEN
231    # endif
232    # 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
258    # ifndef ALLOW_AUTODIFF_TAMC
259          IF (useGCHEM) THEN
260    # endif
261            CALL GCHEM_INIT_VARI( myThid )
262    # ifndef ALLOW_AUTODIFF_TAMC
263          ENDIF
264    # endif
265    #endif /* ALLOW_GCHEM */
266    
267    #ifdef ALLOW_LAND
268          IF ( useLAND ) THEN
269    # 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
281    CADJ STORE theta = tapelev_init, key = 1
282    c--   Initialise auxiliary xx_ fields
283          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.
286    # 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
294    #endif /* ALLOW_AUTODIFF */
295    
296    #ifdef ALLOW_EXF
297          IF (useEXF) THEN
298    # ifdef ALLOW_DEBUG
299           IF (debugMode) CALL DEBUG_CALL('EXF_INIT',myThid)
300    # 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
315    c--   Initialise the cost function.
316    ceh3 needs an IF ( useCOST ) THEN
317          CALL COST_INIT_VARIA( myThid )
318          _BARRIER
319    #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) THEN        IF (useOBCS) THEN
337    # ifdef ALLOW_DEBUG
338            IF (debugMode) CALL DEBUG_CALL('OBCS_INIT_VARIABLES',myThid)
339    # endif
340          CALL OBCS_INIT_VARIABLES( myThid )          CALL OBCS_INIT_VARIABLES( myThid )
341        ENDIF        ENDIF
342  #endif  #endif /* ALLOW_OBCS */
343    
344  #ifdef ALLOW_AIM  #ifdef ALLOW_BULK_FORCE
345        IF ( useAIM ) CALL AIM_INIT( mythid )        IF (useBulkForce) THEN
346  #endif          CALL BULKF_INIT_VARIA( myThid )
347          ENDIF
348    #endif /* ALLOW_BULK_FORCE */
349    
350    #ifdef ALLOW_THSICE
351          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 INCLUDE_ECCO_PACKAGE  #ifdef ALLOW_NEST_CHILD
360        IF (useECCO) THEN  C--   Initialize NEST in CHILD configuration
361         CALL ECCO_INIT( myThid )        IF (useNEST_CHILD) THEN
362    #ifdef ALLOW_DEBUG
363           IF (debugMode)
364         &       CALL DEBUG_CALL('NEST_CHILD_INIT_VARIA',myThid)
365    #endif
366           CALL NEST_CHILD_INIT_VARIA( myThid )
367        ENDIF        ENDIF
368  #else  #endif /* ALLOW_NEST_CHILD */
369        CALL INI_FORCING( myThid )  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  #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.4  
changed lines
  Added in v.1.76

  ViewVC Help
Powered by ViewVC 1.1.22