/[MITgcm]/MITgcm_contrib/high_res_cube/code-mods/SEAICE_OPTIONS.h
ViewVC logotype

Diff of /MITgcm_contrib/high_res_cube/code-mods/SEAICE_OPTIONS.h

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

revision 1.4 by dimitri, Wed Dec 22 17:32:21 2004 UTC revision 1.13 by dimitri, Mon Oct 15 18:22:58 2007 UTC
# Line 11  C     \================================= Line 11  C     \=================================
11  #ifndef SEAICE_OPTIONS_H  #ifndef SEAICE_OPTIONS_H
12  #define SEAICE_OPTIONS_H  #define SEAICE_OPTIONS_H
13  #include "PACKAGES_CONFIG.h"  #include "PACKAGES_CONFIG.h"
 #ifdef ALLOW_SEAICE  
   
14  #include "CPP_OPTIONS.h"  #include "CPP_OPTIONS.h"
15    
16  C--   Write "text-plots" of certain fields in STDOUT for debugging.  C--   Write "text-plots" of certain fields in STDOUT for debugging.
# Line 30  C     SEAICE_FFIELDS.h, and reads them i Line 28  C     SEAICE_FFIELDS.h, and reads them i
28  C     SEAICE_EXTERNAL_FORCING is defined, the above forcing variables  C     SEAICE_EXTERNAL_FORCING is defined, the above forcing variables
29  C     are defined and provided by an external package.  At present this  C     are defined and provided by an external package.  At present this
30  C     option is hardwired for pkg/exf and the variables are passed using  C     option is hardwired for pkg/exf and the variables are passed using
31  C     include file exf_fields.h.  C     include file EXF_FIELDS.h (=> cannot be defined without pkg/EXF )
32  #define SEAICE_EXTERNAL_FORCING  #define SEAICE_EXTERNAL_FORCING
33  #ifdef SEAICE_EXTERNAL_FORCING  #ifndef ALLOW_EXF
34  #include "EXF_OPTIONS.h"  # undef SEAICE_EXTERNAL_FORCING
35  #endif /* SEAICE_EXTERNAL_FORCING */  #endif
36    
37    #ifdef  SEAICE_EXTERNAL_FORCING
38    #  include "EXF_OPTIONS.h"
39  C--   By default, the sea-ice package uses its own integrated bulk  C--   By default, the sea-ice package uses its own integrated bulk
40  C     formulae to compute fluxes (fu, fv, EmPmR, Qnet, and Qsw) over  C     formulae to compute fluxes (fu, fv, EmPmR, Qnet, and Qsw) over
41  C     open-ocean.  When this flag is set, these variables are computed  C     open-ocean.  When this flag is set, these variables are computed
42  C     in a separate external package, for example, pkg/exf, and then  C     in a separate external package, for example, pkg/exf, and then
43  C     modified for sea-ice effects by pkg/seaice.  C     modified for sea-ice effects by pkg/seaice.
44  #define SEAICE_EXTERNAL_FLUXES  # define SEAICE_EXTERNAL_FLUXES
45    
46    #else  /* SEAICE_EXTERNAL_FORCING */
47    C-    current implementation requires those options to be set:
48    # undef  SEAICE_EXTERNAL_FLUXES
49    # define ALLOW_ATM_TEMP
50    # define ALLOW_DOWNWARD_RADIATION
51    # define ALLOW_RUNOFF
52    
53    #endif /* SEAICE_EXTERNAL_FORCING */
54    
55    #ifdef ALLOW_OBCS
56    C- OBCS information is needed to define the correct sea ice mask.
57    #include "OBCS_OPTIONS.h"
58    #endif /* ALLOW_OBCS */
59    
60  C--   By default, the sea-ice package uses 2-category thermodynamics.  C--   By default, the sea-ice package uses 2-category thermodynamics.
61  C     When this flag is set, an 8-category calculation of ice  C     When this flag is set, an 8-category calculation of ice
# Line 50  C     Note the pickup_seaice.* generated Line 64  C     Note the pickup_seaice.* generated
64  C     from those generated with the default 2-category model.  C     from those generated with the default 2-category model.
65  C     Therefore it is not possible to switch between the two  C     Therefore it is not possible to switch between the two
66  C     in the middle of an integration.  C     in the middle of an integration.
67  #undef SEAICE_MULTILEVEL  #define SEAICE_MULTICATEGORY
68    
69  C--   By default cdm wind stress under sea-ice is set to the  C--   By default for B-grid dynamics solver wind stress under sea-ice is
70  C     same value as it would be if there was no sea-ice.  C     set to the same value as it would be if there was no sea-ice.
71  C     This is a placeholder until a more physically-sensible  C     Define following CPP flag for B-grid ice-ocean stress coupling.
72  C     stable solution is developed.  Apparently ocean stress  #undef SEAICE_TEST_ICE_STRESS_1
73  C     that is based on sea-ice velocity can cause trouble in  
74  C     Arctic Ocean configurations.  This temporary solution  C--   By default for B-grid dynamics solver surface tilt is obtained
75  C     also corresponds to that adopted by CCSM-2.  For the  C     indirectly via geostrophic velocities.  Define following CPP
76  C     adventurous user who requires ice-modified stress,  C     in order to ues ETAN instead.
77  C     following options are available.  #undef EXPLICIT_SSH_SLOPE
78  #undef SEAICE_ORIGINAL_BAD_ICE_STRESS  
79  #define SEAICE_TEST_ICE_STRESS_1  C--   By default the freezing point of water is set to the value of
80    C     the parameter SEAICE_freeze (=-1.96 by default). To use a
81    C     simple linear dependence of the freezing point on salinity,
82    C     set the following flag (pressure is assumed to have no effect,
83    C     which is a good assumption for the top 20 meters). With this
84    C     option defined the parameter SEAICE_freeze has no effect.
85    #define SEAICE_VARIABLE_FREEZING_POINT
86    
87    C--   Allow SEAICEuseFlooding, which converts snow to ice if submerged.
88    #define ALLOW_SEAICE_FLOODING
89    
90    C--   By default sea ice is fresh.  Set following flag for salty ice.
91    #define SEAICE_SALINITY
92    
93    C--   By default the seaice model is discretized on a B-Grid (for
94    C     historical reasons). Define the following flag to use a new
95    C     (not thoroughly) test version on a C-grid
96    #define SEAICE_CGRID
97    
98    C--   Only for the C-grid version it is possible to enable EVP code by
99    C     defining the following flag
100    #ifdef SEAICE_CGRID
101    #undef SEAICE_ALLOW_EVP
102    #endif /* SEAICE_CGRID */
103    
104    C--   When set use MAX_HEFF to cap sea ice thickness in seaice_growth
105    #define SEAICE_CAP_HEFF
106    
 #endif /* ALLOW_SEAICE */  
107  #endif /* SEAICE_OPTIONS_H */  #endif /* SEAICE_OPTIONS_H */
108    
109    CEH3 ;;; Local Variables: ***
110    CEH3 ;;; mode:fortran ***
111    CEH3 ;;; End: ***

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.13

  ViewVC Help
Powered by ViewVC 1.1.22