/[MITgcm]/MITgcm_contrib/heimbach/SO4x2/code_ad_nodiva/ECCO_CPPOPTIONS.h
ViewVC logotype

Annotation of /MITgcm_contrib/heimbach/SO4x2/code_ad_nodiva/ECCO_CPPOPTIONS.h

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


Revision 1.1 - (hide annotations) (download)
Thu Jan 26 06:27:12 2006 UTC (19 years, 6 months ago) by heimbach
Branch: MAIN
CVS Tags: HEAD
File MIME type: text/plain
Setup for Southern Ocean on coarse grid. Test-bed for high-res. adjoint.

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

  ViewVC Help
Powered by ViewVC 1.1.22