/[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.11 - (hide annotations) (download)
Wed Jul 22 20:58:09 2015 UTC (8 years, 10 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint65r, checkpoint65p, checkpoint65q, checkpoint65n, checkpoint65o
Changes since 1.10: +2 -1 lines
File MIME type: text/plain
- define AUTODIFF_USE_MDSFINDUNITS for compatibility
  with g77 that does not allow file units beyond 99

1 gforget 1.11 C $Header: /u/gcmpack/MITgcm/verification/global_ocean.cs32x15/code_ad/ECCO_CPPOPTIONS.h,v 1.10 2014/10/16 20:09:25 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 heimbach 1.1 C o Include/exclude code in order to be able to automatically
23     C differentiate the MITgcmUV by using the Tangent Linear and
24     C Adjoint Model Compiler (TAMC).
25 jmc 1.8
26 heimbach 1.1 #define ALLOW_AUTODIFF_TAMC
27     C >>> Checkpointing as handled by TAMC
28     #define ALLOW_TAMC_CHECKPOINTING
29 jmc 1.8
30 heimbach 1.1 C >>> Extract adjoint state
31 heimbach 1.2 #define ALLOW_AUTODIFF_MONITOR
32 jmc 1.8
33 heimbach 1.1 C >>> DO 2-level checkpointing instead of 3-level
34     #undef AUTODIFF_2_LEVEL_CHECKPOINT
35 jmc 1.8
36 heimbach 1.1 C o use divided adjoint to split adjoint computations
37     #undef ALLOW_DIVIDED_ADJOINT
38    
39 gforget 1.5 #define ALLOW_AUTODIFF_WHTAPEIO
40 gforget 1.11 #define AUTODIFF_USE_MDSFINDUNITS
41 gforget 1.5 #define ALLOW_PACKUNPACK_METHOD2
42 gforget 1.6 #define AUTODIFF_USE_OLDSTORE_3D
43     #define AUTODIFF_USE_OLDSTORE_2D
44 gforget 1.5
45 heimbach 1.1 C ********************************************************************
46 jmc 1.8 C *** Calendar Package ***
47 heimbach 1.1 C ********************************************************************
48 jmc 1.8
49 heimbach 1.1 C CPP flags controlling which code is included in the files that
50     C will be compiled.
51    
52     CPH >>>>>> THERE ARE NO MORE CAL OPTIONS TO BE SET <<<<<<
53    
54     C ********************************************************************
55     C *** Cost function Package ***
56     C ********************************************************************
57 jmc 1.8
58 heimbach 1.1 C >>> Cost function contributions
59     #define ALLOW_COST_TEST
60     #undef ALLOW_COST_TRACER
61     #undef ALLOW_COST_ATLANTIC_HEAT
62     #define ALLOW_COST_TSQUARED
63    
64     C ********************************************************************
65     C *** Control vector Package ***
66     C ********************************************************************
67 jmc 1.8
68 heimbach 1.1 #define EXCLUDE_CTRL_PACK
69     #undef ALLOW_NONDIMENSIONAL_CONTROL_IO
70 jmc 1.8
71 heimbach 1.1 C >>> Initial values.
72     #define ALLOW_THETA0_CONTROL
73     #define ALLOW_SALT0_CONTROL
74     #define ALLOW_TR10_CONTROL
75     #define ALLOW_TAUU0_CONTROL
76     #define ALLOW_TAUV0_CONTROL
77     #define ALLOW_SFLUX0_CONTROL
78     #define ALLOW_HFLUX0_CONTROL
79     #undef ALLOW_SSS0_CONTROL
80     #undef ALLOW_SST0_CONTROL
81     #define ALLOW_DIFFKR_CONTROL
82     #undef ALLOW_KAPGM_CONTROL
83    
84     C ********************************************************************
85     C *** External forcing Package ***
86     C ********************************************************************
87    
88     C Bulk formulae related flags.
89     #define ALLOW_ATM_TEMP
90 mlosch 1.4 #undef ALLOW_ATM_WIND
91 heimbach 1.1 #define ALLOW_DOWNWARD_RADIATION
92     #define ALLOW_RUNOFF
93     #if (defined (ALLOW_ATM_TEMP) || \
94     defined (ALLOW_ATM_WIND))
95     # define ALLOW_BULKFORMULAE
96 mlosch 1.4 # undef ALLOW_BULK_LARGEYEAGER04
97 heimbach 1.1 #endif
98    
99 jmc 1.7 C Use ocean_emissivity*lwdwon in lwFlux. This flag should be define
100     C unless to reproduce old results (obtained with inconsistent old code)
101     #ifdef ALLOW_DOWNWARD_RADIATION
102     # define EXF_LWDOWN_WITH_EMISSIVITY
103     #endif
104    
105 heimbach 1.1 C Relaxation to monthly climatologies.
106     #define ALLOW_CLIMSST_RELAXATION
107     #define ALLOW_CLIMSSS_RELAXATION
108    
109     C Use spatial interpolation to interpolate
110     C forcing files from input grid to model grid.
111     #undef USE_EXF_INTERPOLATION
112    
113     #define EXF_INTERP_USE_DYNALLOC
114     #if ( defined (EXF_INTERP_USE_DYNALLOC) & defined (USING_THREADS) )
115     # define EXF_IREAD_USE_GLOBAL_POINTER
116     #endif
117    
118     C >>> No Open boundaries
119     #undef ALLOW_OBCSN_CONTROL
120     #undef ALLOW_OBCSS_CONTROL
121     #undef ALLOW_OBCSW_CONTROL
122     #undef ALLOW_OBCSE_CONTROL
123    
124 jmc 1.8 C ********************************************************************
125     #endif /* ECCO_CPPOPTIONS_H */

  ViewVC Help
Powered by ViewVC 1.1.22