/[MITgcm]/MITgcm/pkg/admtlm/admtlm_driver.F
ViewVC logotype

Annotation of /MITgcm/pkg/admtlm/admtlm_driver.F

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


Revision 1.9 - (hide annotations) (download)
Mon Nov 22 23:47:50 2010 UTC (13 years, 6 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint63p, checkpoint63q, checkpoint63l, checkpoint63m, checkpoint63n, checkpoint63o, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63g, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint63, checkpoint62o, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62w, checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62z, checkpoint62y, checkpoint62x
Changes since 1.8: +6 -6 lines
finish replacing "#ifndef DISABLE_DEBUGMODE" with "#ifdef ALLOW_DEBUG"
 (left from Nov 04, 2003 cleaning)

1 jmc 1.9 C $Header: /u/gcmpack/MITgcm/pkg/admtlm/admtlm_driver.F,v 1.8 2006/04/27 12:49:02 heimbach Exp $
2 heimbach 1.1 C $Name: $
3    
4     #include "CPP_OPTIONS.h"
5    
6     CBOP
7    
8     C !ROUTINE: ADMTLM_DRIVER
9    
10     C !INTERFACE:
11     SUBROUTINE ADMTLM_DRIVER( myThid )
12     IMPLICIT NONE
13    
14     C !DESCRIPTION: \bv
15     C *==========================================================*
16 jmc 1.9 C | SUBROUTINE ADMTLM_DRIVER
17     C | o Master controlling routine for model using the MITgcm
18     C | UV parallel wrapper.
19 heimbach 1.1 C *==========================================================*
20     C \ev
21    
22     C !USES:
23     C == Global variables ===
24     #include "SIZE.h"
25     #include "EEPARAMS.h"
26     #include "PARAMS.h"
27     #include "DYNVARS.h"
28    
29 heimbach 1.2 #ifdef ALLOW_ADMTLM
30     # include "tamc.h"
31     # include "ctrl.h"
32     # include "optim.h"
33 heimbach 1.1 #endif
34    
35     C !INPUT/OUTPUT PARAMETERS:
36     C == Routine arguments ==
37     INTEGER myThid
38    
39     C == Local ==
40     INTEGER myCurrentIter
41     _RL myCurrentTime
42 heimbach 1.2 C
43 heimbach 1.1 CEOP
44    
45 jmc 1.9 #ifdef ALLOW_DEBUG
46 heimbach 1.1 IF (debugMode) CALL DEBUG_ENTER('ADMTLM_DRIVER',myThid)
47     #endif
48    
49 heimbach 1.2 #if ( defined (ALLOW_ADMTLM) )
50 heimbach 1.1
51     myCurrentTime = startTime
52     myCurrentIter = nIter0
53     yadprefix = 'g_'
54    
55 heimbach 1.5 CALL CTRL_INIT( mythid )
56 heimbach 1.1 c
57 heimbach 1.6 CALL TIMER_START('ADMTLM_DRIVER [TANGENT RUN]',mythid)
58 heimbach 1.1 CALL G_THE_MAIN_LOOP ( myCurrentTime, myCurrentIter, myThid )
59 heimbach 1.6 CALL TIMER_STOP ('ADMTLM_DRIVER [TANGENT RUN]',mythid)
60 heimbach 1.1 c
61     myCurrentTime = startTime
62     myCurrentIter = nIter0
63     yadprefix = 'ad'
64     c
65 heimbach 1.2 CALL CTRL_INIT( mythid )
66 heimbach 1.1 c
67 heimbach 1.7 if ( doAdmtlmBypassAD ) then
68 heimbach 1.6 c
69 heimbach 1.8 #ifdef ALLOW_BYPASSAD
70 heimbach 1.6 CALL TIMER_START('ADMTLM_DRIVER [BYPASSAD]',mythid)
71     CALL ADMTLM_BYPASSAD( mythid )
72     CALL TIMER_STOP ('ADMTLM_DRIVER [BYPASSAD]',mythid)
73 heimbach 1.8 #endif
74 heimbach 1.6 c
75     else
76     c
77     CALL ADMTLM_METRIC ( mythid )
78     CALL ADMTLM_MAP ( mythid )
79     c
80     CALL TIMER_START('ADMTLM_DRIVER [ADJOINT RUN]',mythid)
81     CALL ADTHE_MAIN_LOOP ( myCurrentTime, myCurrentIter, mythid )
82     CALL TIMER_STOP ('ADMTLM_DRIVER [ADJOINT RUN]',mythid)
83     c
84     endif
85 heimbach 1.1 c
86     #endif
87    
88 jmc 1.9 #ifdef ALLOW_DEBUG
89 heimbach 1.1 IF (debugMode) CALL DEBUG_LEAVE('ADMTLM_DRIVER',myThid)
90     #endif
91    
92     RETURN
93     END

  ViewVC Help
Powered by ViewVC 1.1.22