/[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

--- MITgcm/model/inc/CPP_OPTIONS.h	2016/11/28 22:55:00	1.54
+++ MITgcm/model/inc/CPP_OPTIONS.h	2017/11/02 17:43:26	1.55
@@ -1,4 +1,4 @@
-C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/model/inc/CPP_OPTIONS.h,v 1.54 2016/11/28 22:55:00 jmc Exp $
+C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/model/inc/CPP_OPTIONS.h,v 1.55 2017/11/02 17:43:26 jmc Exp $
 C $Name:  $
 
 #ifndef CPP_OPTIONS_H
@@ -18,6 +18,8 @@
 
 C CPP flags controlling particular source code features
 
+C-- Forcing code options:
+
 C o Shortwave heating as extra term in external_forcing.F
 C Note: this should be a run-time option
 #undef SHORTWAVE_HEATING
@@ -25,9 +27,37 @@
 C o Include/exclude Geothermal Heat Flux at the bottom of the ocean
 #undef ALLOW_GEOTHERMAL_FLUX
 
+C o Allow to account for heating due to friction (and momentum dissipation)
+#undef ALLOW_FRICTION_HEATING
+
+C o Allow mass source or sink of Fluid in the interior
+C   (3-D generalisation of oceanic real-fresh water flux)
+#undef ALLOW_ADDFLUID
+
+C o Include pressure loading code
+#define ATMOSPHERIC_LOADING
+
+C o Include/exclude balancing surface forcing fluxes code
+#undef ALLOW_BALANCE_FLUXES
+
+C o Include/exclude balancing surface forcing relaxation code
+#undef ALLOW_BALANCE_RELAX
+
+C o Include/exclude checking for negative salinity
+#undef CHECK_SALINITY_FOR_NEGATIVE_VALUES
+
+C-- Options to discard parts of the main code:
+
+C o Exclude/allow external forcing-fields load
+C   this allows to read & do simple linear time interpolation of oceanic
+C   forcing fields, if no specific pkg (e.g., EXF) is used to compute them.
+#undef EXCLUDE_FFIELDS_LOAD
+
 C o Include/exclude phi_hyd calculation code
 #define INCLUDE_PHIHYD_CALCULATION_CODE
 
+C-- Vertical mixing code options:
+
 C o Include/exclude call to S/R CONVECT
 #define INCLUDE_CONVECT_CALL
 
@@ -40,49 +70,43 @@
 C o Allow latitudinally varying BryanLewis79 vertical diffusivity
 #undef ALLOW_BL79_LAT_VARY
 
-C o Include/exclude Implicit vertical advection code
-#define INCLUDE_IMPLVERTADV_CODE
+C o Exclude/allow partial-cell effect (physical or enhanced) in vertical mixing
+C   this allows to account for partial-cell in vertical viscosity and diffusion,
+C   either from grid-spacing reduction effect or as artificially enhanced mixing
+C   near surface & bottom for too thin grid-cell
+#undef EXCLUDE_PCELL_MIX_CODE
+
+C-- Time-stepping code options:
 
 C o Include/exclude combined Surf.Pressure and Drag Implicit solver code
 #undef ALLOW_SOLVE4_PS_AND_DRAG
 
+C o Include/exclude Implicit vertical advection code
+#define INCLUDE_IMPLVERTADV_CODE
+
 C o Include/exclude AdamsBashforth-3rd-Order code
 #undef ALLOW_ADAMSBASHFORTH_3
 
-C o Include/exclude nonHydrostatic code
-#undef ALLOW_NONHYDROSTATIC
-
-C o Allow to account for heating due to friction (and momentum dissipation)
-#undef ALLOW_FRICTION_HEATING
+C-- Model formulation options:
 
-C o Allow mass source or sink of Fluid in the interior
-C   (3-D generalisation of oceanic real-fresh water flux)
-#undef ALLOW_ADDFLUID
-
-C o Include pressure loading code
-#define ATMOSPHERIC_LOADING
-
-C o exclude/allow external forcing-fields load
-C   this allows to read & do simple linear time interpolation of oceanic
-C   forcing fields, if no specific pkg (e.g., EXF) is used to compute them.
-#undef EXCLUDE_FFIELDS_LOAD
+C o Allow/exclude "Exact Convervation" of fluid in Free-Surface formulation
+C   that ensures that d/dt(eta) is exactly equal to - Div.Transport
+#define EXACT_CONSERV
 
-C o Include/exclude balancing surface forcing fluxes code
-#undef ALLOW_BALANCE_FLUXES
+C o Allow the use of Non-Linear Free-Surface formulation
+C   this implies that grid-cell thickness (hFactors) varies with time
+#undef NONLIN_FRSURF
 
-C o Include/exclude balancing surface forcing relaxation code
-#undef ALLOW_BALANCE_RELAX
+C o Include/exclude nonHydrostatic code
+#undef ALLOW_NONHYDROSTATIC
 
 C o Include/exclude GM-like eddy stress in momentum code
 #undef ALLOW_EDDYPSI
 
-C o Use "Exact Convervation" of fluid in Free-Surface formulation
-C   so that d/dt(eta) is exactly equal to - Div.Transport
-#define EXACT_CONSERV
+C-- Algorithm options:
 
-C o Allow the use of Non-Linear Free-Surface formulation
-C   this implies that surface thickness (hFactors) vary with time
-#undef NONLIN_FRSURF
+C o Use Non Self-Adjoint (NSA) conjugate-gradient solver
+#undef ALLOW_CG2D_NSA
 
 C o Include/exclude code for single reduction Conjugate-Gradient solver
 #define ALLOW_SRCG
@@ -93,6 +117,8 @@
 C   The following one suitable for AD but does not vectorize
 #undef SOLVE_DIAGONAL_KINNER
 
+C-- Retired code options:
+
 C o ALLOW isotropic scaling of harmonic and bi-harmonic terms when
 C   using an locally isotropic spherical grid with (dlambda) x (dphi*cos(phi))
 C *only for use on a lat-lon grid*
@@ -126,9 +152,15 @@
 C   is still useful with, e.g., single-domain curvilinear configurations.
 #undef OLD_GRID_IO
 
+C o Use thsice+seaice (old) call sequence: ice-Dyn,ice-Advect,ice-Thermo(thsice)
+C              as opposed to new sequence: ice-Thermo(thsice),ice-Dyn,ice-Advect
+#undef OLD_THSICE_CALL_SEQUENCE
+
 C o Use old EXTERNAL_FORCING_U,V,T,S subroutines (for backward compatibility)
 #undef USE_OLD_EXTERNAL_FORCING
 
+C-- Other option files:
+
 C o Execution environment support options
 #include "CPP_EEOPTIONS.h"
 

 

  ViewVC Help
Powered by ViewVC 1.1.22