/[MITgcm]/MITgcm/verification/global_ocean.cs32x15/code_ad/ECCO_CPPOPTIONS.h
ViewVC logotype

Annotation of /MITgcm/verification/global_ocean.cs32x15/code_ad/ECCO_CPPOPTIONS.h

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


Revision 1.13 - (hide annotations) (download)
Tue Mar 7 18:02:38 2017 UTC (7 years, 3 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, HEAD
Changes since 1.12: +15 -12 lines
File MIME type: text/plain
turn off EXF_INTERP_USE_DYNALLOC (not used anyway)

1 jmc 1.13 C $Header: /u/gcmpack/MITgcm/verification/global_ocean.cs32x15/code_ad/ECCO_CPPOPTIONS.h,v 1.12 2015/12/28 17:03:26 gforget Exp $
2 heimbach 1.1 C $Name: $
3    
4 jmc 1.8 #ifndef ECCO_CPPOPTIONS_H
5     #define ECCO_CPPOPTIONS_H
6    
7     C-- Collect here, in a single option-file, options to control which optional
8     C features to compile in packages AUTODIFF, COST, CTRL, ECCO, CAL and EXF.
9     C If used, this option-file needs to be directly included in CPP_OPTIONS.h
10     C Although this method, inherited from ECCO setup, has been traditionally
11     C used for all adjoint built, work is in progess to allow to use the
12     C standard metod (each of the above pkg get its own options from its
13     C specific option-file) also for adjoint built.
14 heimbach 1.1
15     C ********************************************************************
16     C *** Adjoint Support Package ***
17     C ********************************************************************
18    
19 gforget 1.10 C allow use of legacy ecco/ctrl codes
20     #define ECCO_CTRL_DEPRECATED
21    
22 gforget 1.12 C let autodiff_init_varia reset variables to 0
23     #define ALLOW_AUTODIFF_INIT_OLD
24    
25 heimbach 1.1 C o Include/exclude code in order to be able to automatically
26     C differentiate the MITgcmUV by using the Tangent Linear and
27     C Adjoint Model Compiler (TAMC).
28 jmc 1.8
29 heimbach 1.1 #define ALLOW_AUTODIFF_TAMC
30     C >>> Checkpointing as handled by TAMC
31     #define ALLOW_TAMC_CHECKPOINTING
32 jmc 1.8
33 heimbach 1.1 C >>> Extract adjoint state
34 heimbach 1.2 #define ALLOW_AUTODIFF_MONITOR
35 jmc 1.8
36 heimbach 1.1 C >>> DO 2-level checkpointing instead of 3-level
37     #undef AUTODIFF_2_LEVEL_CHECKPOINT
38 jmc 1.8
39 heimbach 1.1 C o use divided adjoint to split adjoint computations
40     #undef ALLOW_DIVIDED_ADJOINT
41    
42 gforget 1.5 #define ALLOW_AUTODIFF_WHTAPEIO
43 gforget 1.11 #define AUTODIFF_USE_MDSFINDUNITS
44 gforget 1.5 #define ALLOW_PACKUNPACK_METHOD2
45 gforget 1.6 #define AUTODIFF_USE_OLDSTORE_3D
46     #define AUTODIFF_USE_OLDSTORE_2D
47 gforget 1.5
48 heimbach 1.1 C ********************************************************************
49 jmc 1.8 C *** Calendar Package ***
50 heimbach 1.1 C ********************************************************************
51 jmc 1.8
52 heimbach 1.1 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 jmc 1.8
61 heimbach 1.1 C >>> Cost function contributions
62     #define ALLOW_COST_TEST
63     #undef ALLOW_COST_TRACER
64     #undef ALLOW_COST_ATLANTIC_HEAT
65     #define ALLOW_COST_TSQUARED
66    
67     C ********************************************************************
68     C *** Control vector Package ***
69     C ********************************************************************
70 jmc 1.8
71 heimbach 1.1 #define EXCLUDE_CTRL_PACK
72     #undef ALLOW_NONDIMENSIONAL_CONTROL_IO
73 jmc 1.8
74 heimbach 1.1 C >>> Initial values.
75     #define ALLOW_THETA0_CONTROL
76     #define ALLOW_SALT0_CONTROL
77     #define ALLOW_TR10_CONTROL
78     #define ALLOW_TAUU0_CONTROL
79     #define ALLOW_TAUV0_CONTROL
80     #define ALLOW_SFLUX0_CONTROL
81     #define ALLOW_HFLUX0_CONTROL
82     #undef ALLOW_SSS0_CONTROL
83     #undef ALLOW_SST0_CONTROL
84     #define ALLOW_DIFFKR_CONTROL
85     #undef ALLOW_KAPGM_CONTROL
86    
87     C ********************************************************************
88     C *** External forcing Package ***
89     C ********************************************************************
90    
91     C Bulk formulae related flags.
92 jmc 1.13 #define ALLOW_ATM_TEMP
93     #undef ALLOW_ATM_WIND
94     #define ALLOW_DOWNWARD_RADIATION
95     #ifdef ALLOW_ATM_TEMP
96 heimbach 1.1 # define ALLOW_BULKFORMULAE
97 mlosch 1.4 # undef ALLOW_BULK_LARGEYEAGER04
98 heimbach 1.1 #endif
99    
100 jmc 1.13 C- Other forcing fields
101     #define ALLOW_RUNOFF
102     #undef ALLOW_RUNOFTEMP
103     #undef ALLOW_SALTFLX
104    
105 jmc 1.7 C Use ocean_emissivity*lwdwon in lwFlux. This flag should be define
106     C unless to reproduce old results (obtained with inconsistent old code)
107     #ifdef ALLOW_DOWNWARD_RADIATION
108     # define EXF_LWDOWN_WITH_EMISSIVITY
109     #endif
110    
111 heimbach 1.1 C Relaxation to monthly climatologies.
112     #define ALLOW_CLIMSST_RELAXATION
113     #define ALLOW_CLIMSSS_RELAXATION
114    
115     C Use spatial interpolation to interpolate
116     C forcing files from input grid to model grid.
117     #undef USE_EXF_INTERPOLATION
118    
119 jmc 1.13 #undef EXF_INTERP_USE_DYNALLOC
120 heimbach 1.1 #if ( defined (EXF_INTERP_USE_DYNALLOC) & defined (USING_THREADS) )
121     # define EXF_IREAD_USE_GLOBAL_POINTER
122     #endif
123    
124     C >>> No Open boundaries
125 jmc 1.13 #undef ALLOW_OBCSN_CONTROL
126     #undef ALLOW_OBCSS_CONTROL
127     #undef ALLOW_OBCSW_CONTROL
128     #undef ALLOW_OBCSE_CONTROL
129 heimbach 1.1
130 jmc 1.8 C ********************************************************************
131     #endif /* ECCO_CPPOPTIONS_H */

  ViewVC Help
Powered by ViewVC 1.1.22