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

Diff of /MITgcm/model/src/main_do_loop.F

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

revision 1.19 by heimbach, Fri Jul 3 21:32:48 2015 UTC revision 1.20 by heimbach, Sat Jul 4 17:58:26 2015 UTC
# Line 3  C $Name$ Line 3  C $Name$
3    
4  #include "PACKAGES_CONFIG.h"  #include "PACKAGES_CONFIG.h"
5  #include "CPP_OPTIONS.h"  #include "CPP_OPTIONS.h"
6  #include "OPENAD_OPTIONS.h"  #ifdef ALLOW_OPENAD
7    # include "OPENAD_OPTIONS.h"
8    #endif
9  c#ifdef ALLOW_AUTODIFF  c#ifdef ALLOW_AUTODIFF
10  c# include "AUTODIFF_OPTIONS.h"  c# include "AUTODIFF_OPTIONS.h"
11  c#endif  c#endif
# Line 71  C     == Global variables == Line 73  C     == Global variables ==
73  c**************************************  c**************************************
74  #ifdef ALLOW_OPENAD  #ifdef ALLOW_OPENAD
75    
 C-- The folowing header files are included in the_main_loop.F for TAF  
 C    and might be needed here (where the iloop is done) for OpenAD  
 c#  include "AUTODIFF_MYFIELDS.h"  
 c#  include "GRID.h"  
 c#  include "DYNVARS.h"  
 c#  include "SURFACE.h"  
 c#  include "FFIELDS.h"  
 c#  include "EOS.h"  
 c#  include "AUTODIFF.h"  
 c#  ifdef ALLOW_GENERIC_ADVDIFF  
 c#   include "GAD.h"  
 c#   include "GAD_SOM_VARS.h"  
 c#  endif  
 c#  ifdef ALLOW_MOM_FLUXFORM  
 c#   include "MOM_FLUXFORM.h"  
 c#  endif  
 c#  ifdef ALLOW_CD_CODE  
 c#   include "CD_CODE_VARS.h"  
 c#  endif  
 c#  ifdef ALLOW_EXF  
 c#   include "EXF_FIELDS.h"  
 c#   ifdef ALLOW_BULKFORMULAE  
 c#    include "EXF_CONSTANTS.h"  
 c#   endif  
 c#  endif /* ALLOW_EXF */  
 c#  ifdef ALLOW_SEAICE  
 c#   include "SEAICE_SIZE.h"  
 c#   include "SEAICE.h"  
 c#   include "SEAICE_PARAMS.h"  
 c#   include "SEAICE_COST.h"  
 c#   include "SEAICE_TRACER.h"  
 c#  endif  
 c#  ifdef ALLOW_SALT_PLUME  
 c#   include "SALT_PLUME.h"  
 c#  endif  
 c#  ifdef ALLOW_THSICE  
 c#   include "THSICE_SIZE.h"  
 c#   include "THSICE_VARS.h"  
 c#   include "THSICE_COST.h"  
 c#  endif  
 c#  ifdef ALLOW_EBM  
 c#   include "EBM.h"  
 c#  endif  
 c#  ifdef ALLOW_RBCS  
 c#   include "RBCS_SIZE.h"  
 c#   include "RBCS_FIELDS.h"  
 c#  endif  
 c#  ifdef ALLOW_OFFLINE  
 c#   include "OFFLINE.h"  
 c#  endif  
 c#  ifdef ALLOW_CG2D_NSA  
 c#   include "CG2D.h"  
 c#  endif  
 c# ifdef ALLOW_GGL90  
 c#  include "GGL90.h"  
 c# endif  
 c# ifdef ALLOW_PROFILES  
 c#  include "profiles.h"  
 c# endif  
 c# ifdef ALLOW_ECCO_EVOLUTION  
 c#  ifdef ALLOW_ECCO  
 c#   include "ecco_cost.h"  
 c#  endif  
 c# endif  
   
76  # ifdef ALLOW_CTRL  # ifdef ALLOW_CTRL
77  #  include "CTRL_SIZE.h"  #  include "CTRL_SIZE.h"
78  #  include "ctrl.h"  #  include "ctrl.h"
# Line 216  CEOP Line 153  CEOP
153  #ifdef ALLOW_OPENAD  #ifdef ALLOW_OPENAD
154  C     >>>>>>>>>>>>>>>>>>>>>>>>>>>   LOOP   <<<<<<<<<<<<<<<<<<<<<<<<<<<<  C     >>>>>>>>>>>>>>>>>>>>>>>>>>>   LOOP   <<<<<<<<<<<<<<<<<<<<<<<<<<<<
155  C     >>>>>>>>>>>>>>>>>>>>>>>>>>>  STARTS  <<<<<<<<<<<<<<<<<<<<<<<<<<<<  C     >>>>>>>>>>>>>>>>>>>>>>>>>>>  STARTS  <<<<<<<<<<<<<<<<<<<<<<<<<<<<
156  #ifdef ALLOW_OPENAD_DIVA  # ifdef ALLOW_OPENAD_DIVA
157        DO iloop = 1, nTimeSteps_l2        DO iloop = 1, nTimeSteps_l2
158  #else  # else
159        DO iloop = 1, nTimeSteps        DO iloop = 1, nTimeSteps
160  #endif  # endif
161    
162  #endif  #endif /* ALLOW_OPENAD */
163    
164  #ifdef ALLOW_DEBUG  #ifdef ALLOW_DEBUG
165        IF (debugMode) CALL DEBUG_CALL('FORWARD_STEP',myThid)        IF (debugMode) CALL DEBUG_CALL('FORWARD_STEP',myThid)
166  #endif  #endif
167    
168  #ifndef ALLOW_OPENAD  #ifndef ALLOW_OPENAD
169  #ifdef ALLOW_ATM2D  # ifdef ALLOW_ATM2D
170          CALL TIMER_START('FORWARD_STEP_ATM2D  [MAIN_DO_LOOP]',myThid)          CALL TIMER_START('FORWARD_STEP_ATM2D  [MAIN_DO_LOOP]',myThid)
171          CALL FORWARD_STEP_ATM2D( iloop, myTime, myIter, myThid )          CALL FORWARD_STEP_ATM2D( iloop, myTime, myIter, myThid )
172          CALL TIMER_STOP ('FORWARD_STEP_ATM2D  [MAIN_DO_LOOP]',myThid)          CALL TIMER_STOP ('FORWARD_STEP_ATM2D  [MAIN_DO_LOOP]',myThid)
173  #else  # else
174          CALL TIMER_START('FORWARD_STEP        [MAIN_DO_LOOP]',myThid)          CALL TIMER_START('FORWARD_STEP        [MAIN_DO_LOOP]',myThid)
175          CALL FORWARD_STEP( iloop, myTime, myIter, myThid )          CALL FORWARD_STEP( iloop, myTime, myIter, myThid )
176          CALL TIMER_STOP ('FORWARD_STEP        [MAIN_DO_LOOP]',myThid)          CALL TIMER_STOP ('FORWARD_STEP        [MAIN_DO_LOOP]',myThid)
177  #endif  # endif
178  #else  #else
179  C#ifdef ALLOW_ATM2D  # ifdef ALLOW_OPENAD_DIVA
 C        CALL TIMER_START('INNER_DO_LOOP_ATM2D  [MAIN_DO_LOOP]',myThid)  
 C        nTimeSteps_l2 = 2  
 C        CALL INNER_DO_LOOP( iloop, myTime, myIter, myThid )  
 C        CALL TIMER_STOP ('INNER_DO_LOOP_ATM2D  [MAIN_DO_LOOP]',myThid)  
 C#else  
 C        CALL TIMER_START('INNER_DO_LOOP        [MAIN_DO_LOOP]',myThid)  
 C        nTimeSteps_l2 = 2  
 C        CALL INNER_DO_LOOP( iloop, myTime, myIter, myThid )  
 C        CALL TIMER_STOP ('INNER_DO_LOOP        [MAIN_DO_LOOP]',myThid)  
 C#endif  
 #ifdef ALLOW_OPENAD_DIVA  
180         CALL TIMER_START('INNER_DO_LOOP       [MAIN_DO_LOOP]',myThid)         CALL TIMER_START('INNER_DO_LOOP       [MAIN_DO_LOOP]',myThid)
181         nTimeSteps_l2 = 2         nTimeSteps_l2 = 2
182         CALL INNER_DO_LOOP( iloop, myTime, myIter, myThid )         CALL INNER_DO_LOOP( iloop, myTime, myIter, myThid )
183         CALL TIMER_STOP ('INNER_DO_LOOP       [MAIN_DO_LOOP]',myThid)         CALL TIMER_STOP ('INNER_DO_LOOP       [MAIN_DO_LOOP]',myThid)
184  #else  # else
185         CALL TIMER_START('FORWARD_STEP        [MAIN_DO_LOOP]',myThid)         CALL TIMER_START('FORWARD_STEP        [MAIN_DO_LOOP]',myThid)
186         nTimeSteps_l2 = 2         nTimeSteps_l2 = 2
187         CALL FORWARD_STEP( iloop, myTime, myIter, myThid )         CALL FORWARD_STEP( iloop, myTime, myIter, myThid )
188         CALL TIMER_STOP ('FORWARD_STEP        [MAIN_DO_LOOP]',myThid)         CALL TIMER_STOP ('FORWARD_STEP        [MAIN_DO_LOOP]',myThid)
189  #endif  # endif
190  #endif  #endif /* ndef ALLOW_OPENAD */
191    
192  #ifdef ALLOW_OPENAD  #ifdef ALLOW_OPENAD
193        ENDDO        ENDDO
194  C     >>>>>>>>>>>>>>>>>>>>>>>>>>>   LOOP   <<<<<<<<<<<<<<<<<<<<<<<<<<<<  C     >>>>>>>>>>>>>>>>>>>>>>>>>>>   LOOP   <<<<<<<<<<<<<<<<<<<<<<<<<<<<
195  C     >>>>>>>>>>>>>>>>>>>>>>>>>>>  STOPS   <<<<<<<<<<<<<<<<<<<<<<<<<<<<  C     >>>>>>>>>>>>>>>>>>>>>>>>>>>  STOPS   <<<<<<<<<<<<<<<<<<<<<<<<<<<<
196  #endif  #endif /* ALLOW_OPENAD */
197    
198  #ifdef ALLOW_DEBUG  #ifdef ALLOW_DEBUG
199        IF (debugMode) CALL DEBUG_LEAVE('MAIN_DO_LOOP',myThid)        IF (debugMode) CALL DEBUG_LEAVE('MAIN_DO_LOOP',myThid)

Legend:
Removed from v.1.19  
changed lines
  Added in v.1.20

  ViewVC Help
Powered by ViewVC 1.1.22