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

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.75

  ViewVC Help
Powered by ViewVC 1.1.22