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

Annotation of /MITgcm_contrib/SOSE/code_ad/ECCO_CPPOPTIONS.h

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


Revision 1.1 - (hide annotations) (download)
Fri Apr 23 19:55:12 2010 UTC (15 years, 3 months ago) by mmazloff
Branch: MAIN
CVS Tags: HEAD
File MIME type: text/plain
original files

1 mmazloff 1.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     #define 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     #undef 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     CMM
53     #undef AUTODIFF_USE_OLDSTORE_2D
54     #define AUTODIFF_USE_OLDSTORE_3D
55     CMM
56     C ********************************************************************
57     C *** Calender Package ***
58     C ********************************************************************
59     C
60     C CPP flags controlling which code is included in the files that
61     C will be compiled.
62    
63     CPH >>>>>> THERE ARE NO MORE CAL OPTIONS TO BE SET <<<<<<
64    
65     C
66     C ********************************************************************
67     C *** Smooth function Package ***
68     c ********************************************************************
69     C
70     # undef ALLOW_SMOOTH_CORREL3D
71     # undef ALLOW_SMOOTH3D
72     # define ALLOW_SMOOTH_CORREL2D
73     # define ALLOW_SMOOTH2D
74    
75     C ********************************************************************
76     C *** Cost function Package ***
77     c ********************************************************************
78     C
79     #define ALLOW_COST
80    
81     #ifdef ALLOW_COST
82    
83     # define ALLOW_PROFILES_CONTRIBUTION
84     # define ALLOW_PROFILES
85     C >>> Use the EGM-96 geoid error covariance.
86     # define ALLOW_EGM96_ERROR_DIAG
87     # undef ALLOW_EGM96_ERROR_COV
88     # undef ALLOW_SPH_PROJECTION
89    
90     C >>> Use NSCAT data.
91     # undef ALLOW_SCAT_COST_CONTRIBUTION
92    
93     C >>> Cost function contributions
94     # undef ALLOW_HFLUX_COST_CONTRIBUTION
95     # undef ALLOW_SFLUX_COST_CONTRIBUTION
96     # undef ALLOW_MEAN_HFLUX_COST_CONTRIBUTION
97     # undef ALLOW_MEAN_SFLUX_COST_CONTRIBUTION
98     # undef ALLOW_USTRESS_COST_CONTRIBUTION
99     # undef ALLOW_VSTRESS_COST_CONTRIBUTION
100     # undef ALLOW_STRESS_MEAN_COST_CONTRIBUTION
101    
102     # define ALLOW_ATEMP_COST_CONTRIBUTION
103     # define ALLOW_AQH_COST_CONTRIBUTION
104     # define ALLOW_PRECIP_COST_CONTRIBUTION
105     # define ALLOW_SWDOWN_COST_CONTRIBUTION
106     # define ALLOW_UWIND_COST_CONTRIBUTION
107     # define ALLOW_VWIND_COST_CONTRIBUTION
108    
109     # undef GENERIC_BAR_MONTH
110     # define ALLOW_THETA_COST_CONTRIBUTION
111     # define ALLOW_SALT_COST_CONTRIBUTION
112     # define ALLOW_THETA0_COST_CONTRIBUTION
113     # define ALLOW_SALT0_COST_CONTRIBUTION
114     # undef ALLOW_SST_COST_CONTRIBUTION
115     # undef ALLOW_SSS_COST_CONTRIBUTION
116     # undef ALLOW_TMI_SST_COST_CONTRIBUTION
117     # define ALLOW_DAILYSST_COST_CONTRIBUTION
118    
119     # define ALLOW_SSH_MEAN_COST_CONTRIBUTION
120     # define ALLOW_SSH_TPANOM_COST_CONTRIBUTION
121     # define ALLOW_SSH_ERSANOM_COST_CONTRIBUTION
122     # define ALLOW_SSH_GFOANOM_COST_CONTRIBUTION
123     # if (defined (ALLOW_SSH_MEAN_COST_CONTRIBUTION) || \
124     defined (ALLOW_SSH_TPANOM_COST_CONTRIBUTION) || \
125     defined (ALLOW_SSH_ERSANOM_COST_CONTRIBUTION))
126     # define ALLOW_SSH_COST_CONTRIBUTION
127     # endif
128     # undef ALLOW_SSH_TOT
129     # define ALLOW_NEW_SSH_COST
130     # undef ALLOW_SSHV4_COST
131    
132     # undef ALLOW_XBT_COST_CONTRIBUTION
133     # undef ALLOW_CTDT_COST_CONTRIBUTION
134     # undef ALLOW_CTDS_COST_CONTRIBUTION
135     # undef ALLOW_DRIFTER_COST_CONTRIBUTION
136     # undef ALLOW_DRIFT_COST_CONTRIBUTION
137     # define ALLOW_DRIFTW_COST_CONTRIBUTION
138     C
139     # undef ALLOW_ARGO_THETA_COST_CONTRIBUTION
140     # undef ALLOW_ARGO_SALT_COST_CONTRIBUTION
141     C
142     c >>> Open boundaries
143     c >>> Make sure that ALLOW_OBCS is defined!
144     # define ALLOW_OBCSN_COST_CONTRIBUTION
145     # undef ALLOW_OBCSS_COST_CONTRIBUTION
146     # undef ALLOW_OBCSW_COST_CONTRIBUTION
147     # undef ALLOW_OBCSE_COST_CONTRIBUTION
148     # if (defined (ALLOW_OBCSN_COST_CONTRIBUTION) || \
149     defined (ALLOW_OBCSS_COST_CONTRIBUTION) || \
150     defined (ALLOW_OBCSW_COST_CONTRIBUTION) || \
151     defined (ALLOW_OBCSE_COST_CONTRIBUTION))
152     # define ALLOW_OBCS_COST_CONTRIBUTION
153     # endif
154     #undef OBCS_VOLFLUX_COST_CONTRIBUTION
155     #undef OBCS_AGEOS_COST_CONTRIBUTION
156    
157    
158     # define ALLOW_SEAICE_COST_SMR_AREA
159     # define ALLOW_SEAICE_COST_AREASST
160    
161     # undef ALLOW_SMOOTH_BC_COST_CONTRIBUTION
162     # define ALLOW_SMOOTH_IC_COST_CONTRIBUTION
163    
164     # undef ALLOW_COST_ATLANTIC
165     c
166     #endif /* ALLOW_COST */
167    
168    
169     C ********************************************************************
170     C *** Control vector Package ***
171     C ********************************************************************
172     C
173     #define CTRL_SET_PREC_32
174     cph(
175     #define ALLOW_NONDIMENSIONAL_CONTROL_IO
176     #define EXCLUDE_CTRL_PACK
177     #undef CTRL_SET_OLD_MAXCVARS_40
178     cph)
179     C >>> Initial values.
180     #define ALLOW_THETA0_CONTROL
181     #define ALLOW_SALT0_CONTROL
182    
183     C >>> Surface fluxes.
184     #undef ALLOW_HFLUX_CONTROL
185     #undef ALLOW_SFLUX_CONTROL
186     #undef ALLOW_USTRESS_CONTROL
187     #undef ALLOW_VSTRESS_CONTROL
188    
189     C >>> Atmospheric state.
190     #define ALLOW_ATEMP_CONTROL
191     #define ALLOW_AQH_CONTROL
192     #define ALLOW_PRECIP_CONTROL
193     #define ALLOW_SWDOWN_CONTROL
194     #define ALLOW_UWIND_CONTROL
195     #define ALLOW_VWIND_CONTROL
196    
197     C >>> Open boundaries
198     c >>> Make sure that ALLOW_OBCS is defined
199     #define ALLOW_OBCSN_CONTROL
200     #undef ALLOW_OBCSS_CONTROL
201     #undef ALLOW_OBCSW_CONTROL
202     #undef ALLOW_OBCSE_CONTROL
203     #if (defined (ALLOW_OBCSN_CONTROL) || \
204     defined (ALLOW_OBCSS_CONTROL) || \
205     defined (ALLOW_OBCSW_CONTROL) || \
206     defined (ALLOW_OBCSE_CONTROL))
207     # define ALLOW_OBCS_CONTROL
208     #endif
209     #undef ALLOW_CTRL_OBCS_BALANCE
210     #undef BALANCE_CONTROL_VOLFLUX_GLOBAL
211     #undef BAROTROPIC_OBVEL_CONTROL
212    
213     C ********************************************************************
214     C *** External forcing Package ***
215     C ********************************************************************
216     C
217     C o Include/exclude the external forcing package. To use this package,
218     C you have to include the calendar tool as well. KPP can be switched
219     C on or off. The implementation automatically takes care of this.
220     #define INCLUDE_EXTERNAL_FORCING_PACKAGE
221    
222     C Do more printout for the protocol file than usual.
223     #undef EXF_VERBOSE
224    
225     C Bulk formulae related flags.
226     #define ALLOW_RUNOFF
227     #define ALLOW_DOWNWARD_RADIATION
228     #define ALLOW_ATM_TEMP
229     #define ALLOW_ATM_WIND
230     #if (defined (ALLOW_ATM_TEMP) || \
231     defined (ALLOW_ATM_WIND))
232     # define ALLOW_BULKFORMULAE
233     #endif
234    
235     C Relaxation to monthly climatologies.
236     #undef ALLOW_CLIMTEMP_RELAXATION
237     #undef ALLOW_CLIMSALT_RELAXATION
238     #undef ALLOW_CLIMSST_RELAXATION
239     #undef ALLOW_CLIMSSS_RELAXATION
240    
241     #define EXF_INTERP_USE_DYNALLOC
242     #define USE_EXF_INTERPOLATION
243    

  ViewVC Help
Powered by ViewVC 1.1.22