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

Contents of /MITgcm/verification/lab_sea/code/SEAICE_OPTIONS.h

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


Revision 1.8 - (show annotations) (download)
Sat Sep 15 01:38:59 2007 UTC (16 years, 9 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint59g, checkpoint59l, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint59j
Changes since 1.7: +70 -14 lines
File MIME type: text/plain
adding ice salinity HSALT as a prognostic variable

1 C $Header: /u/gcmpack/MITgcm/pkg/seaice/SEAICE_OPTIONS.h,v 1.26 2007/09/04 23:16:37 dimitri Exp $
2 C $Name: $
3
4 C /==========================================================\
5 C | SEAICE_OPTIONS.h |
6 C | o CPP options file for sea ice package. |
7 C |==========================================================|
8 C | Use this file for selecting options within the sea ice |
9 C | package. |
10 C \==========================================================/
11
12 #ifndef SEAICE_OPTIONS_H
13 #define SEAICE_OPTIONS_H
14 #include "PACKAGES_CONFIG.h"
15 #include "CPP_OPTIONS.h"
16
17 C-- Write "text-plots" of certain fields in STDOUT for debugging.
18 #undef SEAICE_DEBUG
19
20 C-- Allow sea-ice dynamic code.
21 C This option is provided to allow use of TAMC
22 C on the thermodynamics component of the code only.
23 C Sea-ice dynamics can also be turned off at runtime
24 C using variable SEAICEuseDYNAMICS.
25 #define SEAICE_ALLOW_DYNAMICS
26
27 C-- By default, pkg/seaice defines forcing variable internally, in
28 C SEAICE_FFIELDS.h, and reads them in from files. When CPP option
29 C SEAICE_EXTERNAL_FORCING is defined, the above forcing variables
30 C are defined and provided by an external package. At present this
31 C option is hardwired for pkg/exf and the variables are passed using
32 C include file EXF_FIELDS.h (=> cannot be defined without pkg/EXF )
33 #define SEAICE_EXTERNAL_FORCING
34 #ifndef ALLOW_EXF
35 # undef SEAICE_EXTERNAL_FORCING
36 #endif
37
38 #ifdef SEAICE_EXTERNAL_FORCING
39 # include "EXF_OPTIONS.h"
40 C-- By default, the sea-ice package uses its own integrated bulk
41 C formulae to compute fluxes (fu, fv, EmPmR, Qnet, and Qsw) over
42 C open-ocean. When this flag is set, these variables are computed
43 C in a separate external package, for example, pkg/exf, and then
44 C modified for sea-ice effects by pkg/seaice.
45 # define SEAICE_EXTERNAL_FLUXES
46
47 #else /* SEAICE_EXTERNAL_FORCING */
48 C- current implementation requires those options to be set:
49 # undef SEAICE_EXTERNAL_FLUXES
50 # define ALLOW_ATM_TEMP
51 # define ALLOW_DOWNWARD_RADIATION
52 # define ALLOW_RUNOFF
53
54 #endif /* SEAICE_EXTERNAL_FORCING */
55
56 #ifdef ALLOW_OBCS
57 C- OBCS information is needed to define the correct sea ice mask.
58 #include "OBCS_OPTIONS.h"
59 #endif /* ALLOW_OBCS */
60
61 C-- By default, the sea-ice package uses 2-category thermodynamics.
62 C When this flag is set, an 8-category calculation of ice
63 C thermodynamics is carried out in groatb.F
64 C Note the pickup_seaice.* generated by this option differ
65 C from those generated with the default 2-category model.
66 C Therefore it is not possible to switch between the two
67 C in the middle of an integration.
68 #undef SEAICE_MULTICATEGORY
69
70 C-- By default for B-grid dynamics solver wind stress under sea-ice is
71 C set to the same value as it would be if there was no sea-ice.
72 C Define following CPP flag for B-grid ice-ocean stress coupling.
73 #undef SEAICE_TEST_ICE_STRESS_1
74
75 C-- By default for B-grid dynamics solver surface tilt is obtained
76 C indirectly via geostrophic velocities. Define following CPP
77 C in order to ues ETAN instead.
78 #undef EXPLICIT_SSH_SLOPE
79
80 C-- By default the freezing point of water is set to the value of
81 C the parameter SEAICE_freeze (=-1.96 by default). To use a
82 C simple linear dependence of the freezing point on salinity,
83 C set the following flag (pressure is assumed to have no effect,
84 C which is a good assumption for the top 20 meters). With this
85 C option defined the parameter SEAICE_freeze has no effect.
86 #undef SEAICE_VARIABLE_FREEZING_POINT
87
88 C-- Allow SEAICEuseFlooding, which converts snow to ice if submerged.
89 #undef ALLOW_SEAICE_FLOODING
90
91 C-- By default sea ice is fresh. Set following flag for salty ice.
92 #define SEAICE_SALINITY
93
94 C-- By default the seaice model is discretized on a B-Grid (for
95 C historical reasons). Define the following flag to use a new
96 C (not thoroughly) test version on a C-grid
97 #define SEAICE_CGRID
98
99 C-- Only for the C-grid version it is possible to enable EVP code by
100 C defining the following flag
101 #ifdef SEAICE_CGRID
102 #define SEAICE_ALLOW_EVP
103 #endif /* SEAICE_CGRID */
104
105 C-- When set use MAX_HEFF to cap sea ice thickness in seaice_growth
106 #undef SEAICE_CAP_HEFF
107
108 #endif /* SEAICE_OPTIONS_H */
109
110 CEH3 ;;; Local Variables: ***
111 CEH3 ;;; mode:fortran ***
112 CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22