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

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

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

revision 1.1 by dimitri, Fri Oct 18 21:06:45 2013 UTC revision 1.2 by dimitri, Thu Oct 24 22:20:35 2013 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
3    
4    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  #ifndef EXF_OPTIONS_H  #ifndef EXF_OPTIONS_H
17  #define EXF_OPTIONS_H  #define EXF_OPTIONS_H
18  #include "PACKAGES_CONFIG.h"  #include "PACKAGES_CONFIG.h"
19    #include "CPP_OPTIONS.h"
20    
21  #ifdef ALLOW_EXF  #ifdef ALLOW_EXF
22    #ifdef ECCO_CPPOPTIONS_H
23    
24  #include "CPP_OPTIONS.h"  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    
28  #ifdef ALLOW_AUTODIFF_TAMC  #else /* ndef ECCO_CPPOPTIONS_H */
29    
30  C When compile for AD mode,  C-- Package-specific Options & Macros go here
 C this package is currently configured by ECCO_CPPOPTIONS.h  
 C which is directly included in CPP_OPTIONS.h  
   
 #else /* ndef ALLOW_AUTODIFF_TAMC */  
   
 C CPP flags controlling which code is included in the files that  
 C will be compiled.  
 C  
   
 c   pkg/exf CPP options:  
 c   --------------------  
 c  
 c   >>> EXF_VERBOSE <<<  
 c       Do a bit more printout for the log file than usual.  
 c  
 c   >>> ALLOW_ATM_WIND <<<  
 c       If defined, 10-m wind fields can be read-in from files.  
 c                                          
 c   >>> ALLOW_ATM_TEMP <<<  
 c       If defined, atmospheric temperature and specific  
 c       humidity fields can be read-in from files.  
 c                                          
 c   >>> ALLOW_DOWNWARD_RADIATION <<<  
 c       If defined, downward long-wave and short-wave radiation  
 c       can be read-in form files or computed from lwflux and swflux.  
 c  
 c   >>> ALLOW_BULKFORMULAE <<<  
 c       Allows the use of bulk formulae in order to estimate  
 c       turbulent and radiative fluxes at the oceans surface.  
 c  
 c   >>> EXF_READ_EVAP <<<  
 c       If defined, evaporation fields are read-in, rather than  
 c       computed from atmospheric state.  
 c                                          
 c   >>> ALLOW_RUNOFF <<<  
 c       If defined, river and glacier runoff can be read-in from files.  
 c  
 c   >>> ATMOSPHERIC_LOADING <<<  
 c       If defined, atmospheric pressure can be read-in from files.  
 c   WARNING: this flag is set (define/undef) in CPP_OPTIONS.h  
 c            and cannot be changed here (in EXF_OPTIONS)  
 c  
 c   >>> ALLOW_CLIMSST_RELAXATION <<<  
 c       Allow the relaxation to a monthly climatology of sea surface  
 c       temperature, e.g. the Reynolds climatology.  
 c  
 c   >>> ALLOW_CLIMSSS_RELAXATION <<<  
 c       Allow the relaxation to a monthly climatology of sea surface  
 c       salinity, e.g. the Levitus climatology.  
 c  
 c   >>> USE_EXF_INTERPOLATION <<<  
 c       Allows specification of arbitrary Cartesian input grids.  
 c  
 c   ====================================================================  
 c  
 c       The following CPP options:  
 c  
 c          ALLOW_ATM_WIND              (WIND)  
 c          ALLOW_ATM_TEMP              (TEMP)  
 c          ALLOW_DOWNWARD_RADIATION    (DOWN)  
 c          ALLOW_BULKFORMULAE          (BULK)  
 c          EXF_READ_EVAP               (EVAP)  
 c  
 c       permit the ocean-model forcing configurations listed in the  
 c       table below.  The first configuration is the default,  
 c       flux-forced, ocean model.  The next four are stand-alone  
 c       configurations that use pkg/exf, open-water bulk formulae to  
 c       compute the missing surface fluxes from atmospheric variables.  
 c       The last four configurations can be used in conjunction with  
 c       pkg/seaice to model ice-covered regions.  The forcing fields  
 c       in the rightmost column are defined in exf_fields.  
 c  
 c  
 c    WIND |TEMP |DOWN |BULK |EVAP |            actions  
 c    -----|-----|-----|-----|-----|-------------------------------------  
 c         |     |     |     |     |  
 c      -  |  -  |  -  |  -  |  -  | Read-in ustress, vstress, hflux,  
 c         |     |     |     |     | swflux, and sflux.  
 c         |     |     |     |     |  
 c     def | def | def | def |  -  | Read-in uwind, vwind, atemp, aqh,  
 c         |     |     |     |     | swdown, lwdown, precip, and runoff.  
 c         |     |     |     |     | Compute ustress, vstress, hflux,  
 c         |     |     |     |     | swflux, and sflux.  
 c         |     |     |     |     |  
 c     def | def |  -  | def |  -  | Read-in uwind, vwind, atemp, aqh,  
 c         |     |     |     |     | swflux, lwflux, precip, and runoff.  
 c         |     |     |     |     | Compute ustress, vstress, hflux,  
 c         |     |     |     |     | and sflux.  
 c         |     |     |     |     |  
 c     def |  -  |  -  | def |  -  | Read-in uwind, vwind, hflux,  
 c         |     |     |     |     | swflux, and sflux.  
 c         |     |     |     |     | Compute ustress and vstress.  
 c         |     |     |     |     |  
 c      -  | def |  -  | def |  -  | Read-in ustress, vstress, atemp,  
 c         |     |     |     |     | aqh, swflux, lwflux, precip, and  
 c         |     |     |     |     | runoff.  Compute hflux and sflux.  
 c         |     |     |     |     |  
 c     def | def |  -  |  -  | def | Read-in uwind, vwind, atemp, aqh,  
 c         |     |     |     |     | swflux, lwflux, precip, runoff,  
 c         |     |     |     |     | and evap.  
 c         |     |     |     |     |  
 c     def | def |  -  | def |  -  | Read-in uwind, vwind, atemp, aqh,  
 c         |     |     |     |     | swflux, lwflux, precip, and runoff.  
 c         |     |     |     |     | Compute open-water ustress, vstress,  
 c         |     |     |     |     | hflux, swflux, and evap.  
 c         |     |     |     |     |  
 c     def | def | def |  -  | def | Read-in uwind, vwind, atemp, aqh,  
 c         |     |     |     |     | swdown, lwdown, precip, runoff,  
 c         |     |     |     |     | and evap.  
 c         |     |     |     |     |  
 c     def | def | def | def |  -  | Read-in uwind, vwind, atemp, aqh,  
 c         |     |     |     |     | swdown, lwdown, precip, and runoff.  
 c         |     |     |     |     | Compute open-water ustress, vstress,  
 c         |     |     |     |     | hflux, swflux, and evap.  
 c  
 c   ====================================================================  
31    
32  C   Do more printout for the protocol file than usual.  C   pkg/exf CPP options:
33  #undef EXF_VERBOSE  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    
150  C   Bulk formulae related flags.  C   Bulk formulae related flags.
151  #define  ALLOW_ATM_TEMP  #define  ALLOW_ATM_TEMP
152  #define  ALLOW_ATM_WIND  #define  ALLOW_ATM_WIND
153  #define  ALLOW_DOWNWARD_RADIATION  #define  ALLOW_DOWNWARD_RADIATION
154  #define  ALLOW_RUNOFF  #define  ALLOW_RUNOFF
155  #if (defined (ALLOW_ATM_TEMP) || \  #undef   ALLOW_RUNOFTEMP
156       defined (ALLOW_ATM_WIND))  #if (defined (ALLOW_ATM_TEMP) || defined (ALLOW_ATM_WIND))
157  # define ALLOW_BULKFORMULAE  # define ALLOW_BULKFORMULAE
158  # undef ALLOW_BULK_LARGEYEAGER04  # 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  #endif  #endif
171    
172  C   Relaxation to monthly climatologies.  C   Relaxation to monthly climatologies.
173  #undef ALLOW_CLIMSST_RELAXATION  #undef ALLOW_CLIMSST_RELAXATION
174  #undef ALLOW_CLIMSSS_RELAXATION  #undef ALLOW_CLIMSSS_RELAXATION
175    
176    C   Allows to read-in seaice fraction from files (areaMaskFile)
177    #undef EXF_SEAICE_FRACTION
178    
179  C   Use spatial interpolation to interpolate  C   Use spatial interpolation to interpolate
180  C   forcing files from input grid to model grid.  C   forcing files from input grid to model grid.
181  #define USE_EXF_INTERPOLATION  #define USE_EXF_INTERPOLATION
182    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    
189  #define EXF_INTERP_USE_DYNALLOC  #define EXF_INTERP_USE_DYNALLOC
190  #if ( defined (EXF_INTERP_USE_DYNALLOC) & defined (USING_THREADS) )  #if ( defined (EXF_INTERP_USE_DYNALLOC) && defined (USING_THREADS) )
191  # define EXF_IREAD_USE_GLOBAL_POINTER  # define EXF_IREAD_USE_GLOBAL_POINTER
192  #endif  #endif
193    
194  #endif /* ndef ALLOW_AUTODIFF_TAMC */  #endif /* ndef ECCO_CPPOPTIONS_H */
195  #endif /* ALLOW_EXF */  #endif /* ALLOW_EXF */
196  #endif /* EXF_OPTIONS_H */  #endif /* EXF_OPTIONS_H */

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

  ViewVC Help
Powered by ViewVC 1.1.22