/[MITgcm]/MITgcm_contrib/SOSE/code_ad/ECCO_CPPOPTIONS.h_GOOD
ViewVC logotype

Contents of /MITgcm_contrib/SOSE/code_ad/ECCO_CPPOPTIONS.h_GOOD

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


Revision 1.2 - (show annotations) (download)
Fri Apr 23 20:02:06 2010 UTC (15 years, 3 months ago) by mmazloff
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +0 -0 lines
FILE REMOVED
old

1
2 C
3 C CPP flags controlling which code is included in the files that
4 C will be compiled.
5 C
6 C ********************************************************************
7 C *** ECCO Package ***
8 C ********************************************************************
9 C
10 C o include dump of snap shots for checks
11 #undef ALLOW_SNAPSHOTS
12
13 #undef ALLOW_ECCO_FORWARD_RUN
14 #undef ALLOW_ECCO_DIAGNOSTICS_RUN
15 #define ALLOW_ECCO_OPTIMIZATION
16
17 C >>> Do a long protocol.
18 #undef ECCO_VERBOSE
19
20 C >>> Just do a "dry" run ( useful for testing ).
21 #undef ALLOW_NO_DYNAMICS
22 C >>> Use the Yearly-Monthly-Daily-Stepping call tree.
23 #undef ALLOW_YMDS_TREE
24 C >>> Do not call stepping
25 #define ALLOW_STEPPING_CALL
26
27 #undef DISABLE_MPI_READY_TO_RECEIVE
28
29 C ********************************************************************
30 C *** Adjoint Support Package ***
31 C ********************************************************************
32
33 C o Include/exclude code in order to be able to automatically
34 C differentiate the MITgcmUV by using the Tangent Linear and
35 C Adjoint Model Compiler (TAMC).
36 #define INCLUDE_AUTODIFF_PACKAGE
37 C
38 #define ALLOW_AUTODIFF_TAMC
39 C
40 C >>> Checkpointing as handled by TAMC
41 #define ALLOW_TAMC_CHECKPOINTING
42 C
43 C >>> Extract adjoint state
44 #define ALLOW_AUTODIFF_MONITOR
45 C
46 C extend to 4-level checkpointing
47 #define AUTODIFF_4_LEVEL_CHECKPOINT
48 C
49 C o use divided adjoint to split adjoint computations
50 #define ALLOW_DIVIDED_ADJOINT
51 #define ALLOW_DIVIDED_ADJOINT_MPI
52
53 C ********************************************************************
54 C *** Calender Package ***
55 C ********************************************************************
56 C
57 C CPP flags controlling which code is included in the files that
58 C will be compiled.
59
60 CPH >>>>>> THERE ARE NO MORE CAL OPTIONS TO BE SET <<<<<<
61
62 C ********************************************************************
63 C *** Cost function Package ***
64 c ********************************************************************
65 C
66 #define ALLOW_COST
67
68 #ifdef ALLOW_COST
69
70 # define ALLOW_PROFILES_CONTRIBUTION
71 # define ALLOW_PROFILES
72 C >>> Use the EGM-96 geoid error covariance.
73 # define ALLOW_EGM96_ERROR_DIAG
74 # undef ALLOW_EGM96_ERROR_COV
75 # undef ALLOW_SPH_PROJECTION
76
77 C >>> Use NSCAT data.
78 # undef ALLOW_SCAT_COST_CONTRIBUTION
79
80 C >>> Cost function contributions
81 # undef ALLOW_HFLUX_COST_CONTRIBUTION
82 # undef ALLOW_SFLUX_COST_CONTRIBUTION
83 # undef ALLOW_MEAN_HFLUX_COST_CONTRIBUTION
84 # undef ALLOW_MEAN_SFLUX_COST_CONTRIBUTION
85 # undef ALLOW_USTRESS_COST_CONTRIBUTION
86 # undef ALLOW_VSTRESS_COST_CONTRIBUTION
87 # undef ALLOW_STRESS_MEAN_COST_CONTRIBUTION
88
89 # define ALLOW_ATEMP_COST_CONTRIBUTION
90 # define ALLOW_AQH_COST_CONTRIBUTION
91 # define ALLOW_PRECIP_COST_CONTRIBUTION
92 # define ALLOW_SWFLUX_COST_CONTRIBUTION
93 # define ALLOW_UWIND_COST_CONTRIBUTION
94 # define ALLOW_VWIND_COST_CONTRIBUTION
95
96 # undef GENERIC_BAR_MONTH
97 # define ALLOW_THETA_COST_CONTRIBUTION
98 # define ALLOW_SALT_COST_CONTRIBUTION
99 # define ALLOW_THETA0_COST_CONTRIBUTION
100 # define ALLOW_SALT0_COST_CONTRIBUTION
101 # define ALLOW_SST_COST_CONTRIBUTION
102 # undef ALLOW_SSS_COST_CONTRIBUTION
103 # define ALLOW_TMI_SST_COST_CONTRIBUTION
104
105 # define ALLOW_SSH_TOT
106 # define ALLOW_SSH_MEAN_COST_CONTRIBUTION
107 # define ALLOW_SSH_TPANOM_COST_CONTRIBUTION
108 # define ALLOW_SSH_ERSANOM_COST_CONTRIBUTION
109 # define ALLOW_SSH_GFOANOM_COST_CONTRIBUTION
110 # if (defined (ALLOW_SSH_MEAN_COST_CONTRIBUTION) || \
111 defined (ALLOW_SSH_TPANOM_COST_CONTRIBUTION) || \
112 defined (ALLOW_SSH_ERSANOM_COST_CONTRIBUTION))
113 # define ALLOW_SSH_COST_CONTRIBUTION
114 # endif
115
116 # undef ALLOW_XBT_COST_CONTRIBUTION
117 # undef ALLOW_CTDT_COST_CONTRIBUTION
118 # undef ALLOW_CTDS_COST_CONTRIBUTION
119 # undef ALLOW_DRIFTER_COST_CONTRIBUTION
120 # undef ALLOW_DRIFT_COST_CONTRIBUTION
121 # undef ALLOW_DRIFTW_COST_CONTRIBUTION
122 C
123 # undef ALLOW_ARGO_THETA_COST_CONTRIBUTION
124 # undef ALLOW_ARGO_SALT_COST_CONTRIBUTION
125 C
126 c >>> Open boundaries
127 c >>> Make sure that ALLOW_OBCS is defined!
128 # undef ALLOW_OBCSN_COST_CONTRIBUTION
129 # undef ALLOW_OBCSS_COST_CONTRIBUTION
130 # undef ALLOW_OBCSW_COST_CONTRIBUTION
131 # undef ALLOW_OBCSE_COST_CONTRIBUTION
132 # if (defined (ALLOW_OBCSN_COST_CONTRIBUTION) || \
133 defined (ALLOW_OBCSS_COST_CONTRIBUTION) || \
134 defined (ALLOW_OBCSW_COST_CONTRIBUTION) || \
135 defined (ALLOW_OBCSE_COST_CONTRIBUTION))
136 # define ALLOW_OBCS_COST_CONTRIBUTION
137 # endif
138 #undef OBCS_VOLFLUX_COST_CONTRIBUTION
139 #undef OBCS_AGEOS_COST_CONTRIBUTION
140
141
142 # define ALLOW_SEAICE_COST_SMR_AREA
143
144 # define ALLOW_SMOOTH_BC_COST_CONTRIBUTION
145 # define ALLOW_SMOOTH_IC_COST_CONTRIBUTION
146
147 # undef ALLOW_COST_ATLANTIC
148 c
149 #endif /* ALLOW_COST */
150
151
152 C ********************************************************************
153 C *** Control vector Package ***
154 C ********************************************************************
155 C
156 #define CTRL_SET_PREC_32
157 cph(
158 #define ALLOW_NONDIMENSIONAL_CONTROL_IO
159 #define EXCLUDE_CTRL_PACK
160 #undef CTRL_SET_OLD_MAXCVARS_40
161 cph)
162 C >>> Initial values.
163 #define ALLOW_THETA0_CONTROL
164 #define ALLOW_SALT0_CONTROL
165
166 C >>> Surface fluxes.
167 #undef ALLOW_HFLUX_CONTROL
168 #undef ALLOW_SFLUX_CONTROL
169 #undef ALLOW_USTRESS_CONTROL
170 #undef ALLOW_VSTRESS_CONTROL
171
172 C >>> Atmospheric state.
173 #define ALLOW_ATEMP_CONTROL
174 #define ALLOW_AQH_CONTROL
175 #define ALLOW_PRECIP_CONTROL
176 #define ALLOW_SWFLUX_CONTROL
177 #define ALLOW_UWIND_CONTROL
178 #define ALLOW_VWIND_CONTROL
179
180 C >>> Open boundaries
181 c >>> Make sure that ALLOW_OBCS is defined
182 #undef ALLOW_OBCSN_CONTROL
183 #undef ALLOW_OBCSS_CONTROL
184 #undef ALLOW_OBCSW_CONTROL
185 #undef ALLOW_OBCSE_CONTROL
186 #if (defined (ALLOW_OBCSN_CONTROL) || \
187 defined (ALLOW_OBCSS_CONTROL) || \
188 defined (ALLOW_OBCSW_CONTROL) || \
189 defined (ALLOW_OBCSE_CONTROL))
190 # define ALLOW_OBCS_CONTROL
191 #endif
192 #undef ALLOW_CTRL_OBCS_BALANCE
193 #undef BALANCE_CONTROL_VOLFLUX_GLOBAL
194 #undef BAROTROPIC_OBVEL_CONTROL
195
196 C ********************************************************************
197 C *** External forcing Package ***
198 C ********************************************************************
199 C
200 C o Include/exclude the external forcing package. To use this package,
201 C you have to include the calendar tool as well. KPP can be switched
202 C on or off. The implementation automatically takes care of this.
203 #define INCLUDE_EXTERNAL_FORCING_PACKAGE
204
205 C Do more printout for the protocol file than usual.
206 #undef EXF_VERBOSE
207
208 C Bulk formulae related flags.
209 #define ALLOW_RUNOFF
210 #define ALLOW_DOWNWARD_RADIATION
211 #define ALLOW_ATM_TEMP
212 #define ALLOW_ATM_WIND
213 #if (defined (ALLOW_ATM_TEMP) || \
214 defined (ALLOW_ATM_WIND))
215 # define ALLOW_BULKFORMULAE
216 #endif
217
218 C Relaxation to monthly climatologies.
219 #undef ALLOW_CLIMTEMP_RELAXATION
220 #undef ALLOW_CLIMSALT_RELAXATION
221 #undef ALLOW_CLIMSST_RELAXATION
222 #undef ALLOW_CLIMSSS_RELAXATION
223
224 #define EXF_INTERP_USE_DYNALLOC
225 #define USE_EXF_INTERPOLATION

  ViewVC Help
Powered by ViewVC 1.1.22