/[MITgcm]/MITgcm/verification/natl_box_adjoint/code_seaice/ECCO_CPPOPTIONS.h
ViewVC logotype

Diff of /MITgcm/verification/natl_box_adjoint/code_seaice/ECCO_CPPOPTIONS.h

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

revision 1.1 by dimitri, Fri Feb 14 08:19:22 2003 UTC revision 1.1.2.1 by dimitri, Fri Feb 14 08:19:22 2003 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_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
40    C       >>> Checkpointing as handled by TAMC
41    #define ALLOW_TAMC_CHECKPOINTING
42    C
43    C       >>> Extract adjoint state
44    #define ALLOW_AUTODIFF_MONITOR
45    C
46    C o use divided adjoint to split adjoint computations
47    #undef ALLOW_DIVIDED_ADJOINT
48    
49    C ********************************************************************
50    C ***                     Calendar Package                         ***
51    C ********************************************************************
52    C
53    C CPP flags controlling which code is included in the files that
54    C will be compiled.
55    C
56    
57    C o Include the calendar tool.
58    #define ALLOW_CALENDAR
59    #define ALLOW_CAL_NENDITER
60    
61    C ********************************************************************
62    C ***                Cost function Package                         ***
63    C ********************************************************************
64    C
65    #define ALLOW_COST
66    #ifdef ALLOW_COST
67    C       >>> Use the EGM-96 geoid error covariance.
68    # undef  ALLOW_EGM96_ERROR_COV
69    # undef  ALLOW_READ_EGM_DATA
70    C       >>> Use NSCAT data.
71    # undef  ALLOW_NSCAT_DATA
72    C       >>> Cost function contributions
73    
74    # undef ALLOW_HFLUX_COST_CONTRIBUTION
75    # undef ALLOW_SFLUX_COST_CONTRIBUTION
76    # undef ALLOW_USTRESS_COST_CONTRIBUTION
77    # undef ALLOW_VSTRESS_COST_CONTRIBUTION
78    
79    # define ALLOW_ATEMP_COST_CONTRIBUTION
80    # define ALLOW_AQH_COST_CONTRIBUTION
81    # define ALLOW_UWIND_COST_CONTRIBUTION
82    # define ALLOW_VWIND_COST_CONTRIBUTION
83    
84    # 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    #endif /* ALLOW_COST */
118    
119    C ********************************************************************
120    C ***               Control vector Package                         ***
121    C ********************************************************************
122    C
123    #define  ALLOW_NONDIMENSIONAL_CONTROL_IO
124    
125    C       >>> Initial values.
126    #define ALLOW_THETA0_CONTROL
127    #define ALLOW_SALT0_CONTROL
128    
129    C       >>> Surface fluxes.
130    #undef  ALLOW_HFLUX_CONTROL
131    #undef  ALLOW_SFLUX_CONTROL
132    #undef  ALLOW_USTRESS_CONTROL
133    #undef  ALLOW_VSTRESS_CONTROL
134    
135    C       >>> Atmospheric state.
136    #define  ALLOW_ATEMP_CONTROL
137    #define  ALLOW_AQH_CONTROL
138    #define  ALLOW_UWIND_CONTROL
139    #define  ALLOW_VWIND_CONTROL
140    
141    C       >>> Radiation
142    #undef  ALLOW_SWFLUX_CONTROL
143    #undef  ALLOW_LWFLUX_CONTROL
144    
145    C       >>> Open boundaries
146    c       >>> Make sure that ALLOW_OBCS is defined
147    #undef  ALLOW_OBCSN_CONTROL
148    #undef  ALLOW_OBCSS_CONTROL
149    #undef  ALLOW_OBCSW_CONTROL
150    #undef  ALLOW_OBCSE_CONTROL
151    #if (defined (ALLOW_OBCSN_CONTROL) || \
152         defined (ALLOW_OBCSS_CONTROL) || \
153         defined (ALLOW_OBCSW_CONTROL) || \
154         defined (ALLOW_OBCSE_CONTROL))
155    # define ALLOW_OBCS_CONTROL
156    #endif
157    
158    C ********************************************************************
159    C ***             External forcing Package                         ***
160    C ********************************************************************
161    C
162    C o Include/exclude the external forcing package. To use this package,
163    C   you have to include the calendar tool as well. KPP can be switched
164    C   on or off. The implementation automatically takes care of this.
165    #define INCLUDE_EXTERNAL_FORCING_PACKAGE
166    
167    C   Do more printout for the protocol file than usual.
168    #define EXF_VERBOSE
169    
170    C   Bulk formulae related flags.
171    #define  ALLOW_ATM_TEMP
172    #define  ALLOW_ATM_WIND
173    #define  ALLOW_DOWNWARD_RADIATION
174    #define  ALLOW_BULKFORMULAE
175    #define  ALLOW_RUNOFF
176    
177    C   Relaxation to monthly climatologies.
178    #define ALLOW_CLIM_CYCLIC
179    #undef  ALLOW_CLIMTEMP_RELAXATION
180    #undef  ALLOW_CLIMSALT_RELAXATION
181    #undef  ALLOW_CLIMSST_RELAXATION
182    #undef  ALLOW_CLIMSSS_RELAXATION

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

  ViewVC Help
Powered by ViewVC 1.1.22