/[MITgcm]/MITgcm/verification/global2x2_tot/code/ECCO_CPPOPTIONS.h
ViewVC logotype

Diff of /MITgcm/verification/global2x2_tot/code/ECCO_CPPOPTIONS.h

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

revision 1.1 by heimbach, Thu Apr 4 12:05:47 2002 UTC revision 1.1.2.1 by heimbach, Thu Apr 4 12:05:47 2002 UTC
# Line 0  Line 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    #define ALLOW_SNAPSHOTS
12    
13    #undef  ALLOW_ECCO_FORWARD_RUN
14    #undef  ALLOW_ECCO_DIAGNOSTICS_RUN
15    #undef  ALLOW_ECCO_ADJOINT_RUN
16    #define  ALLOW_GRADIENT_CHECK
17    #define  ALLOW_ECCO_OPTIMIZATION
18    
19    C       >>> Do a long protocol.
20    #undef ECCO_VERBOSE
21    
22    C       >>> Just do a "dry" run ( useful for testing ).
23    #undef  ALLOW_NO_DYNAMICS
24    C       >>> Use the Yearly-Monthly-Daily-Stepping call tree.
25    #undef  ALLOW_YMDS_TREE
26    C       >>> Do not call stepping
27    #define ALLOW_STEPPING_CALL
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       >>> Checkpointing as handled by TAMC
40    #define ALLOW_TAMC_CHECKPOINTING
41    C
42    C       >>> Extract adjoint state
43    #undef ALLOW_AUTODIFF_MONITOR
44    C
45    C o use divided adjoint to split adjoint computations
46    #undef ALLOW_DIVIDED_ADJOINT
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    C
55    
56    C o Include the calendar tool.
57    #define ALLOW_CALENDAR
58    #define ALLOW_CAL_NENDITER
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    # define  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    # define ALLOW_HFLUX_COST_CONTRIBUTION
77    # define ALLOW_SFLUX_COST_CONTRIBUTION
78    # define ALLOW_MEAN_HFLUX_COST_CONTRIBUTION
79    # define ALLOW_MEAN_SFLUX_COST_CONTRIBUTION
80    # define ALLOW_USTRESS_COST_CONTRIBUTION
81    # define ALLOW_VSTRESS_COST_CONTRIBUTION
82    # define ALLOW_STRESS_MEAN_COST_CONTRIBUTION
83    
84    # undef ALLOW_ATEMP_COST_CONTRIBUTION
85    # undef ALLOW_AQH_COST_CONTRIBUTION
86    # undef ALLOW_UWIND_COST_CONTRIBUTION
87    # undef ALLOW_VWIND_COST_CONTRIBUTION
88    
89    # define ALLOW_THETA_COST_CONTRIBUTION
90    # define ALLOW_SALT_COST_CONTRIBUTION
91    # define ALLOW_THETA0_COST_CONTRIBUTION
92    # define ALLOW_SALT0_COST_CONTRIBUTION
93    # define ALLOW_SST_COST_CONTRIBUTION
94    # define ALLOW_SSS_COST_CONTRIBUTION
95    
96    # define ALLOW_SSH_MEAN_COST_CONTRIBUTION
97    # define ALLOW_SSH_TPANOM_COST_CONTRIBUTION
98    # define ALLOW_SSH_ERSANOM_COST_CONTRIBUTION
99    # if (defined (ALLOW_SSH_MEAN_COST_CONTRIBUTION) || \
100          defined (ALLOW_SSH_TPANOM_COST_CONTRIBUTION) || \
101          defined (ALLOW_SSH_ERSANOM_COST_CONTRIBUTION))
102    #  define ALLOW_SSH_COST_CONTRIBUTION
103    # endif
104    
105    # define ALLOW_XBT_COST_CONTRIBUTION
106    # define ALLOW_CTDT_COST_CONTRIBUTION
107    # define ALLOW_CTDS_COST_CONTRIBUTION
108    # undef ALLOW_DRIFTER_COST_CONTRIBUTION
109    # undef ALLOW_DRIFT_COST_CONTRIBUTION
110    # undef ALLOW_DRIFTW_COST_CONTRIBUTION
111    C
112    # define ALLOW_ARGO_THETA_COST_CONTRIBUTION
113    # define ALLOW_ARGO_SALT_COST_CONTRIBUTION
114    C
115    # undef ALLOW_COST_ATLANTIC
116    c
117    c       >>> Open boundaries
118    c       >>> Make sure that ALLOW_OBCS is defined!
119    # undef ALLOW_OBCSN_COST_CONTRIBUTION
120    # undef ALLOW_OBCSS_COST_CONTRIBUTION
121    # undef ALLOW_OBCSW_COST_CONTRIBUTION
122    # undef ALLOW_OBCSE_COST_CONTRIBUTION
123    # if (defined (ALLOW_OBCSN_COST_CONTRIBUTION) || \
124          defined (ALLOW_OBCSS_COST_CONTRIBUTION) || \
125          defined (ALLOW_OBCSW_COST_CONTRIBUTION) || \
126          defined (ALLOW_OBCSE_COST_CONTRIBUTION))
127    #  define ALLOW_OBCS_COST_CONTRIBUTION
128    # endif
129    
130    #endif /* ALLOW_COST */
131    
132    C ********************************************************************
133    C ***               Control vector Package                         ***
134    C ********************************************************************
135    C
136    #define  ALLOW_NONDIMENSIONAL_CONTROL_IO
137    
138    C       >>> Initial values.
139    #define ALLOW_THETA0_CONTROL
140    #define ALLOW_SALT0_CONTROL
141    
142    C       >>> Surface fluxes.
143    #define ALLOW_HFLUX_CONTROL
144    #define ALLOW_SFLUX_CONTROL
145    #define ALLOW_USTRESS_CONTROL
146    #define ALLOW_VSTRESS_CONTROL
147    #undef  ALLOW_SWFLUX_CONTROL
148    #undef  ALLOW_LWFLUX_CONTROL
149    
150    C       >>> Atmospheric state.
151    #undef  ALLOW_ATEMP_CONTROL
152    #undef  ALLOW_AQH_CONTROL
153    #undef  ALLOW_UWIND_CONTROL
154    #undef  ALLOW_VWIND_CONTROL
155    #undef  ALLOW_PRECIP_CONTROL
156    
157    C ********************************************************************
158    C ***             External forcing Package                         ***
159    C ********************************************************************
160    C
161    C o Include/exclude the external forcing package. To use this package,
162    C   you have to include the calendar tool as well. KPP can be switched
163    C   on or off. The implementation automatically takes care of this.
164    #define INCLUDE_EXTERNAL_FORCING_PACKAGE
165    
166    C   Do more printout for the protocol file than usual.
167    #undef EXF_VERBOSE
168    
169    C   Bulk formulae related flags.
170    #undef  ALLOW_BULKFORMULAE
171    #undef  ALLOW_ATM_TEMP
172    #undef  ALLOW_ATM_WIND
173    #define ALLOW_RUNOFF
174    
175    C   Relaxation to monthly climatologies.
176    #undef  ALLOW_CLIMTEMP_RELAXATION
177    #undef  ALLOW_CLIMSALT_RELAXATION
178    #undef  ALLOW_CLIMSST_RELAXATION
179    #undef  ALLOW_CLIMSSS_RELAXATION
180    
181    C   Relaxation to constant surface fields.
182    #undef  ALLOW_CONST_SST_RELAXATION
183    #undef  ALLOW_CONST_SSS_RELAXATION

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.1.2.1

  ViewVC Help
Powered by ViewVC 1.1.22