/[MITgcm]/MITgcm_contrib/dgoldberg/depth_control_no_nsa/code/ECCO_CPPOPTIONS.h
ViewVC logotype

Annotation of /MITgcm_contrib/dgoldberg/depth_control_no_nsa/code/ECCO_CPPOPTIONS.h

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


Revision 1.1 - (hide annotations) (download)
Thu Dec 7 23:21:12 2017 UTC (7 years, 7 months ago) by dgoldberg
Branch: MAIN
CVS Tags: HEAD
File MIME type: text/plain
test case for depth control w/out cg2d_nsa

1 dgoldberg 1.1 C $Header: /u/gcmpack/MITgcm/verification/global_ocean.cs32x15/code_ad/ECCO_CPPOPTIONS.h,v 1.4 2010/05/19 08:33:34 mlosch Exp $
2     C $Name: $
3    
4     C
5     C CPP flags controlling which code is included in the files that
6     C will be compiled.
7     #ifndef ECCO_CPPOPTIONS_H
8     #define ECCO_CPPOPTIONS_H
9    
10     C-- Collect here, in a single option-file, options to control which optional
11     C features to compile in packages AUTODIFF, COST, CTRL, ECCO, CAL and EXF.
12     C If used, this option-file needs to be directly included in CPP_OPTIONS.h
13     C Although this method, inherited from ECCO setup, has been traditionally
14     C used for all adjoint built, work is in progess to allow to use the
15     C standard metod (each of the above pkg get its own options from its
16     C specific option-file) also for adjoint built.
17    
18     C ********************************************************************
19     C *** ECCO Package ***
20     C ********************************************************************
21    
22     C allow use of legacy ecco/ctrl codes
23     #define ECCO_CTRL_DEPRECATED
24    
25     #undef ALLOW_ECCO_FORWARD_RUN
26     #undef ALLOW_ECCO_DIAGNOSTICS_RUN
27     #undef ALLOW_ECCO_OPTIMIZATION
28    
29     C >>> Do a long protocol.
30     #undef ECCO_VERBOSE
31    
32    
33     C ********************************************************************
34     C *** Adjoint Support Package ***
35     C ********************************************************************
36    
37     C o Include/exclude code in order to be able to automatically
38     C differentiate the MITgcmUV by using the Tangent Linear and
39     C Adjoint Model Compiler (TAMC).
40     C
41     #define ALLOW_AUTODIFF_TAMC
42     C >>> Checkpointing as handled by TAMC
43     #define ALLOW_TAMC_CHECKPOINTING
44     C
45     C >>> Extract adjoint state
46     #define ALLOW_AUTODIFF_MONITOR
47     #define ALLOW_AUTODIFF_MONITOR_DIAG
48     C
49     C >>> DO 2-level checkpointing instead of 3-level
50     #undef AUTODIFF_2_LEVEL_CHECKPOINT
51     C
52     C o use divided adjoint to split adjoint computations
53     #undef ALLOW_DIVIDED_ADJOINT
54     #undef ALLOW_DIVIDED_ADJOINT_MPI
55    
56     C ********************************************************************
57     C *** Calender Package ***
58     C ********************************************************************
59     C
60     C CPP flags controlling which code is included in the files that
61     C will be compiled.
62    
63     CPH >>>>>> THERE ARE NO MORE CAL OPTIONS TO BE SET <<<<<<
64    
65     C ********************************************************************
66     C *** Cost function Package ***
67     C ********************************************************************
68     C
69     C >>> Cost function contributions
70     #define ALLOW_COST
71     #undef ALLOW_COST_TEST
72     #undef ALLOW_COST_TRACER
73     #undef ALLOW_COST_ATLANTIC_HEAT
74     #undef ALLOW_COST_TSQUARED
75     #define ALLOW_COST_SHELFICE
76     Cts getting 0 cost function, so adding these ...
77     C to allow SHELFICE_COST_SHIFWFLX() to run
78     CC#define ALLOW_SHIFWFLX_CONTROL
79     CC#define ALLOW_SHIFWFLX_COST_CONTROBITION
80    
81     C ********************************************************************
82     C *** Control vector Package ***
83     C ********************************************************************
84     C
85     #define EXCLUDE_CTRL_PACK
86     #undef ALLOW_NONDIMENSIONAL_CONTROL_IO
87     C
88     C >>> Initial values.
89     #define ALLOW_THETA0_CONTROL
90     #define ALLOW_SALT0_CONTROL
91     c#define ALLOW_TR10_CONTROL
92     c#define ALLOW_TAUU0_CONTROL
93     c#define ALLOW_TAUV0_CONTROL
94     c#define ALLOW_SFLUX0_CONTROL
95     c#define ALLOW_HFLUX0_CONTROL
96     c#undef ALLOW_SSS0_CONTROL
97     c#undef ALLOW_SST0_CONTROL
98     #undef ALLOW_DIFFKR_CONTROL
99     c#undef ALLOW_KAPGM_CONTROL
100    
101     C o Topography in control vector
102     #define ALLOW_DEPTH_CONTROL
103     #ifdef ALLOW_DEPTH_CONTROL
104     !# define ALLOW_CG2D_NSA
105     # define ALLOW_DIFFERENTIATE_CG2D_MATRIX
106     # define USE_SMOOTH_MIN
107     #endif /* ALLOW_DEPTH_CONTROL */
108    
109     C
110     #ifdef ALLOW_OBCS
111     #undef ALLOW_OBCSN_CONTROL
112     #undef ALLOW_OBCSS_CONTROL
113     #undef ALLOW_OBCSW_CONTROL
114     #undef ALLOW_OBCSE_CONTROL
115     #if (defined (ALLOW_OBCSN_CONTROL) || \
116     defined (ALLOW_OBCSS_CONTROL) || \
117     defined (ALLOW_OBCSW_CONTROL) || \
118     defined (ALLOW_OBCSE_CONTROL))
119     # define ALLOW_OBCS_CONTROL
120     #endif
121     #endif /* ALLOW_OBCS */
122    
123     #endif /* ECCO_CPPOPTIONS_H */

  ViewVC Help
Powered by ViewVC 1.1.22