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

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

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


Revision 1.12 - (hide annotations) (download)
Thu Jul 19 19:14:40 2007 UTC (17 years, 11 months ago) by dimitri
Branch: MAIN
Changes since 1.11: +8 -1 lines
File MIME type: text/plain
cube66 configuration but using the new SEAICE_CAP_HEFF
option rather than code change to seaice_growth.F

1 dimitri 1.12 C $Header: /u/gcmpack/MITgcm_contrib/high_res_cube/code-mods/SEAICE_OPTIONS.h,v 1.11 2007/06/22 20:16:51 dimitri Exp $
2 dimitri 1.1
3     C /==========================================================\
4     C | SEAICE_OPTIONS.h |
5     C | o CPP options file for sea ice package. |
6     C |==========================================================|
7     C | Use this file for selecting options within the sea ice |
8     C | package. |
9     C \==========================================================/
10    
11     #ifndef SEAICE_OPTIONS_H
12     #define SEAICE_OPTIONS_H
13     #include "PACKAGES_CONFIG.h"
14     #include "CPP_OPTIONS.h"
15    
16     C-- Write "text-plots" of certain fields in STDOUT for debugging.
17     #undef SEAICE_DEBUG
18    
19     C-- Allow sea-ice dynamic code.
20     C This option is provided to allow use of TAMC
21     C on the thermodynamics component of the code only.
22     C Sea-ice dynamics can also be turned off at runtime
23     C using variable SEAICEuseDYNAMICS.
24 dimitri 1.3 #define SEAICE_ALLOW_DYNAMICS
25 dimitri 1.1
26     C-- By default, pkg/seaice defines forcing variable internally, in
27     C SEAICE_FFIELDS.h, and reads them in from files. When CPP option
28     C SEAICE_EXTERNAL_FORCING is defined, the above forcing variables
29     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
31 dimitri 1.11 C include file EXF_FIELDS.h (=> cannot be defined without pkg/EXF )
32 dimitri 1.1 #define SEAICE_EXTERNAL_FORCING
33 dimitri 1.11 #ifndef ALLOW_EXF
34     # undef SEAICE_EXTERNAL_FORCING
35     #endif
36 dimitri 1.1
37 dimitri 1.11 #ifdef SEAICE_EXTERNAL_FORCING
38     # include "EXF_OPTIONS.h"
39 dimitri 1.1 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
41     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
43     C modified for sea-ice effects by pkg/seaice.
44 dimitri 1.11 # 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 dimitri 1.12 #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 dimitri 1.1
60     C-- By default, the sea-ice package uses 2-category thermodynamics.
61     C When this flag is set, an 8-category calculation of ice
62     C thermodynamics is carried out in groatb.F
63 dimitri 1.4 C Note the pickup_seaice.* generated by this option differ
64     C from those generated with the default 2-category model.
65     C Therefore it is not possible to switch between the two
66     C in the middle of an integration.
67 dimitri 1.11 #define SEAICE_MULTICATEGORY
68 dimitri 1.1
69 dimitri 1.4 C-- By default cdm wind stress under sea-ice is set to the
70     C same value as it would be if there was no sea-ice.
71     C This is a placeholder until a more physically-sensible
72     C stable solution is developed. Apparently ocean stress
73     C that is based on sea-ice velocity can cause trouble in
74     C Arctic Ocean configurations. This temporary solution
75     C also corresponds to that adopted by CCSM-2. For the
76     C adventurous user who requires ice-modified stress,
77     C following options are available.
78     #undef SEAICE_ORIGINAL_BAD_ICE_STRESS
79 dimitri 1.6 #undef SEAICE_TEST_ICE_STRESS_1
80 dimitri 1.4
81 dimitri 1.7 C-- By default the freezing point of water is set to the value of
82     C the parameter SEAICE_freeze (=-1.96 by default). To use a
83     C simple linear dependence of the freezing point on salinity,
84     C set the following flag (pressure is assumed to have no effect,
85     C which is a good assumption for the top 20 meters). With this
86     C option defined the parameter SEAICE_freeze has no effect.
87 dimitri 1.11 #define SEAICE_VARIABLE_FREEZING_POINT
88 dimitri 1.7
89 dimitri 1.8 C-- Allow SEAICEuseFlooding, which converts snow to ice if submerged.
90     #define ALLOW_SEAICE_FLOODING
91    
92 dimitri 1.7 C-- By default the seaice model is discretized on a B-Grid (for
93     C historical reasons). Define the following flag to use a new
94     C (not thoroughly) test version on a C-grid
95     #define SEAICE_CGRID
96    
97     C-- Only for the C-grid version it is possible to enable EVP code by
98     C defining the following flag
99     #ifdef SEAICE_CGRID
100     #undef SEAICE_ALLOW_EVP
101     #endif /* SEAICE_CGRID */
102    
103 dimitri 1.12 C-- When set use MAX_HEFF to cap sea ice thickness in seaice_growth
104     #define SEAICE_CAP_HEFF
105    
106 dimitri 1.1 #endif /* SEAICE_OPTIONS_H */
107 dimitri 1.7
108     CEH3 ;;; Local Variables: ***
109     CEH3 ;;; mode:fortran ***
110     CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22