/[MITgcm]/MITgcm/pkg/seaice/SEAICE_OPTIONS.h
ViewVC logotype

Contents of /MITgcm/pkg/seaice/SEAICE_OPTIONS.h

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


Revision 1.21 - (show annotations) (download)
Mon Apr 30 00:15:09 2007 UTC (17 years, 1 month ago) by jmc
Branch: MAIN
CVS Tags: checkpoint59a
Changes since 1.20: +4 -1 lines
File MIME type: text/plain
add all needed EXF #ifdef and define them in SEAICE_OPTIONS.h if not using EXF

1 C $Header: /u/gcmpack/MITgcm/pkg/seaice/SEAICE_OPTIONS.h,v 1.20 2007/04/16 22:38:15 jmc 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.
33 #define SEAICE_EXTERNAL_FORCING
34 #ifdef SEAICE_EXTERNAL_FORCING
35 #include "EXF_OPTIONS.h"
36 #else /* ndef SEAICE_EXTERNAL_FORCING */
37 #define ALLOW_ATM_TEMP
38 #define ALLOW_DOWNWARD_RADIATION
39 #endif /* SEAICE_EXTERNAL_FORCING */
40
41 C-- By default, the sea-ice package uses its own integrated bulk
42 C formulae to compute fluxes (fu, fv, EmPmR, Qnet, and Qsw) over
43 C open-ocean. When this flag is set, these variables are computed
44 C in a separate external package, for example, pkg/exf, and then
45 C modified for sea-ice effects by pkg/seaice.
46 #define SEAICE_EXTERNAL_FLUXES
47
48 C-- By default, the sea-ice package uses 2-category thermodynamics.
49 C When this flag is set, an 8-category calculation of ice
50 C thermodynamics is carried out in groatb.F
51 C Note the pickup_seaice.* generated by this option differ
52 C from those generated with the default 2-category model.
53 C Therefore it is not possible to switch between the two
54 C in the middle of an integration.
55 #undef SEAICE_MULTICATEGORY
56
57 C-- By default cdm wind stress under sea-ice is set to the
58 C same value as it would be if there was no sea-ice.
59 C This is a placeholder until a more physically-sensible
60 C stable solution is developed. Apparently ocean stress
61 C that is based on sea-ice velocity can cause trouble in
62 C Arctic Ocean configurations. This temporary solution
63 C also corresponds to that adopted by CCSM-2. For the
64 C adventurous user who requires ice-modified stress,
65 C following options are available.
66 #undef SEAICE_ORIGINAL_BAD_ICE_STRESS
67 #undef SEAICE_TEST_ICE_STRESS_1
68
69 C-- By default the freezing point of water is set to the value of
70 C the parameter SEAICE_freeze (=-1.96 by default). To use a
71 C simple linear dependence of the freezing point on salinity,
72 C set the following flag (pressure is assumed to have no effect,
73 C which is a good assumption for the top 20 meters). With this
74 C option defined the parameter SEAICE_freeze has no effect.
75 #undef SEAICE_VARIABLE_FREEZING_POINT
76
77 C-- Allow SEAICEuseFlooding, which converts snow to ice if submerged.
78 #undef ALLOW_SEAICE_FLOODING
79
80 C-- By default the seaice model is discretized on a B-Grid (for
81 C historical reasons). Define the following flag to use a new
82 C (not thoroughly) test version on a C-grid
83 #define SEAICE_CGRID
84
85 C-- Only for the C-grid version it is possible to enable EVP code by
86 C defining the following flag
87 #ifdef SEAICE_CGRID
88 #define SEAICE_ALLOW_EVP
89 #endif /* SEAICE_CGRID */
90
91 #endif /* SEAICE_OPTIONS_H */
92
93 CEH3 ;;; Local Variables: ***
94 CEH3 ;;; mode:fortran ***
95 CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22