/[MITgcm]/MITgcm_contrib/llc_hires/llc_270/code_ad/ECCO_CPPOPTIONS.h
ViewVC logotype

Annotation of /MITgcm_contrib/llc_hires/llc_270/code_ad/ECCO_CPPOPTIONS.h

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


Revision 1.2 - (hide annotations) (download)
Thu Jun 19 21:58:16 2014 UTC (11 years, 1 month ago) by zhc
Branch: MAIN
Changes since 1.1: +0 -0 lines
File MIME type: text/plain
UPDATE

1 zhc 1.1 C $Header: /u/gcmpack/MITgcm_contrib/gael/verification/global_oce_llc90/code/ECCO_CPPOPTIONS.h_itXX,v 1.3 2014/02/05 15:22:50 gforget Exp $
2     C $Name: $
3    
4     #ifndef ECCO_CPPOPTIONS_H
5     #define ECCO_CPPOPTIONS_H
6     #include "AD_CONFIG.h"
7     #include "PACKAGES_CONFIG.h"
8     #include "CPP_OPTIONS.h"
9    
10     #ifdef ALLOW_ECCO
11    
12     C CPP flags controlling which code is included in the files that
13     C will be compiled.
14     C
15     C ********************************************************************
16     C *** ECCO Package ***
17     C ********************************************************************
18     C
19     C >>> Do a long protocol.
20     #undef ECCO_VERBOSE
21     C >>> use model/src/forward_step.F
22     #define ALLOW_ECCO_EVOLUTION
23    
24     C ********************************************************************
25     C *** Adjoint Support Package ***
26     C ********************************************************************
27    
28     #define ALLOW_AUTODIFF_TAMC
29     C
30     C >>> Checkpointing as handled by TAMC
31     #define ALLOW_TAMC_CHECKPOINTING
32     # undef AUTODIFF_2_LEVEL_CHECKPOINT
33     C
34     C >>> Extract adjoint state
35     #define ALLOW_AUTODIFF_MONITOR
36     C
37     C o use divided adjoint to split adjoint computations
38     #undef ALLOW_DIVIDED_ADJOINT
39     #undef ALLOW_DIVIDED_ADJOINT_MPI
40    
41     #define ALLOW_AUTODIFF_WHTAPEIO
42     #define ALLOW_PACKUNPACK_METHOD2
43     #define AUTODIFF_USE_OLDSTORE_2D
44     #define AUTODIFF_USE_OLDSTORE_3D
45     #define EXCLUDE_WHIO_GLOBUFF_2D
46     #define ALLOW_INIT_WHTAPEIO
47    
48     C ********************************************************************
49     C *** Calender Package ***
50     C ********************************************************************
51     C
52     C CPP flags controlling which code is included in the files that
53     C will be compiled.
54    
55     CPH >>>>>> THERE ARE NO MORE CAL OPTIONS TO BE SET <<<<<<
56    
57     C ********************************************************************
58     C *** Cost function Package ***
59     c ********************************************************************
60     C
61     #define ALLOW_COST_FULL
62    
63     #ifdef ALLOW_COST_FULL
64    
65     C >>> Cost function contributions
66     #define ALLOW_ECCO_OLD_FC_PRINT
67    
68     C >>> Initial values.
69     #define ALLOW_THETA0_COST_CONTRIBUTION
70     #define ALLOW_SALT0_COST_CONTRIBUTION
71     c so that the uncertainty fieldss are read in regardless:
72     #define ALLOW_WTHETALEV
73     #define ALLOW_WSALTLEV
74    
75     C >>> Surface fluxes.
76     # undef ALLOW_HFLUX_COST_CONTRIBUTION
77     # undef ALLOW_SFLUX_COST_CONTRIBUTION
78     # undef ALLOW_USTRESS_COST_CONTRIBUTION
79     # undef ALLOW_VSTRESS_COST_CONTRIBUTION
80    
81     C >>> Atmospheric state and radiation.
82     #define ALLOW_ATEMP_COST_CONTRIBUTION
83     #define ALLOW_AQH_COST_CONTRIBUTION
84     #define ALLOW_UWIND_COST_CONTRIBUTION
85     #define ALLOW_VWIND_COST_CONTRIBUTION
86     #define ALLOW_PRECIP_COST_CONTRIBUTION
87     # undef ALLOW_SWFLUX_COST_CONTRIBUTION
88     #define ALLOW_SWDOWN_COST_CONTRIBUTION
89     # undef ALLOW_LWFLUX_COST_CONTRIBUTION
90     #define ALLOW_LWDOWN_COST_CONTRIBUTION
91    
92     C >>> Ocean Parameters.
93     # undef ALLOW_EDDYPSI_COST_CONTRIBUTION
94     #define ALLOW_DIFFKR_COST_CONTRIBUTION
95     #define ALLOW_KAPGM_COST_CONTRIBUTION
96     # undef ALLOW_BOTTOMDRAG_COST_CONTRIBUTION
97     #define ALLOW_KAPREDI_COST_CONTRIBUTION
98    
99     C >>> Ocean Hydro. Atlas.
100     # undef GENERIC_BAR_MONTH
101     #define ALLOW_THETA_COST_CONTRIBUTION
102     #define ALLOW_SALT_COST_CONTRIBUTION
103    
104     C >>> ALLOW_GENCOST_CONTRIBUTION: interactive way to add basic 2D cost function terms.
105     C > In data.ecco, this requires the specification of data file (name, frequency,
106     C etc.), bar file name for corresp. model average, standard error file name, etc.
107     C > In addition, adding such cost terms requires editing ecco_cost.h to increase
108     C NGENCOST, and editing cost_gencost_customize.F to implement the actual
109     C model average (i.e. the bar file content).
110     #define ALLOW_GENCOST_CONTRIBUTION
111     C >>> free form version of GENCOST: allows one to use otherwise defined elements (e.g.
112     C psbar and and topex data) while taking advantage of the cost function/namelist slots
113     C that can be made available using ALLOW_GENCOST_CONTRIBUTION. To this end
114     C ALLOW_GENCOST_CONTRIBUTION simply switches off tests that check whether all of the
115     C gencost elements (e.g. gencost_barfile and gencost_datafile) are specified in data.ecco.
116     C > While this option increases flexibility within the gencost framework, it implies more room
117     C for error, so it should be used cautiously, and with good knowledge of the rest of pkg/ecco.
118     C > It requires providing a specific cost function routine, and editing cost_gencost_all.F accordingly.
119     #define ALLOW_GENCOST_FREEFORM
120    
121     #define COST_GENERIC_ASSUME_CYCLIC
122    
123     #define ALLOW_GENCOST_SSHV4
124     #define ALLOW_GENCOST_SSHV4_OUTPUT
125     #define ALLOW_SHALLOW_ALTIMETRY
126     #define ALLOW_HIGHLAT_ALTIMETRY
127     #define ALLOW_PSBAR_MEAN
128     #define ALLOW_PSBAR_STERIC
129     # undef ALLOW_PSBAR_GENPRECIP
130     # undef ALLOW_GENTIM2D_CONTROL
131    
132     # undef ALLOW_GENCOST_SSTV4
133     # undef ALLOW_GENCOST_SSTV4_OUTPUT
134    
135     #define ALLOW_SEAICE_COST_CONTRIBUTION
136     #define ALLOW_GENCOST_SEAICEV4
137    
138     C >>> User Cost Function Terms.
139     #define ALLOW_USERCOST_CONTRIBUTION
140     # undef ALLOW_USERCOST_TSUV_CONTRIBUTION
141     # undef ALLOW_USERCOST_TSdrift_CONTRIBUTION
142    
143     C >>> In-Situ Profiles.
144     #define ALLOW_PROFILES_CONTRIBUTION
145    
146     C >>> GRACE Bottom Pressure.
147     #define ALLOW_BP_COST_CONTRIBUTION
148     #define ALLOW_BP_COST_OUTPUT
149    
150     C >>> Surface Observations.
151     # undef ALLOW_DRIFTER_COST_CONTRIBUTION
152     #define ALLOW_SST_COST_CONTRIBUTION
153     #define ALLOW_TMI_SST_COST_CONTRIBUTION
154     #define ALLOW_DAILYSST_COST_CONTRIBUTION
155     # undef ALLOW_SSS_COST_CONTRIBUTION
156     # undef ALLOW_SEAICE_COST_SMR_AREA
157     #define ALLOW_DAILYSCAT_COST_CONTRIBUTION
158    
159     C >>> Sea Surface Height Observation/Estimates.
160     #define ALLOW_EGM96_ERROR_DIAG
161     #define ALLOW_SSH_MEAN_COST_CONTRIBUTION
162     #define ALLOW_SSH_TPANOM_COST_CONTRIBUTION
163     #define ALLOW_SSH_ERSANOM_COST_CONTRIBUTION
164     #define ALLOW_SSH_GFOANOM_COST_CONTRIBUTION
165     # if (defined (ALLOW_SSH_MEAN_COST_CONTRIBUTION) || \
166     defined (ALLOW_SSH_TPANOM_COST_CONTRIBUTION) || \
167     defined (ALLOW_SSH_ERSANOM_COST_CONTRIBUTION))
168     # define ALLOW_SSH_COST_CONTRIBUTION
169     # endif
170     # undef ALLOW_NEW_SSH_COST
171     #define ALLOW_SSH_TOT
172     # ifndef ALLOW_EGM96_ERROR_DIAG
173     # undef ALLOW_SSH_TOT
174     # endif
175    
176     c
177     #endif /* ALLOW_COST_FULL */
178    
179    
180     C ********************************************************************
181     C *** Control vector Package ***
182     C ********************************************************************
183     C
184     #define EXCLUDE_CTRL_PACK
185     # undef CTRL_SET_OLD_MAXCVARS_30
186     #define CTRL_SET_PREC_32
187     # undef ALLOW_NONDIMENSIONAL_CONTROL_IO
188     # undef CTRL_UNPACK_PRECISE
189     # undef CTRL_PACK_PRECISE
190    
191     C >>> Spatial Correlation Operator.
192     #define ALLOW_SMOOTH_CORREL3D
193     #define ALLOW_SMOOTH3D
194     #define ALLOW_SMOOTH_CORREL2D
195     #define ALLOW_SMOOTH2D
196     #define ALLOW_ADCTRLBOUND
197    
198     C >>> Initial values.
199     #define ALLOW_THETA0_CONTROL
200     #define ALLOW_SALT0_CONTROL
201    
202     C >>> Surface fluxes.
203     # undef ALLOW_HFLUX_CONTROL
204     # undef ALLOW_SFLUX_CONTROL
205     # undef ALLOW_USTRESS_CONTROL
206     # undef ALLOW_VSTRESS_CONTROL
207    
208     C >>> Atmospheric state and radiation.
209     #define ALLOW_ATEMP_CONTROL
210     #define ALLOW_AQH_CONTROL
211     #define ALLOW_UWIND_CONTROL
212     #define ALLOW_VWIND_CONTROL
213     #define ALLOW_PRECIP_CONTROL
214     # undef ALLOW_SWFLUX_CONTROL
215     #define ALLOW_SWDOWN_CONTROL
216     # undef ALLOW_LWFLUX_CONTROL
217     #define ALLOW_LWDOWN_CONTROL
218    
219     C >>> Ocean Parameters.
220     # undef ALLOW_EDDYPSI_CONTROL
221     #define ALLOW_DIFFKR_CONTROL
222     #define ALLOW_KAPGM_CONTROL
223     # undef ALLOW_BOTTOMDRAG_CONTROL
224     #define ALLOW_KAPREDI_CONTROL
225    
226     C >>> rotation of xx for wind
227     #define ALLOW_ROTATE_UV_CONTROLS
228    
229    
230    
231     C Specific relaxation strategy
232     # undef ALLOW_RBCS_SPIN
233    
234     #endif /* ALLOW_ECCO */
235     #endif /* ECCO_CPPOPTIONS_H */
236    

  ViewVC Help
Powered by ViewVC 1.1.22