/[MITgcm]/MITgcm/model/inc/CPP_OPTIONS.h
ViewVC logotype

Diff of /MITgcm/model/inc/CPP_OPTIONS.h

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

revision 1.8 by adcroft, Tue Dec 15 00:20:34 1998 UTC revision 1.26 by edhill, Thu Oct 16 15:47:57 2003 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C  C $Name$
3    
4  C  #ifndef CPP_OPTIONS_H
5  C CPP flags controlling which code in included in the files that  #define CPP_OPTIONS_H
 C will be compiled.  
 C  
6    
7  C o Include/exclude code for C-D grid method of integrating the  ceh3 #include "PACKAGES_CONFIG.h"
 C   coriolis terms  
 #define  INCLUDE_CD_CODE  
   
 C o Include/exclude diagnostics package interface code  
 #define  INCLUDE_DIAGNOSTICS_INTERFACE_CODE  
   
 C o Include/exclude latitude circle FFT filter  
 #undef  INCLUDE_LAT_CIRC_FFT_FILTER_CODE  
8    
9  C o Include/exclude temperature advection code  C CPP flags controlling particular source code features
 #define  INCLUDE_T_ADVECTION_CODE  
 #ifdef   INCLUDE_T_ADVECTION_CODE  
 #define  _ADT(a) a  
 #endif  
 #ifndef  INCLUDE_T_ADVECTION_CODE  
 #define  _ADT(a)  
 #endif  
10    
11  C o Include/exclude temperature diffusion code  C o Include/exclude code for C-D grid method of integrating the
12  #define  INCLUDE_T_DIFFUSION_CODE  C   coriolis terms
13  #ifdef   INCLUDE_T_DIFFUSION_CODE  #undef  INCLUDE_CD_CODE
 #define  _LPT(a) a  
 #define  _BHT(a) a  
 #endif  
 #ifndef  INCLUDE_T_DIFFUSION_CODE  
 #define  _LPT(a)  
 #define  _BHT(a)  
 #endif  
14    
15  C o Include/exclude temperature forcing code  C o Include/exclude temperature forcing code
16  #define  INCLUDE_T_FORCING_CODE  C#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  
17    
18  C o Include/exclude laplacian viscosity code  C o Shortwave heating as extra term in external_forcing.F
19  #define  INCLUDE_LP_MOMENTUM_DIFFUSION_CODE  C Note: this should be a run-time option and not necessarily dependent on KPP
20  #ifdef   INCLUDE_LP_MOMENTUM_DIFFUSION_CODE  #ifdef ALLOW_KPP
21  #define  _LPM(a) a  #define  SHORTWAVE_HEATING
 #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)  
22  #endif  #endif
23    
24  C o Include/exclude momentum forcing code  C o Include/exclude momentum forcing code
# Line 84  C o Include/exclude momentum eqn metric Line 30  C o Include/exclude momentum eqn metric
30  C o Include/exclude phi_hyd calculation code  C o Include/exclude phi_hyd calculation code
31  #define INCLUDE_PHIHYD_CALCULATION_CODE  #define INCLUDE_PHIHYD_CALCULATION_CODE
32    
 C o Include/exclude prognostic variable shapiro filter code  
 C   Note - Shapiro filter of prognostics variables requires the  
 C          three steps "step forward including edges", filter,  
 C          "communicate edges".  
 C           If the filtering code is included then we do not use the  
 C          pipelined "step forward including edges" in S/R DYNAMICS.  
 C          Instead the three steps are performed before DYNAMICS one  
 C          after another in an un-pipelined fashion.  
 #undef  INCLUDE_SHAPIRO_FILTER_CODE  
 #ifdef  INCLUDE_SHAPIRO_FILTER_CODE  
 #undef  DO_PIPELINED_CORRECTION_STEP  
 #endif  
 #ifndef INCLUDE_SHAPIRO_FILTER_CODE  
 #define DO_PIPELINED_CORRECTION_STEP  
 #endif  
   
 C o Include/exclude call to S/R FIND_RHO  
 #define INCLUDE_FIND_RHO_CALL  
   
33  C o Include/exclude call to S/R CONVECT  C o Include/exclude call to S/R CONVECT
34  #define INCLUDE_CONVECT_CALL  #define INCLUDE_CONVECT_CALL
35    
 C o Include/exclude call to S/R CALC_ISOSLOPES  
 #define INCLUDE_CALC_ISOSLOPES_CALL  
   
36  C o Include/exclude call to S/R CALC_DIFFUSIVITY  C o Include/exclude call to S/R CALC_DIFFUSIVITY
37  #define INCLUDE_CALC_DIFFUSIVITY_CALL  #define INCLUDE_CALC_DIFFUSIVITY_CALL
38    
39  C o Use "natural" boundary conditions for salinity  C o Include/exclude nonHydrostatic code
40  C   instead of the "virtual salt flux"  #undef ALLOW_NONHYDROSTATIC
41  #undef USE_NATURAL_BCS  
42    C o Include pressure loading code
43    #define ATMOSPHERIC_LOADING
44    
45    C o Use "Exact Convervation" of fluid in Free-Surface formulation
46    C   so that d/dt(eta) is exactly equal to - Div.Transport
47    #define EXACT_CONSERV
48    
49    C o Allow the use of Non-Linear Free-Surface formulation
50    C   this implies that surface thickness (hFactors) vary with time
51    #undef NONLIN_FRSURF
52    
53  C o Use "OLD" UV discretisation near boundaries (*not* recommended)  C o Use "OLD" UV discretisation near boundaries (*not* recommended)
54  C   Note - only works with  #undef NO_SLIP_LATERAL  in calc_mom_rhs.F  C   Note - only works with  #undef NO_SLIP_LATERAL  in calc_mom_rhs.F
# Line 128  C          because the old code did not Line 62  C          because the old code did not
62    
63  C o Execution environment support options  C o Execution environment support options
64  #include "CPP_EEOPTIONS.h"  #include "CPP_EEOPTIONS.h"
65    
66    C o Include/exclude code specific to the ECCO/SEALION version.
67    #undef INCLUDE_ECCO_PACKAGE
68    #ifdef INCLUDE_ECCO_PACKAGE
69    #include "ECCO_CPPOPTIONS.h"
70    #endif
71    
72    #endif /* CPP_OPTIONS_H */
73    

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.26

  ViewVC Help
Powered by ViewVC 1.1.22