/[MITgcm]/MITgcm_contrib/verification_other/global_oce_cs32/code/ECCO_CPPOPTIONS.h
ViewVC logotype

Contents of /MITgcm_contrib/verification_other/global_oce_cs32/code/ECCO_CPPOPTIONS.h

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


Revision 1.3 - (show annotations) (download)
Wed Oct 3 20:14:03 2012 UTC (14 years, 1 month ago) by gforget
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +1 -1 lines
File MIME type: text/plain
FILE REMOVED
- from cs32 centric to llc90 centric : move shared code files to llc90.

1 C $Header: /u/gcmpack/MITgcm_contrib/gael/verification/global_oce_cs32/code/ECCO_CPPOPTIONS.h,v 1.2 2012/10/02 13:43:14 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
62
63 #ifdef ALLOW_COST
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 #define ALLOW_USTRESS_COST_CONTRIBUTION
79 #define 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 # undef ALLOW_PSBAR_MEAN
126 #define ALLOW_GENCOST_SSTV4
127 #define ALLOW_GENCOST_SSTV4_OUTPUT
128
129 #define ALLOW_GENCOST_SEAICE
130
131 C >>> User Cost Function Terms.
132 #define ALLOW_USERCOST_CONTRIBUTION
133 # undef ALLOW_USERCOST_TSUV_CONTRIBUTION
134 # undef ALLOW_USERCOST_TSdrift_CONTRIBUTION
135
136 C >>> In-Situ Profiles.
137 #define ALLOW_PROFILES_CONTRIBUTION
138
139 C >>> GRACE Bottom Pressure.
140 #define ALLOW_BP_COST_CONTRIBUTION
141 #define ALLOW_BP_COST_OUTPUT
142
143 C >>> Surface Observations.
144 # undef ALLOW_DRIFTER_COST_CONTRIBUTION
145 #define ALLOW_SST_COST_CONTRIBUTION
146 #define ALLOW_TMI_SST_COST_CONTRIBUTION
147 #define ALLOW_DAILYSST_COST_CONTRIBUTION
148 # undef ALLOW_SSS_COST_CONTRIBUTION
149 # undef ALLOW_SEAICE_COST_SMR_AREA
150 #define ALLOW_DAILYSCAT_COST_CONTRIBUTION
151
152 C >>> Sea Surface Height Observation/Estimates.
153 #define ALLOW_EGM96_ERROR_DIAG
154 #define ALLOW_SSH_MEAN_COST_CONTRIBUTION
155 #define ALLOW_SSH_TPANOM_COST_CONTRIBUTION
156 #define ALLOW_SSH_ERSANOM_COST_CONTRIBUTION
157 #define ALLOW_SSH_GFOANOM_COST_CONTRIBUTION
158 # if (defined (ALLOW_SSH_MEAN_COST_CONTRIBUTION) || \
159 defined (ALLOW_SSH_TPANOM_COST_CONTRIBUTION) || \
160 defined (ALLOW_SSH_ERSANOM_COST_CONTRIBUTION))
161 # define ALLOW_SSH_COST_CONTRIBUTION
162 # endif
163 # undef ALLOW_NEW_SSH_COST
164 #define ALLOW_SSH_TOT
165 # ifndef ALLOW_EGM96_ERROR_DIAG
166 # undef ALLOW_SSH_TOT
167 # endif
168
169 c
170 #endif /* ALLOW_COST */
171
172
173 C ********************************************************************
174 C *** Control vector Package ***
175 C ********************************************************************
176 C
177 # undef CTRL_SET_OLD_MAXCVARS_30
178 #define CTRL_SET_PREC_32
179 #define ALLOW_NONDIMENSIONAL_CONTROL_IO
180 # undef CTRL_UNPACK_PRECISE
181 # undef CTRL_PACK_PRECISE
182
183 C >>> Spatial Correlation Operator.
184 #define ALLOW_SMOOTH_CORREL3D
185 #define ALLOW_SMOOTH3D
186 #define ALLOW_SMOOTH_CORREL2D
187 #define ALLOW_SMOOTH2D
188 #define ALLOW_ADCTRLBOUND
189
190 C >>> Initial values.
191 #define ALLOW_THETA0_CONTROL
192 #define ALLOW_SALT0_CONTROL
193
194 C >>> Surface fluxes.
195 # undef ALLOW_HFLUX_CONTROL
196 # undef ALLOW_SFLUX_CONTROL
197 #define ALLOW_USTRESS_CONTROL
198 #define ALLOW_VSTRESS_CONTROL
199
200 C >>> Atmospheric state and radiation.
201 #define ALLOW_ATEMP_CONTROL
202 #define ALLOW_AQH_CONTROL
203 #define ALLOW_UWIND_CONTROL
204 #define ALLOW_VWIND_CONTROL
205 #define ALLOW_PRECIP_CONTROL
206 # undef ALLOW_SWFLUX_CONTROL
207 #define ALLOW_SWDOWN_CONTROL
208 # undef ALLOW_LWFLUX_CONTROL
209 #define ALLOW_LWDOWN_CONTROL
210
211 C >>> Ocean Parameters.
212 # undef ALLOW_EDDYPSI_CONTROL
213 #define ALLOW_DIFFKR_CONTROL
214 #define ALLOW_KAPGM_CONTROL
215 # undef ALLOW_BOTTOMDRAG_CONTROL
216 #define ALLOW_KAPREDI_CONTROL
217
218 C >>> rotation of xx for wind
219 #define ALLOW_ROTATE_UV_CONTROLS
220
221
222
223 C Specific relaxation strategy
224 # undef ALLOW_RBCS_SPIN
225
226 #endif /* ALLOW_ECCO */
227 #endif /* ECCO_CPPOPTIONS_H */
228

  ViewVC Help
Powered by ViewVC 1.1.22