35 |
|
|
36 |
C !LOCAL VARIABLES: |
C !LOCAL VARIABLES: |
37 |
C === Local variables === |
C === Local variables === |
38 |
C msgBuf :: Informational/error meesage buffer |
C msgBuf :: Informational/error message buffer |
39 |
CHARACTER*(MAX_LEN_MBUF) msgBuf |
CHARACTER*(MAX_LEN_MBUF) msgBuf |
40 |
CEOP |
CEOP |
41 |
|
|
42 |
|
WRITE(msgBuf,'(A)') |
43 |
|
&'== Packages configuration : Check & print summary ==' |
44 |
|
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
45 |
|
& SQUEEZE_RIGHT, myThid ) |
46 |
|
WRITE(msgBuf,'(A)') ' ' |
47 |
|
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
48 |
|
& SQUEEZE_RIGHT, myThid ) |
49 |
|
|
50 |
C--- Start with non-standard packages (without or with non standard flag) |
C--- Start with non-standard packages (without or with non standard flag) |
51 |
|
|
52 |
#ifndef ALLOW_MNC |
#ifndef ALLOW_MNC |
87 |
ENDIF |
ENDIF |
88 |
#endif |
#endif |
89 |
|
|
90 |
#ifdef ALLOW_GENERIC_ADVDIFF |
#ifndef ALLOW_GENERIC_ADVDIFF |
|
IF (useGAD) CALL GAD_CHECK( myThid ) |
|
|
#else |
|
91 |
IF ( tempStepping .OR. saltStepping ) THEN |
IF ( tempStepping .OR. saltStepping ) THEN |
92 |
WRITE(msgBuf,'(2A)') |
WRITE(msgBuf,'(2A)') |
93 |
& 'PACKAGES_CHECK: cannot step forward Temp or Salt', |
& 'PACKAGES_CHECK: cannot step forward Temp or Salt', |
113 |
#endif |
#endif |
114 |
|
|
115 |
#ifndef ALLOW_CD_CODE |
#ifndef ALLOW_CD_CODE |
116 |
IF (useCDscheme) CALL PACKAGES_ERROR_MSG( |
IF (useCDscheme) CALL PACKAGES_ERROR_MSG( |
117 |
& 'CD_CODE', 'useCDscheme=.T.', myThid ) |
& 'CD_CODE', 'useCDscheme=.T.', myThid ) |
118 |
#endif |
#endif |
119 |
|
|
161 |
IF (useGMRedi) CALL PACKAGES_ERROR_MSG('GMRedi',' ',myThid) |
IF (useGMRedi) CALL PACKAGES_ERROR_MSG('GMRedi',' ',myThid) |
162 |
#endif |
#endif |
163 |
|
|
164 |
|
#ifndef ALLOW_DOWN_SLOPE |
165 |
|
IF (useDOWN_SLOPE) |
166 |
|
& CALL PACKAGES_ERROR_MSG('DOWN_SLOPE',' ',myThid) |
167 |
|
#endif |
168 |
|
|
169 |
|
#ifdef ALLOW_BBL |
170 |
|
IF (useBBL) CALL BBL_CHECK( myThid ) |
171 |
|
#else |
172 |
|
IF (useBBL) CALL PACKAGES_ERROR_MSG('BBL',' ',myThid) |
173 |
|
#endif |
174 |
|
|
175 |
#ifdef ALLOW_OBCS |
#ifdef ALLOW_OBCS |
176 |
IF (useOBCS) CALL OBCS_CHECK( myThid ) |
IF (useOBCS) CALL OBCS_CHECK( myThid ) |
177 |
#else |
#else |
178 |
IF (useOBCS) CALL PACKAGES_ERROR_MSG('OBCS',' ',myThid) |
IF (useOBCS) CALL PACKAGES_ERROR_MSG('OBCS',' ',myThid) |
179 |
#endif |
#endif |
180 |
|
|
181 |
#ifndef ALLOW_EXF |
#ifdef ALLOW_EXF |
182 |
|
IF (useEXF) CALL EXF_CHECK( myThid ) |
183 |
|
#else |
184 |
IF (useEXF) CALL PACKAGES_ERROR_MSG('EXF',' ',myThid) |
IF (useEXF) CALL PACKAGES_ERROR_MSG('EXF',' ',myThid) |
185 |
#endif |
#endif |
186 |
|
|
189 |
& 'BULK_FORCE', 'useBulkForce=.T.', myThid ) |
& 'BULK_FORCE', 'useBulkForce=.T.', myThid ) |
190 |
#endif |
#endif |
191 |
|
|
192 |
|
#ifndef ALLOW_EBM |
193 |
|
IF (useEBM) CALL PACKAGES_ERROR_MSG('EBM',' ',myThid) |
194 |
|
#endif |
195 |
|
|
196 |
|
#ifndef ALLOW_CHEAPAML |
197 |
|
IF (useCheapAML) CALL PACKAGES_ERROR_MSG('CheapAML',' ',myThid) |
198 |
|
#endif |
199 |
|
|
200 |
#ifdef ALLOW_THSICE |
#ifdef ALLOW_THSICE |
201 |
IF (useThSIce) CALL THSICE_CHECK( myThid ) |
IF (useThSIce) CALL THSICE_CHECK( myThid ) |
202 |
#else |
#else |
212 |
#endif |
#endif |
213 |
|
|
214 |
#ifndef ALLOW_LAND |
#ifndef ALLOW_LAND |
215 |
IF (useLand) CALL PACKAGES_ERROR_MSG('LAND',' ',myThid) |
IF (useLand) CALL PACKAGES_ERROR_MSG('Land',' ',myThid) |
216 |
#endif |
#endif |
217 |
|
|
218 |
#ifndef ALLOW_PTRACERS |
#ifndef ALLOW_FIZHI |
219 |
IF (usePTRACERS) CALL PACKAGES_ERROR_MSG('PTRACERS',' ',myThid) |
IF (useFizhi) CALL PACKAGES_ERROR_MSG('Fizhi',' ',myThid) |
220 |
#endif |
#endif |
221 |
|
|
222 |
#ifndef ALLOW_MATRIX |
#ifndef ALLOW_GRIDALT |
223 |
IF (useMATRIX) CALL PACKAGES_ERROR_MSG('MATRIX',' ',myThid) |
IF (useGridAlt) CALL PACKAGES_ERROR_MSG('GridAlt',' ',myThid) |
224 |
|
#endif |
225 |
|
|
226 |
|
#ifndef ALLOW_PTRACERS |
227 |
|
IF (usePTRACERS) CALL PACKAGES_ERROR_MSG('PTRACERS',' ',myThid) |
228 |
#endif |
#endif |
229 |
|
|
230 |
#ifdef ALLOW_GCHEM |
#ifdef ALLOW_GCHEM |
233 |
IF (useGCHEM) CALL PACKAGES_ERROR_MSG('GCHEM',' ',myThid) |
IF (useGCHEM) CALL PACKAGES_ERROR_MSG('GCHEM',' ',myThid) |
234 |
#endif |
#endif |
235 |
|
|
236 |
|
#ifndef ALLOW_RBCS |
237 |
|
IF (useRBCS) CALL PACKAGES_ERROR_MSG('RBCS',' ',myThid) |
238 |
|
#endif |
239 |
|
|
240 |
#ifndef ALLOW_OFFLINE |
#ifndef ALLOW_OFFLINE |
241 |
IF (useOffLine) CALL PACKAGES_ERROR_MSG('OffLine',' ',myThid) |
IF (useOffLine) CALL PACKAGES_ERROR_MSG('OffLine',' ',myThid) |
242 |
#endif |
#endif |
243 |
|
|
244 |
|
#ifndef ALLOW_MATRIX |
245 |
|
IF (useMATRIX) CALL PACKAGES_ERROR_MSG('MATRIX',' ',myThid) |
246 |
|
#endif |
247 |
|
|
248 |
#ifndef ALLOW_SHAP_FILT |
#ifndef ALLOW_SHAP_FILT |
249 |
IF (useSHAP_FILT) |
IF (useSHAP_FILT) |
250 |
& CALL PACKAGES_ERROR_MSG( 'SHAP_FILT', ' ', myThid ) |
& CALL PACKAGES_ERROR_MSG( 'SHAP_FILT', ' ', myThid ) |
271 |
IF (useSEAICE) CALL PACKAGES_ERROR_MSG('SEAICE',' ',myThid) |
IF (useSEAICE) CALL PACKAGES_ERROR_MSG('SEAICE',' ',myThid) |
272 |
#endif |
#endif |
273 |
|
|
274 |
|
#ifdef ALLOW_SALT_PLUME |
275 |
|
IF (useSALT_PLUME)CALL SALT_PLUME_CHECK( myThid ) |
276 |
|
#else |
277 |
|
IF (useSALT_PLUME)CALL PACKAGES_ERROR_MSG('SALT_PLUME',' ',myThid) |
278 |
|
#endif |
279 |
|
|
280 |
#ifdef ALLOW_SHELFICE |
#ifdef ALLOW_SHELFICE |
281 |
IF (useShelfIce) CALL SHELFICE_CHECK( myThid ) |
IF (useShelfIce) CALL SHELFICE_CHECK( myThid ) |
282 |
#else |
#else |
283 |
IF (useShelfIce) CALL PACKAGES_ERROR_MSG('ShelfIce',' ',myThid) |
IF (useShelfIce) CALL PACKAGES_ERROR_MSG('ShelfIce',' ',myThid) |
284 |
#endif |
#endif |
285 |
|
|
286 |
|
#ifdef ALLOW_STREAMICE |
287 |
|
IF (useStreamIce) CALL STREAMICE_CHECK( myThid ) |
288 |
|
#else |
289 |
|
IF (useStreamIce) CALL PACKAGES_ERROR_MSG('StreamIce',' ',myThid) |
290 |
|
#endif |
291 |
|
|
292 |
|
#ifdef ALLOW_ICEFRONT |
293 |
|
IF (useICEFRONT) CALL ICEFRONT_CHECK( myThid ) |
294 |
|
#else |
295 |
|
IF (useICEFRONT) CALL PACKAGES_ERROR_MSG('ICEFRONT',' ',myThid) |
296 |
|
#endif |
297 |
|
|
298 |
#ifdef ALLOW_AUTODIFF |
#ifdef ALLOW_AUTODIFF |
299 |
CALL AUTODIFF_CHECK( myThid ) |
CALL AUTODIFF_CHECK( myThid ) |
300 |
#endif |
#endif |
311 |
IF (useGRDCHK) CALL GRDCHK_CHECK( myThid ) |
IF (useGRDCHK) CALL GRDCHK_CHECK( myThid ) |
312 |
#endif |
#endif |
313 |
|
|
314 |
|
#ifndef ALLOW_SMOOTH |
315 |
|
IF (useSMOOTH) CALL PACKAGES_ERROR_MSG('SMOOTH',' ',myThid) |
316 |
|
#endif |
317 |
|
|
318 |
#ifdef ALLOW_DIAGNOSTICS |
#ifdef ALLOW_DIAGNOSTICS |
319 |
IF (useDiagnostics) CALL DIAGNOSTICS_CHECK( myThid ) |
IF (useDiagnostics) CALL DIAGNOSTICS_CHECK( myThid ) |
320 |
#else |
#else |
328 |
IF (useREGRID) CALL PACKAGES_ERROR_MSG('REGRID',' ',myThid) |
IF (useREGRID) CALL PACKAGES_ERROR_MSG('REGRID',' ',myThid) |
329 |
#endif |
#endif |
330 |
|
|
331 |
|
#ifdef ALLOW_LAYERS |
332 |
|
IF ( useLayers ) CALL LAYERS_CHECK( myThid ) |
333 |
|
#else |
334 |
|
IF ( useLayers ) CALL PACKAGES_ERROR_MSG('LAYERS',' ',myThid) |
335 |
|
#endif /* ALLOW_LAYERS */ |
336 |
|
|
337 |
|
#ifdef ALLOW_NEST_CHILD |
338 |
|
IF (useNEST_CHILD) CALL NEST_CHILD_CHECK( myThid ) |
339 |
|
#else |
340 |
|
IF (useNEST_CHILD) CALL PACKAGES_ERROR_MSG( |
341 |
|
& 'NEST_CHILD',' ',myThid) |
342 |
|
#endif |
343 |
|
|
344 |
|
#ifdef ALLOW_NEST_PARENT |
345 |
|
IF (useNEST_PARENT) CALL NEST_PARENT_CHECK( myThid ) |
346 |
|
#else |
347 |
|
IF (useNEST_PARENT) CALL PACKAGES_ERROR_MSG( |
348 |
|
& 'NEST_PARENT',' ',myThid) |
349 |
|
#endif |
350 |
|
|
351 |
|
#ifdef ALLOW_OASIS |
352 |
|
IF (useOASIS) CALL OASIS_CHECK( myThid ) |
353 |
|
#else |
354 |
|
IF (useOASIS) CALL PACKAGES_ERROR_MSG('OASIS',' ',myThid) |
355 |
|
#endif |
356 |
|
|
357 |
|
#ifdef ALLOW_ECCO |
358 |
|
CALL ECCO_CHECK( myThid ) |
359 |
|
#endif |
360 |
|
|
361 |
|
#ifndef ALLOW_EMBED_FILES |
362 |
|
IF (useEMBED_FILES) CALL PACKAGES_ERROR_MSG( |
363 |
|
& 'EMBED_FILES',' ',myThid) |
364 |
|
#endif |
365 |
|
|
366 |
#ifdef ALLOW_MYPACKAGE |
#ifdef ALLOW_MYPACKAGE |
367 |
IF (useMYPACKAGE) CALL MYPACKAGE_CHECK( myThid ) |
IF (useMYPACKAGE) CALL MYPACKAGE_CHECK( myThid ) |
368 |
#else |
#else |
369 |
IF (useMYPACKAGE) CALL PACKAGES_ERROR_MSG('MYPACKAGE',' ',myThid) |
IF (useMYPACKAGE) CALL PACKAGES_ERROR_MSG('MYPACKAGE',' ',myThid) |
370 |
#endif |
#endif |
371 |
|
|
372 |
#ifdef ALLOW_SALT_PLUME |
#ifdef ALLOW_GENERIC_ADVDIFF |
373 |
IF (useSALT_PLUME)CALL SALT_PLUME_CHECK( myThid ) |
C- Check generic AdvDiff setting and related overlap minimum size: |
374 |
#else |
C for this reason, called after other ${pkg}_check S/R |
375 |
IF (useSALT_PLUME)CALL PACKAGES_ERROR_MSG('SALT_PLUME',' ',myThid) |
IF (useGAD) CALL GAD_CHECK( myThid ) |
376 |
#endif |
#endif |
377 |
|
|
378 |
C--- Exclusive packages (which cannot be used together): |
C--- Exclusive packages (which cannot be used together): |
382 |
CALL PRINT_ERROR( msgBuf , myThid ) |
CALL PRINT_ERROR( msgBuf , myThid ) |
383 |
WRITE(msgBuf,'(2A)') 'PACKAGES_CHECK: ', |
WRITE(msgBuf,'(2A)') 'PACKAGES_CHECK: ', |
384 |
& ' but cannot be used together => need to select only one.' |
& ' but cannot be used together => need to select only one.' |
385 |
|
CALL PRINT_ERROR( msgBuf , myThid ) |
386 |
|
STOP 'ABNORMAL END: S/R PACKAGES_CHECK' |
387 |
|
ENDIF |
388 |
|
|
389 |
|
C--- Exclusive packages (which cannot be used together): |
390 |
|
IF ( useDOWN_SLOPE .AND. useBBL ) THEN |
391 |
|
WRITE(msgBuf,'(2A)') 'PACKAGES_CHECK: ', |
392 |
|
& 'both useDOWN_SLOPE and useBBL are set' |
393 |
|
CALL PRINT_ERROR( msgBuf , myThid ) |
394 |
|
WRITE(msgBuf,'(2A)') 'PACKAGES_CHECK: ', |
395 |
|
& ' but cannot be used together => need to select only one.' |
396 |
CALL PRINT_ERROR( msgBuf , myThid ) |
CALL PRINT_ERROR( msgBuf , myThid ) |
397 |
STOP 'ABNORMAL END: S/R PACKAGES_CHECK' |
STOP 'ABNORMAL END: S/R PACKAGES_CHECK' |
398 |
ENDIF |
ENDIF |