91 |
|
|
92 |
CEOP |
CEOP |
93 |
|
|
94 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
95 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
96 |
& CALL DEBUG_ENTER('FORWARD_STEP',myThid) |
& CALL DEBUG_ENTER('FORWARD_STEP',myThid) |
97 |
#endif |
#endif |
150 |
C-- Call external forcing package |
C-- Call external forcing package |
151 |
#ifdef ALLOW_BULK_FORCE |
#ifdef ALLOW_BULK_FORCE |
152 |
IF ( useBulkforce ) THEN |
IF ( useBulkforce ) THEN |
153 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
154 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
155 |
& CALL DEBUG_CALL('BULKF_FIELDS_LOAD',myThid) |
& CALL DEBUG_CALL('BULKF_FIELDS_LOAD',myThid) |
156 |
#endif |
#endif |
176 |
C NOTE, that although the exf package is part of the |
C NOTE, that although the exf package is part of the |
177 |
C distribution, it is not currently maintained, i.e. |
C distribution, it is not currently maintained, i.e. |
178 |
C exf is disabled by default in genmake. |
C exf is disabled by default in genmake. |
179 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
180 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
181 |
& CALL DEBUG_CALL('EXF_GETFORCING',myThid) |
& CALL DEBUG_CALL('EXF_GETFORCING',myThid) |
182 |
#endif |
#endif |
191 |
# ifdef ALLOW_SEAICE |
# ifdef ALLOW_SEAICE |
192 |
IF ( .NOT. useSEAICE ) THEN |
IF ( .NOT. useSEAICE ) THEN |
193 |
# endif |
# endif |
194 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
195 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
196 |
& CALL DEBUG_CALL('EXTERNAL_FIELDS_LOAD',myThid) |
& CALL DEBUG_CALL('EXTERNAL_FIELDS_LOAD',myThid) |
197 |
#endif |
#endif |
225 |
C under sea-ice may not be "exactly" at the freezing point by the time |
C under sea-ice may not be "exactly" at the freezing point by the time |
226 |
C theta is dumped or time-averaged. |
C theta is dumped or time-averaged. |
227 |
IF ( useSEAICE ) THEN |
IF ( useSEAICE ) THEN |
228 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
229 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
230 |
& CALL DEBUG_CALL('SEAICE_MODEL',myThid) |
& CALL DEBUG_CALL('SEAICE_MODEL',myThid) |
231 |
#endif |
#endif |
249 |
#endif |
#endif |
250 |
|
|
251 |
C-- Step forward fields and calculate time tendency terms. |
C-- Step forward fields and calculate time tendency terms. |
252 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
253 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
254 |
& CALL DEBUG_CALL('THERMODYNAMICS',myThid) |
& CALL DEBUG_CALL('THERMODYNAMICS',myThid) |
255 |
#endif |
#endif |
258 |
CALL TIMER_STOP ('THERMODYNAMICS [FORWARD_STEP]',mythid) |
CALL TIMER_STOP ('THERMODYNAMICS [FORWARD_STEP]',mythid) |
259 |
|
|
260 |
C-- do exchanges (needed for DYNAMICS) when using stagger time-step : |
C-- do exchanges (needed for DYNAMICS) when using stagger time-step : |
261 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
262 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
263 |
& CALL DEBUG_CALL('DO_STAGGER_FIELDS_EXCH.',myThid) |
& CALL DEBUG_CALL('DO_STAGGER_FIELDS_EXCH.',myThid) |
264 |
#endif |
#endif |
269 |
#ifdef ALLOW_SHAP_FILT |
#ifdef ALLOW_SHAP_FILT |
270 |
IF (useSHAP_FILT .AND. |
IF (useSHAP_FILT .AND. |
271 |
& staggerTimeStep .AND. shap_filt_TrStagg ) THEN |
& staggerTimeStep .AND. shap_filt_TrStagg ) THEN |
272 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
273 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
274 |
& CALL DEBUG_CALL('SHAP_FILT_APPLY_TS',myThid) |
& CALL DEBUG_CALL('SHAP_FILT_APPLY_TS',myThid) |
275 |
#endif |
#endif |
281 |
#ifdef ALLOW_ZONAL_FILT |
#ifdef ALLOW_ZONAL_FILT |
282 |
IF (useZONAL_FILT .AND. |
IF (useZONAL_FILT .AND. |
283 |
& staggerTimeStep .AND. zonal_filt_TrStagg ) THEN |
& staggerTimeStep .AND. zonal_filt_TrStagg ) THEN |
284 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
285 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
286 |
& CALL DEBUG_CALL('ZONAL_FILT_APPLY_TS',myThid) |
& CALL DEBUG_CALL('ZONAL_FILT_APPLY_TS',myThid) |
287 |
#endif |
#endif |
295 |
#ifndef ALLOW_AUTODIFF_TAMC |
#ifndef ALLOW_AUTODIFF_TAMC |
296 |
IF ( momStepping ) THEN |
IF ( momStepping ) THEN |
297 |
#endif |
#endif |
298 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
299 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
300 |
& CALL DEBUG_CALL('DYNAMICS',myThid) |
& CALL DEBUG_CALL('DYNAMICS',myThid) |
301 |
#endif |
#endif |
309 |
#ifdef ALLOW_NONHYDROSTATIC |
#ifdef ALLOW_NONHYDROSTATIC |
310 |
C-- Step forward W field in N-H algorithm |
C-- Step forward W field in N-H algorithm |
311 |
IF ( momStepping .AND. nonHydrostatic ) THEN |
IF ( momStepping .AND. nonHydrostatic ) THEN |
312 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
313 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
314 |
& CALL DEBUG_CALL('CALC_GW',myThid) |
& CALL DEBUG_CALL('CALC_GW',myThid) |
315 |
#endif |
#endif |
450 |
& .FALSE., myTime, myIter, myThid ) |
& .FALSE., myTime, myIter, myThid ) |
451 |
CALL TIMER_STOP ('WRITE_CHECKPOINT [FORWARD_STEP]',myThid) |
CALL TIMER_STOP ('WRITE_CHECKPOINT [FORWARD_STEP]',myThid) |
452 |
|
|
453 |
#ifndef DISABLE_DEBUGMODE |
#ifdef ALLOW_DEBUG |
454 |
IF ( debugLevel .GE. debLevB ) |
IF ( debugLevel .GE. debLevB ) |
455 |
& CALL DEBUG_LEAVE('FORWARD_STEP',myThid) |
& CALL DEBUG_LEAVE('FORWARD_STEP',myThid) |
456 |
#endif |
#endif |