/[MITgcm]/MITgcm_contrib/heimbach/OpenAD/code_shallow_openad/ad_template.plain.f
ViewVC logotype

Annotation of /MITgcm_contrib/heimbach/OpenAD/code_shallow_openad/ad_template.plain.f

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


Revision 1.5 - (hide annotations) (download)
Thu Dec 19 16:09:57 2013 UTC (12 years, 10 months ago) by utke
Branch: MAIN
CVS Tags: HEAD
Changes since 1.4: +0 -0 lines
FILE REMOVED
stale

1 utke 1.1 subroutine template()
2     use OpenAD_checkpoints
3     use OpenAD_tape
4     use OpenAD_rev
5    
6     c we may need these for the checkpointing
7     use SIZE_mod
8     use EEPARAMS_mod
9     use PARAMS_mod
10     use BAR2_mod
11     use BARRIER_mod
12     use CG2D_mod
13     use CG3D_mod
14     use DFILE_mod
15     use DYNVARS_mod
16     use EEIO_mod
17     use EESUPPORT_mod
18     use EOS_mod
19     use EXCH_JAM_mod
20     use EXCH_mod
21     use FC_NAMEMANGLE_mod
22     use FFIELDS_mod
23     use GAD_mod
24     use GLOBAL_MAX_mod
25     use GLOBAL_SUM_mod
26     use GRID_mod
27     use MPI_INFO_mod
28     use SOLVE_FOR_PRESSURE3D_mod
29     use SOLVE_FOR_PRESSURE_mod
30     use SURFACE_mod
31     use tamc_mod
32     use tamc_keys_mod
33     use cost_mod
34     use g_cost_mod
35     use ctrl_mod
36     use ctrl_dummy_mod
37     use ctrl_weights_mod
38     use optim_mod
39     use grdchk_mod
40    
41     !$TEMPLATE_PRAGMA_DECLARATIONS
42    
43     integer :: cp_loop_variable_1,cp_loop_variable_2,
44     + cp_loop_variable_3,cp_loop_variable_4,cp_loop_variable_5
45    
46     type(modeType) :: our_orig_mode
47    
48     integer iaddr
49     external iaddr
50    
51     character*(80):: indentation='
52     + '
53    
54     our_indent=our_indent+1
55 utke 1.3
56     write(*,
57     +'(A,A,A,A,L,A,L,A,L,A,L,A,L,A,L,A,I6,A,I6,A,I6,A,I6,A,I8,A,I8)')
58     +'JU:',indentation(1:our_indent), 'enter __SRNAME__:',
59 utke 1.2 +' As:',our_rev_mode%arg_store,
60     +' Ar:',our_rev_mode%arg_restore,
61     +' Pl:',our_rev_mode%plain,
62     +' Ta:',our_rev_mode%tape,
63     +' Ad:',our_rev_mode%adjoint,
64 utke 1.3 +' Sw:',our_rev_mode%switchedToCheckpoint,
65     +' CD:',cp_double_pointer,
66     +' CI:',cp_integer_pointer,
67     +' CB:',cp_boolean_pointer,
68     +' CS:',cp_string_pointer,
69     +' TD:',double_tape_pointer,
70     +' TI:',integer_tape_pointer
71 utke 1.1
72 utke 1.3 if (our_rev_mode%arg_store
73     + .OR.
74     + our_rev_mode%arg_restore) then
75     write(*,*) 'JU: ERROR : arg (re)store here is wrong logic'
76     stop
77     end if
78     if (our_rev_mode%plain) then
79 utke 1.1 write(*,'(A,A,A)')
80     +'JU:',indentation(1:our_indent),
81 utke 1.3 +' __SRNAME__: entering plain'
82 utke 1.1 our_orig_mode=our_rev_mode
83     !$PLACEHOLDER_PRAGMA$ id=1
84     our_rev_mode=our_orig_mode
85     end if
86     if (our_rev_mode%tape) then
87     write(*,'(A,A,A)')
88     +'JU:',indentation(1:our_indent),
89 utke 1.3 +' __SRNAME__: entering tape'
90 utke 1.1 our_orig_mode=our_rev_mode
91     !$PLACEHOLDER_PRAGMA$ id=2
92     our_rev_mode=our_orig_mode
93     end if
94     if (our_rev_mode%adjoint) then
95     write(*,'(A,A,A)')
96     +'JU:',indentation(1:our_indent),
97 utke 1.3 +' __SRNAME__: entering adjoint'
98 utke 1.1 our_orig_mode=our_rev_mode
99     !$PLACEHOLDER_PRAGMA$ id=3
100     our_rev_mode=our_orig_mode
101     end if
102    
103 utke 1.3 write(*,
104     +'(A,A,A,A,L,A,L,A,L,A,L,A,L,A,L,A,I6,A,I6,A,I6,A,I6,A,I8,A,I8)')
105     +'JU:',indentation(1:our_indent), 'leave __SRNAME__:',
106 utke 1.2 +' As:',our_rev_mode%arg_store,
107     +' Ar:',our_rev_mode%arg_restore,
108     +' Pl:',our_rev_mode%plain,
109     +' Ta:',our_rev_mode%tape,
110     +' Ad:',our_rev_mode%adjoint,
111 utke 1.3 +' Sw:',our_rev_mode%switchedToCheckpoint,
112     +' CD:',cp_double_pointer,
113     +' CI:',cp_integer_pointer,
114     +' CB:',cp_boolean_pointer,
115     +' CS:',cp_string_pointer,
116     +' TD:',double_tape_pointer,
117     +' TI:',integer_tape_pointer
118    
119 utke 1.1 our_indent=our_indent-1
120    
121     end subroutine template

  ViewVC Help
Powered by ViewVC 1.1.22