/[MITgcm]/MITgcm/verification/lab_sea/code/CPP_OPTIONS.h
ViewVC logotype

Diff of /MITgcm/verification/lab_sea/code/CPP_OPTIONS.h

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

revision 1.3 by dimitri, Sat Dec 28 10:11:12 2002 UTC revision 1.9 by heimbach, Tue Nov 25 19:04:17 2003 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
 C  
3    
4  CBOP  #ifndef CPP_OPTIONS_H
5  C !ROUTINE: CPP_OPTIONS.h  #define CPP_OPTIONS_H
 C !INTERFACE:  
 C include "CPP_OPTIONS.h"  
 C !DESCRIPTION:  
 C CPP flags controlling which code in included in the files that  
 C will be compiled.  
 CEOP  
   
 C o Include/exclude code for AIM package  
 #undef  ALLOW_AIM  
6    
7  C o Include/exclude code for sea-ice model  #include "PACKAGES_CONFIG.h"
 #define  ALLOW_SEAICE  
8    
9  C o Include/exclude code for GM/Redi parameterization  C CPP flags controlling particular source code features
 #define  ALLOW_GMREDI  
   
 C o Include/exclude code for KPP mixing scheme  
 #define  ALLOW_KPP  
10    
11  C o Shortwave heating as extra term in external_forcing.F  C o Shortwave heating as extra term in external_forcing.F
12    C Note: this should be a run-time option and not necessarily dependent on KPP
13  #ifdef ALLOW_KPP  #ifdef ALLOW_KPP
14  #define  SHORTWAVE_HEATING  #define  SHORTWAVE_HEATING
15  #endif  #endif
16    
 C o Include/exclude code for Shapiro filters  
 #undef  ALLOW_SHAP_FILT  
   
 C o Include/exclude code for C-D grid method of integrating the  
 C   coriolis terms  
 #define  INCLUDE_CD_CODE  
   
 C o Include/exclude code for open-boundary conditions  
 #undef  ALLOW_OBCS  
   
 C o Include/exclude diagnostics package interface code  
 #define  ALLOW_TIMEAVE  
   
 C o Include/exclude zonal FFT filter code  
 #undef  ALLOW_ZONAL_FILT  
   
 C o Include/exclude temperature advection code  
 #define  INCLUDE_T_ADVECTION_CODE  
 #ifdef   INCLUDE_T_ADVECTION_CODE  
 #define  _ADT(a)a  
 #endif  
 #ifndef  INCLUDE_T_ADVECTION_CODE  
 #define  _ADT(a)  
 #endif  
   
 C o Include/exclude temperature diffusion code  
 #define  INCLUDE_T_DIFFUSION_CODE  
 #ifdef   INCLUDE_T_DIFFUSION_CODE  
 #define  _LPT(a)a  
 #define  _BHT(a)a  
 #endif  
 #ifndef  INCLUDE_T_DIFFUSION_CODE  
 #define  _LPT(a)  
 #define  _BHT(a)  
 #endif  
   
 C o Include/exclude temperature forcing code  
 #define  INCLUDE_T_FORCING_CODE  
   
 C o Include/exclude momentum advection code  
 #define  INCLUDE_MOMENTUM_ADVECTION_CODE  
 #ifdef   INCLUDE_MOMENTUM_ADVECTION_CODE  
 #define  _ADM(a)a  
 #endif  
 #ifndef  INCLUDE_MOMENTUM_ADVECTION_CODE  
 #define  _ADM(a)  
 #endif  
   
 C o Include/exclude laplacian viscosity code  
 #define  INCLUDE_LP_MOMENTUM_DIFFUSION_CODE  
 #ifdef   INCLUDE_LP_MOMENTUM_DIFFUSION_CODE  
 #define  _LPM(a)a  
 #endif  
 #ifndef  INCLUDE_LP_MOMENTUM_DIFFUSION_CODE  
 #define  _LPM(a)  
 #endif  
   
 C o Include/exclude biharmonic viscosity code  
 #define  INCLUDE_BH_MOMENTUM_DIFFUSION_CODE  
 #ifdef   INCLUDE_BH_MOMENTUM_DIFFUSION_CODE  
 #define  _BHM(a)a  
 #endif  
 #ifndef  INCLUDE_BH_MOMENTUM_DIFFUSION_CODE  
 #define  _BHM(a)  
 #endif  
   
 C o Include/exclude gradient of phy_hyd code  
 #define INCLUDE_GRADPH_CODE  
 #ifdef  INCLUDE_GRADPH_CODE  
 #define _PHM(a)a  
 #endif  
 #ifndef INCLUDE_GRADPH_CODE  
 #define _PHM(a)  
 #endif  
   
 C o Include/exclude momentum forcing code  
 #define INCLUDE_MOMENTUM_FORCING_CODE  
   
 C o Include/exclude momentum eqn metric terms code  
 #define INCLUDE_MOMENTUM_METRIC_TERM_CODE  
   
17  C o Include/exclude phi_hyd calculation code  C o Include/exclude phi_hyd calculation code
18  #define INCLUDE_PHIHYD_CALCULATION_CODE  #define INCLUDE_PHIHYD_CALCULATION_CODE
19    
20  C o Include/exclude call to S/R CONVECT  C o Include/exclude call to S/R CONVECT
21  #undef  INCLUDE_CONVECT_CALL  #define INCLUDE_CONVECT_CALL
22    
23  C o Include/exclude call to S/R CALC_DIFFUSIVITY  C o Include/exclude call to S/R CALC_DIFFUSIVITY
24  #define INCLUDE_CALC_DIFFUSIVITY_CALL  #define INCLUDE_CALC_DIFFUSIVITY_CALL
25    
26  C o Allow nonHydrostatic code  C o Include/exclude nonHydrostatic code
27  #undef  ALLOW_NONHYDROSTATIC  #undef ALLOW_NONHYDROSTATIC
28    
29  C o Use "natural" boundary conditions for salinity  C o Include pressure loading code
30  C   instead of the "virtual salt flux"  #define ATMOSPHERIC_LOADING
 #undef  USE_NATURAL_BCS  
31    
32  C o Use "Exact Convervation" of fluid in Free-Surface formulation  C o Use "Exact Convervation" of fluid in Free-Surface formulation
33  C   so that d/dt(eta) is exactly equal to - Div.Transport  C   so that d/dt(eta) is exactly equal to - Div.Transport
34  #undef  EXACT_CONSERV  #define EXACT_CONSERV
35    
36  C o Allow the use of Non-Linear Free-Surface formulation  C o Allow the use of Non-Linear Free-Surface formulation
37  C   this implies that surface thickness (hFactors) vary with time  C   this implies that surface thickness (hFactors) vary with time
# Line 138  C   Note - only works with  #undef NO_SL Line 42  C   Note - only works with  #undef NO_SL
42  C          because the old code did not have no-slip BCs  C          because the old code did not have no-slip BCs
43  #undef  OLD_ADV_BCS  #undef  OLD_ADV_BCS
44    
 C o Use "OLD" UV geometry on sphere (definately *NOT* recommended)  
 C   Note - only works with  #undef NO_SLIP_LATERAL  in calc_mom_rhs.F  
 C          because the old code did not have no-slip BCs  
 #undef  OLD_UV_GEOMETRY  
   
45  C o Execution environment support options  C o Execution environment support options
46  #include "CPP_EEOPTIONS.h"  #include "CPP_EEOPTIONS.h"
47    
48  C o Include/exclude the external forcing package. To use this package,  C o Include/exclude code specific to the ECCO/SEALION version.
49  C   you have to include the calendar tool as well. KPP can be switched  C   AUTODIFF or EXF package.
50  C   on or off. The implementation automatically takes care of this.  C   Currently controled by a single header file
51  #define INCLUDE_EXTERNAL_FORCING_PACKAGE  C   For this to work, PACKAGES_CONFIG.h needs to be included!
52  #ifdef INCLUDE_EXTERNAL_FORCING_PACKAGE  #if (defined (ALLOW_AUTODIFF) || \
53         defined (ALLOW_ECCO) || \
54         defined (ALLOW_EXF))
55  # include "ECCO_CPPOPTIONS.h"  # include "ECCO_CPPOPTIONS.h"
56  #endif  #endif
57    
58    #endif /* CPP_OPTIONS_H */
59    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.22