/[MITgcm]/MITgcm/verification/lab_sea/code_ad/ECCO_CPPOPTIONS.h
ViewVC logotype

Annotation of /MITgcm/verification/lab_sea/code_ad/ECCO_CPPOPTIONS.h

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


Revision 1.7 - (hide annotations) (download)
Thu May 1 23:55:12 2008 UTC (16 years ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint60, checkpoint59q, checkpoint59r
Changes since 1.6: +4 -4 lines
File MIME type: text/plain
Exclude the cost_ice_test part of the cost function to
produce a "cleaner" adjoint

1 heimbach 1.7 C $Header: /u/gcmpack/MITgcm/verification/lab_sea/code_ad/ECCO_CPPOPTIONS.h,v 1.6 2007/12/03 22:36:50 heimbach Exp $
2 jmc 1.5 C $Name: $
3 heimbach 1.1
4 jmc 1.5 C
5 heimbach 1.1 C CPP flags controlling which code is included in the files that
6     C will be compiled.
7     C
8     C ********************************************************************
9     C *** ECCO Package ***
10     C ********************************************************************
11     C
12 heimbach 1.4
13     cph >>>>>> !!!!!! SPECIAL SEAICE FLAG FOR TESTING !!!!!! <<<<<<
14     #define SEAICE_EXCLUDE_FOR_EXACT_AD_TESTING
15     cph >>>>>> !!!!!! SPECIAL SEAICE FLAG FOR TESTING !!!!!! <<<<<<
16 heimbach 1.1
17 heimbach 1.7 cph#define ALLOW_ECCO_FORWARD_RUN
18     #define ALLOW_ECCO_OPTIMIZATION
19 heimbach 1.1
20     C >>> Do a long protocol.
21     #undef ECCO_VERBOSE
22    
23     C ********************************************************************
24     C *** Adjoint Support Package ***
25     C ********************************************************************
26    
27     C o Include/exclude code in order to be able to automatically
28     C
29     #define ALLOW_AUTODIFF_TAMC
30     C
31     C >>> Checkpointing as handled by TAMC
32     #define ALLOW_TAMC_CHECKPOINTING
33     C
34     C extend to 4-level checkpointing
35     #undef AUTODIFF_4_LEVEL_CHECKPOINT
36     C
37     C >>> Extract adjoint state
38     #define ALLOW_AUTODIFF_MONITOR
39     C
40     C o use divided adjoint to split adjoint computations
41     #undef ALLOW_DIVIDED_ADJOINT
42    
43     C ********************************************************************
44     C *** Calendar Package ***
45     C ********************************************************************
46 jmc 1.5 C
47 heimbach 1.1 C CPP flags controlling which code is included in the files that
48     C will be compiled.
49    
50     CPH >>>>>> THERE ARE NO MORE CAL OPTIONS TO BE SET <<<<<<
51    
52     C ********************************************************************
53     C *** Cost function Package ***
54     C ********************************************************************
55     C
56     #define ALLOW_COST
57     #ifdef ALLOW_COST
58     C >>> Use the EGM-96 geoid error covariance.
59     # undef ALLOW_EGM96_ERROR_COV
60     # undef ALLOW_READ_EGM_DATA
61     C >>> Use NSCAT data.
62     # undef ALLOW_NSCAT_DATA
63     C >>> Cost function contributions
64    
65     # undef ALLOW_HFLUX_COST_CONTRIBUTION
66     # undef ALLOW_SFLUX_COST_CONTRIBUTION
67     # undef ALLOW_USTRESS_COST_CONTRIBUTION
68     # undef ALLOW_VSTRESS_COST_CONTRIBUTION
69    
70     # define ALLOW_ATEMP_COST_CONTRIBUTION
71     # define ALLOW_AQH_COST_CONTRIBUTION
72     # define ALLOW_UWIND_COST_CONTRIBUTION
73     # define ALLOW_VWIND_COST_CONTRIBUTION
74     # define ALLOW_PRECIP_COST_CONTRIBUTION
75     # define ALLOW_SNOWPRECIP_COST_CONTRIBUTION
76     # define ALLOW_SWDOWN_COST_CONTRIBUTION
77     # define ALLOW_LWDOWN_COST_CONTRIBUTION
78     # undef ALLOW_EVAP_COST_CONTRIBUTION
79     # define ALLOW_APRESSURE_COST_CONTRIBUTION
80     # undef ALLOW_RUNOFF_COST_CONTRIBUTION
81    
82 heimbach 1.6 # define ALLOW_THETA0_COST_CONTRIBUTION
83     # define ALLOW_SALT0_COST_CONTRIBUTION
84 heimbach 1.1 # define ALLOW_THETA_COST_CONTRIBUTION
85     # define ALLOW_SALT_COST_CONTRIBUTION
86     # define ALLOW_SST_COST_CONTRIBUTION
87     # undef ALLOW_SSS_COST_CONTRIBUTION
88    
89     # define ALLOW_SSH_MEAN_COST_CONTRIBUTION
90     # define ALLOW_SSH_TPANOM_COST_CONTRIBUTION
91     # define ALLOW_SSH_ERSANOM_COST_CONTRIBUTION
92     # undef ALLOW_SPH_PROJECTION
93     # if (defined (ALLOW_SSH_MEAN_COST_CONTRIBUTION) || \
94     defined (ALLOW_SSH_TPANOM_COST_CONTRIBUTION) || \
95     defined (ALLOW_SSH_ERSANOM_COST_CONTRIBUTION))
96     # define ALLOW_SSH_COST_CONTRIBUTION
97     # endif
98    
99     # undef ALLOW_CTDT_COST_CONTRIBUTION
100     # undef ALLOW_CTDS_COST_CONTRIBUTION
101     # undef ALLOW_XBT_COST_CONTRIBUTION
102     # undef ALLOW_COST_ATLANTIC
103    
104     c >>> Open boundaries
105     c >>> Make sure that ALLOW_OBCS is defined
106     # undef ALLOW_OBCSN_COST_CONTRIBUTION
107     # undef ALLOW_OBCSS_COST_CONTRIBUTION
108     # undef ALLOW_OBCSW_COST_CONTRIBUTION
109     # undef ALLOW_OBCSE_COST_CONTRIBUTION
110     # if (defined (ALLOW_OBCSN_COST_CONTRIBUTION) || \
111     defined (ALLOW_OBCSS_COST_CONTRIBUTION) || \
112     defined (ALLOW_OBCSW_COST_CONTRIBUTION) || \
113     defined (ALLOW_OBCSE_COST_CONTRIBUTION))
114     # define ALLOW_OBCS_COST_CONTRIBUTION
115     # endif
116    
117     c >>> Sea-ice volume
118 heimbach 1.7 # undef ALLOW_COST_ICE
119 heimbach 1.1
120     c >>> Sea-ice misfit to obs
121     # define ALLOW_SEAICE_COST_SMR_AREA
122    
123     #endif /* ALLOW_COST */
124    
125     C ********************************************************************
126     C *** Control vector Package ***
127     C ********************************************************************
128 jmc 1.5 C
129 heimbach 1.1 #define ALLOW_NONDIMENSIONAL_CONTROL_IO
130    
131     C >>> Initial values.
132     #define ALLOW_THETA0_CONTROL
133     #define ALLOW_SALT0_CONTROL
134    
135 heimbach 1.3 C >>> Initial seaice
136     #define ALLOW_SIAREA_CONTROL
137     #define ALLOW_SIHEFF_CONTROL
138    
139 heimbach 1.1 C >>> Surface fluxes.
140     #undef ALLOW_HFLUX_CONTROL
141     #undef ALLOW_SFLUX_CONTROL
142     #undef ALLOW_USTRESS_CONTROL
143     #undef ALLOW_VSTRESS_CONTROL
144    
145     C >>> Atmospheric state.
146     #define ALLOW_ATEMP_CONTROL
147     #define ALLOW_AQH_CONTROL
148     #define ALLOW_PRECIP_CONTROL
149     #define ALLOW_SNOWPRECIP_CONTROL
150     #define ALLOW_SWDOWN_CONTROL
151     #define ALLOW_LWDOWN_CONTROL
152     #define ALLOW_UWIND_CONTROL
153     #define ALLOW_VWIND_CONTROL
154     #undef ALLOW_EVAP_CONTROL
155     #define ALLOW_APRESSURE_CONTROL
156     #undef ALLOW_RUNOFF_CONTROL
157    
158     C >>> Radiation
159     #undef ALLOW_SWFLUX_CONTROL
160     #undef ALLOW_LWFLUX_CONTROL
161    
162 heimbach 1.2 C >>> seaice init. conditions
163     #define ALLOW_SIAREA_CONTROL
164     #define ALLOW_SIHEFF_CONTROL
165     #undef ALLOW_SIHSNOW_CONTROL
166    
167 heimbach 1.1 C >>> Open boundaries
168     c >>> Make sure that ALLOW_OBCS is defined
169     #undef ALLOW_OBCSN_CONTROL
170     #undef ALLOW_OBCSS_CONTROL
171     #undef ALLOW_OBCSW_CONTROL
172     #undef ALLOW_OBCSE_CONTROL
173     #if (defined (ALLOW_OBCSN_CONTROL) || \
174     defined (ALLOW_OBCSS_CONTROL) || \
175     defined (ALLOW_OBCSW_CONTROL) || \
176     defined (ALLOW_OBCSE_CONTROL))
177     # define ALLOW_OBCS_CONTROL
178     #endif
179    
180     C ********************************************************************
181     C *** External forcing Package ***
182     C ********************************************************************
183 jmc 1.5 C
184 heimbach 1.1 C o Include/exclude the external forcing package. To use this package,
185     C you have to include the calendar tool as well. KPP can be switched
186     C on or off. The implementation automatically takes care of this.
187     #define INCLUDE_EXTERNAL_FORCING_PACKAGE
188    
189     C Do more printout for the protocol file than usual.
190     #undef EXF_VERBOSE
191    
192     C Bulk formulae related flags.
193 heimbach 1.3 #undef ALLOW_BULK_LARGYEAG04
194 heimbach 1.1 #define ALLOW_ATM_TEMP
195     #define ALLOW_ATM_WIND
196     #define ALLOW_BULKFORMULAE
197     #define ALLOW_DOWNWARD_RADIATION
198     #define ALLOW_RUNOFF
199     #undef EXF_READ_EVAP
200    
201     C Relaxation to monthly climatologies.
202     #define ALLOW_CLIMSST_RELAXATION
203     #define ALLOW_CLIMSSS_RELAXATION

  ViewVC Help
Powered by ViewVC 1.1.22