/[MITgcm]/MITgcm/pkg/exf/EXF_OPTIONS.h
ViewVC logotype

Diff of /MITgcm/pkg/exf/EXF_OPTIONS.h

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

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

Legend:
Removed from v.1.21  
changed lines
  Added in v.1.30

  ViewVC Help
Powered by ViewVC 1.1.22