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

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

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

revision 1.69 by jmc, Sun Dec 14 23:18:49 2003 UTC revision 1.79 by edhill, Fri Sep 10 12:19:30 2004 UTC
# Line 146  C    | | | |-INI_THETA  :: Set model ini Line 146  C    | | | |-INI_THETA  :: Set model ini
146  C    | | | |-INI_SALT   :: Set model initial salinity field.  C    | | | |-INI_SALT   :: Set model initial salinity field.
147  C    | | | |-INI_PSURF  :: Set model initial free-surface height/pressure.  C    | | | |-INI_PSURF  :: Set model initial free-surface height/pressure.
148  C    | | | |-INI_PRESSURE :: Compute model initial hydrostatic pressure  C    | | | |-INI_PRESSURE :: Compute model initial hydrostatic pressure
149    C    | | | |-READ_CHECKPOINT :: Read the checkpoint
150  C    | | |  C    | | |
151  C    | | |-INI_TR1      :: Set initial tracer 1 distribution.  C    | | |-INI_TR1      :: Set initial tracer 1 distribution.
152  C    | | |  C    | | |
# Line 378  C/\  | | | |-GMREDI_DIAGS        :: GM d Line 379  C/\  | | | |-GMREDI_DIAGS        :: GM d
379  C/\  | | | |-KPP_DO_DIAGS        :: KPP diags. see pkg/kpp  C/\  | | | |-KPP_DO_DIAGS        :: KPP diags. see pkg/kpp
380  C/\  | | | |-SBO_CALC            :: SBO diags. see pkg/sbo  C/\  | | | |-SBO_CALC            :: SBO diags. see pkg/sbo
381  C/\  | | | |-SBO_DIAGS           :: SBO diags. see pkg/sbo  C/\  | | | |-SBO_DIAGS           :: SBO diags. see pkg/sbo
382    C/\  | | | |-SEAICE_DO_DIAGS     :: SEAICE diags. see pkg/seaice
383  C/\  | | | |-GCHEM_DIAGS         :: gchem diags. see pkg/gchem  C/\  | | | |-GCHEM_DIAGS         :: gchem diags. see pkg/gchem
384  C/\  | | |  C/\  | | |
385  C/\  | | |-WRITE_CHECKPOINT :: Do I/O for restart files.  C/\  | | |-WRITE_CHECKPOINT :: Do I/O for restart files.
# Line 467  C     == Global variables === Line 469  C     == Global variables ===
469  #include "SIZE.h"  #include "SIZE.h"
470  #include "EEPARAMS.h"  #include "EEPARAMS.h"
471  #include "PARAMS.h"  #include "PARAMS.h"
472    #ifdef ALLOW_MNC
473    #include "MNC_PARAMS.h"
474    #endif
475  #include "DYNVARS.h"  #include "DYNVARS.h"
476  #ifdef ALLOW_NONHYDROSTATIC  #ifdef ALLOW_NONHYDROSTATIC
477  # include "CG3D.h"  # include "CG3D.h"
# Line 539  c Line 544  c
544        IF (myProcId .eq. 0) THEN        IF (myProcId .eq. 0) THEN
545           inquire( file='costfinal', exist=exst )           inquire( file='costfinal', exist=exst )
546           IF ( .NOT. exst .AND. niter0 .EQ. 0 ) THEN           IF ( .NOT. exst .AND. niter0 .EQ. 0 ) THEN
547              CALL TIMER_START('CTRL_UNPACK      [THE_MODEL_MAIN]',mythid)              IF ( optimcycle.NE.0 ) THEN
548              CALL CTRL_UNPACK( .TRUE. , mythid )                 CALL TIMER_START('CTRL_UNPACK   [THE_MODEL_MAIN]',mythid)
549              CALL TIMER_STOP ('CTRL_UNPACK      [THE_MODEL_MAIN]',mythid)                 CALL CTRL_UNPACK( .TRUE. , mythid )
550                   CALL TIMER_STOP ('CTRL_UNPACK   [THE_MODEL_MAIN]',mythid)
551                ENDIF
552              IF ( optimcycle.EQ.0 .AND. mycurrentiter.EQ.niter0 ) THEN              IF ( optimcycle.EQ.0 .AND. mycurrentiter.EQ.niter0 ) THEN
553                 CALL TIMER_START('CTRL_PACK     [THE_MODEL_MAIN]',mythid)                 CALL TIMER_START('CTRL_PACK     [THE_MODEL_MAIN]',mythid)
554                 CALL CTRL_PACK( .TRUE. , mythid )                 CALL CTRL_PACK( .TRUE. , mythid )
# Line 575  c-- The following assumes the TAF option Line 582  c-- The following assumes the TAF option
582           CALL COST_FINAL_STORE ( mythid, lastdiva )           CALL COST_FINAL_STORE ( mythid, lastdiva )
583        ELSE        ELSE
584           CALL TIMER_START('ADTHE_MAIN_LOOP       [ADJOINT RUN]', mythid)           CALL TIMER_START('ADTHE_MAIN_LOOP       [ADJOINT RUN]', mythid)
585           CALL ADTHE_MAIN_LOOP ( mythid )           CALL ADTHE_MAIN_LOOP ( myCurrentTime, myCurrentIter, mythid )
586           CALL TIMER_STOP ('ADTHE_MAIN_LOOP       [ADJOINT RUN]', mythid)           CALL TIMER_STOP ('ADTHE_MAIN_LOOP       [ADJOINT RUN]', mythid)
587           CALL COST_FINAL_RESTORE ( mythid, lastdiva )           CALL COST_FINAL_RESTORE ( mythid, lastdiva )
588        ENDIF        ENDIF
589  c--  c--
590  #  else /* ALLOW_DIVIDED_ADJOINT undef */  #  else /* ALLOW_DIVIDED_ADJOINT undef */
591        CALL TIMER_START('ADTHE_MAIN_LOOP          [ADJOINT RUN]', mythid)        CALL TIMER_START('ADTHE_MAIN_LOOP          [ADJOINT RUN]', mythid)
592        CALL ADTHE_MAIN_LOOP ( mythid )        CALL ADTHE_MAIN_LOOP ( myCurrentTime, myCurrentIter, mythid )
593    cph      CALL ADTHE_MAIN_LOOP ( mythid )
594        CALL TIMER_STOP ('ADTHE_MAIN_LOOP          [ADJOINT RUN]', mythid)        CALL TIMER_STOP ('ADTHE_MAIN_LOOP          [ADJOINT RUN]', mythid)
595  #  endif /* ALLOW_DIVIDED_ADJOINT */  #  endif /* ALLOW_DIVIDED_ADJOINT */
596  c  c
# Line 622  C--   Call time stepping loop of full mo Line 630  C--   Call time stepping loop of full mo
630    
631  #endif /* ALLOW_TANGENTLINEAR_RUN ALLOW_ADJOINT_RUN ALLOW_ADMTLM_RUN */  #endif /* ALLOW_TANGENTLINEAR_RUN ALLOW_ADJOINT_RUN ALLOW_ADMTLM_RUN */
632    
 C--   Sea-ice checkpoint (in case the in-loop checkpoint was missed)  
 #ifdef ALLOW_SEAICE  
       IF ( useSEAICE )  
      &     CALL SEAICE_WRITE_PICKUP(  
      &     .TRUE., myCurrentTime, myCurrentIter, myThid )  
 #endif  
   
633  C--   Final checkpoint (in case the in-loop checkpoint was missed)  C--   Final checkpoint (in case the in-loop checkpoint was missed)
634        CALL TIMER_START('WRITE_CHECKPOINT       [THE_MODEL_MAIN]',myThid)        CALL TIMER_START('WRITE_CHECKPOINT       [THE_MODEL_MAIN]',myThid)
635        CALL PACKAGES_WRITE_PICKUP(        CALL PACKAGES_WRITE_PICKUP(
# Line 639  C--   Final checkpoint (in case the in-l Line 640  C--   Final checkpoint (in case the in-l
640    
641        CALL TIMER_STOP ('ALL                    [THE_MODEL_MAIN]',myThid)        CALL TIMER_STOP ('ALL                    [THE_MODEL_MAIN]',myThid)
642    
643    #ifdef ALLOW_MNC
644          IF (useMNC) THEN
645    C       Close all open NetCDF files
646            _BEGIN_MASTER( mythid )
647            CALL MNC_FILE_CLOSE_ALL( myThid )
648            _END_MASTER( mythid )
649          ENDIF
650    #endif
651    
652  C--   Write timer statistics  C--   Write timer statistics
653        IF ( myThid .EQ. 1 ) THEN        IF ( myThid .EQ. 1 ) THEN
654         CALL TIMER_PRINTALL( myThid )         CALL TIMER_PRINTALL( myThid )

Legend:
Removed from v.1.69  
changed lines
  Added in v.1.79

  ViewVC Help
Powered by ViewVC 1.1.22