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

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

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


Revision 1.65 - (hide annotations) (download)
Mon Apr 14 09:45:18 2008 UTC (16 years, 2 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint59q
Changes since 1.64: +3 -3 lines
merge netcdf-support and diagnostics from Patrick Rosendahl into code

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

  ViewVC Help
Powered by ViewVC 1.1.22