/[MITgcm]/MITgcm_contrib/arctic/cs_36km/code/EXF_OPTIONS.h
ViewVC logotype

Annotation of /MITgcm_contrib/arctic/cs_36km/code/EXF_OPTIONS.h

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


Revision 1.2 - (hide annotations) (download)
Thu Oct 24 22:20:35 2013 UTC (11 years, 9 months ago) by dimitri
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +163 -127 lines
File MIME type: text/plain
starting to change from adjoint-friendly set-up
closer to a Nguyen et al. 2011 standard set-up
adjoint setup should be a separate folder

1 dimitri 1.2 C $Header: /u/gcmpack/MITgcm_contrib/arctic/cs_36km/code/EXF_OPTIONS.h,v 1.1 2013/10/18 21:06:45 dimitri Exp $
2 dimitri 1.1 C $Name: $
3    
4 dimitri 1.2 CBOP
5     C !ROUTINE: EXF_OPTIONS.h
6     C !INTERFACE:
7     C #include "EXF_OPTIONS.h"
8    
9     C !DESCRIPTION:
10     C *==================================================================*
11     C | CPP options file for EXternal Forcing (EXF) package:
12     C | Control which optional features to compile in this package code.
13     C *==================================================================*
14     CEOP
15    
16 dimitri 1.1 #ifndef EXF_OPTIONS_H
17     #define EXF_OPTIONS_H
18     #include "PACKAGES_CONFIG.h"
19 dimitri 1.2 #include "CPP_OPTIONS.h"
20    
21 dimitri 1.1 #ifdef ALLOW_EXF
22 dimitri 1.2 #ifdef ECCO_CPPOPTIONS_H
23 dimitri 1.1
24 dimitri 1.2 C-- When multi-package option-file ECCO_CPPOPTIONS.h is used (directly included
25     C in CPP_OPTIONS.h), this option file is left empty since all options that
26     C are specific to this package are assumed to be set in ECCO_CPPOPTIONS.h
27 dimitri 1.1
28 dimitri 1.2 #else /* ndef ECCO_CPPOPTIONS_H */
29 dimitri 1.1
30 dimitri 1.2 C-- Package-specific Options & Macros go here
31 dimitri 1.1
32 dimitri 1.2 C pkg/exf CPP options:
33     C --------------------
34     C
35     C > ( EXF_VERBOSE ) < replaced with run-time, logical parameter "exf_verbose".
36     C
37     C >>> ALLOW_ATM_WIND <<<
38     C If defined, 10-m wind fields can be read-in from files.
39     C
40     C >>> ALLOW_ATM_TEMP <<<
41     C If defined, atmospheric temperature and specific
42     C humidity fields can be read-in from files.
43     C
44     C >>> ALLOW_DOWNWARD_RADIATION <<<
45     C If defined, downward long-wave and short-wave radiation
46     C can be read-in form files or computed from lwflux and swflux.
47     C
48     C >>> ALLOW_ZENITHANGLE <<<
49     C If defined, ocean albedo varies with the zenith angle, and
50     C incoming fluxes at the top of the atmosphere are computed
51     C
52     C >>> ALLOW_BULKFORMULAE <<<
53     C Allows the use of bulk formulae in order to estimate
54     C turbulent and radiative fluxes at the ocean surface.
55     C
56     C >>> EXF_READ_EVAP <<<
57     C If defined, evaporation fields are read-in, rather than
58     C computed from atmospheric state.
59     C
60     C >>> ALLOW_RUNOFF <<<
61     C If defined, river and glacier runoff can be read-in from files.
62     C
63     C >>> ALLOW_RUNOFTEMP <<<
64     C If defined, river and glacier runoff temperature
65     C can be read-in from files.
66     C
67     C >>> ATMOSPHERIC_LOADING <<<
68     C If defined, atmospheric pressure can be read-in from files.
69     C WARNING: this flag is set (define/undef) in CPP_OPTIONS.h
70     C and cannot be changed here (in EXF_OPTIONS)
71     C
72     C >>> EXF_SEAICE_FRACTION <<<
73     C If defined, seaice fraction can be read-in from files (areaMaskFile)
74     C
75     C >>> ALLOW_CLIMSST_RELAXATION <<<
76     C Allow the relaxation to a monthly climatology of sea surface
77     C temperature, e.g. the Reynolds climatology.
78     C
79     C >>> ALLOW_CLIMSSS_RELAXATION <<<
80     C Allow the relaxation to a monthly climatology of sea surface
81     C salinity, e.g. the Levitus climatology.
82     C
83     C >>> USE_EXF_INTERPOLATION <<<
84     C Allows specification of arbitrary Cartesian input grids.
85     C
86     C ====================================================================
87     C
88     C The following CPP options:
89     C
90     C ALLOW_ATM_WIND (WIND)
91     C ALLOW_ATM_TEMP (TEMP)
92     C ALLOW_DOWNWARD_RADIATION (DOWN)
93     C ALLOW_BULKFORMULAE (BULK)
94     C EXF_READ_EVAP (EVAP)
95     C
96     C permit the ocean-model forcing configurations listed in the
97     C table below. The first configuration is the default,
98     C flux-forced, ocean model. The next four are stand-alone
99     C configurations that use pkg/exf, open-water bulk formulae to
100     C compute the missing surface fluxes from atmospheric variables.
101     C The last four configurations can be used in conjunction with
102     C pkg/seaice to model ice-covered regions. The forcing fields
103     C in the rightmost column are defined in exf_fields.
104     C
105     C
106     C WIND |TEMP |DOWN |BULK |EVAP | actions
107     C -----|-----|-----|-----|-----|-------------------------------------
108     C | | | | |
109     C - | - | - | - | - | Read-in ustress, vstress, hflux,
110     C | | | | | swflux, and sflux.
111     C | | | | |
112     C def | def | def | def | - | Read-in uwind, vwind, atemp, aqh,
113     C | | | | | swdown, lwdown, precip, and runoff.
114     C | | | | | Compute ustress, vstress, hflux,
115     C | | | | | swflux, and sflux.
116     C | | | | |
117     C def | def | - | def | - | Read-in uwind, vwind, atemp, aqh,
118     C | | | | | swflux, lwflux, precip, and runoff.
119     C | | | | | Compute ustress, vstress, hflux,
120     C | | | | | and sflux.
121     C | | | | |
122     C def | - | - | def | - | Read-in uwind, vwind, hflux,
123     C | | | | | swflux, and sflux.
124     C | | | | | Compute ustress and vstress.
125     C | | | | |
126     C - | def | - | def | - | Read-in ustress, vstress, atemp,
127     C | | | | | aqh, swflux, lwflux, precip, and
128     C | | | | | runoff. Compute hflux and sflux.
129     C | | | | |
130     C def | def | - | - | def | Read-in uwind, vwind, atemp, aqh,
131     C | | | | | swflux, lwflux, precip, runoff,
132     C | | | | | and evap.
133     C | | | | |
134     C def | def | - | def | - | Read-in uwind, vwind, atemp, aqh,
135     C | | | | | swflux, lwflux, precip, and runoff.
136     C | | | | | Compute open-water ustress, vstress,
137     C | | | | | hflux, swflux, and evap.
138     C | | | | |
139     C def | def | def | - | def | Read-in uwind, vwind, atemp, aqh,
140     C | | | | | swdown, lwdown, precip, runoff,
141     C | | | | | and evap.
142     C | | | | |
143     C def | def | def | def | - | Read-in uwind, vwind, atemp, aqh,
144     C | | | | | swdown, lwdown, precip, and runoff.
145     C | | | | | Compute open-water ustress, vstress,
146     C | | | | | hflux, swflux, and evap.
147     C
148     C ====================================================================
149 dimitri 1.1
150     C Bulk formulae related flags.
151     #define ALLOW_ATM_TEMP
152     #define ALLOW_ATM_WIND
153     #define ALLOW_DOWNWARD_RADIATION
154     #define ALLOW_RUNOFF
155 dimitri 1.2 #undef ALLOW_RUNOFTEMP
156     #if (defined (ALLOW_ATM_TEMP) || defined (ALLOW_ATM_WIND))
157 dimitri 1.1 # define ALLOW_BULKFORMULAE
158 dimitri 1.2 # undef ALLOW_BULK_LARGEYEAGER04
159     #endif
160    
161     C Zenith Angle/Albedo related flags.
162     #ifdef ALLOW_DOWNWARD_RADIATION
163     # undef ALLOW_ZENITHANGLE
164     #endif
165    
166     C Use ocean_emissivity*lwdown in lwFlux. This flag should be defined
167     C unless to reproduce old results (obtained with inconsistent old code)
168     #ifdef ALLOW_DOWNWARD_RADIATION
169     # define EXF_LWDOWN_WITH_EMISSIVITY
170 dimitri 1.1 #endif
171    
172     C Relaxation to monthly climatologies.
173     #undef ALLOW_CLIMSST_RELAXATION
174     #undef ALLOW_CLIMSSS_RELAXATION
175    
176 dimitri 1.2 C Allows to read-in seaice fraction from files (areaMaskFile)
177     #undef EXF_SEAICE_FRACTION
178    
179 dimitri 1.1 C Use spatial interpolation to interpolate
180     C forcing files from input grid to model grid.
181     #define USE_EXF_INTERPOLATION
182 dimitri 1.2 C for interpolated vector fields, rotate towards model-grid axis
183     C using old rotation formulae (instead of grid-angles)
184     #undef EXF_USE_OLD_VEC_ROTATION
185     C for interpolation around N & S pole, use the old formulation
186     C (no pole symmetry, single vector-comp interp, reset to 0 zonal-comp @ N.pole)
187     #undef EXF_USE_OLD_INTERP_POLE
188 dimitri 1.1
189     #define EXF_INTERP_USE_DYNALLOC
190 dimitri 1.2 #if ( defined (EXF_INTERP_USE_DYNALLOC) && defined (USING_THREADS) )
191 dimitri 1.1 # define EXF_IREAD_USE_GLOBAL_POINTER
192     #endif
193    
194 dimitri 1.2 #endif /* ndef ECCO_CPPOPTIONS_H */
195 dimitri 1.1 #endif /* ALLOW_EXF */
196     #endif /* EXF_OPTIONS_H */

  ViewVC Help
Powered by ViewVC 1.1.22