1 |
dimitri |
1.10 |
C $Header: /u/gcmpack/MITgcm/pkg/seaice/SEAICE_OPTIONS.h,v 1.9 2004/03/12 22:18:15 dimitri Exp $ |
2 |
heimbach |
1.2 |
|
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 |
edhill |
1.7 |
C | package. | |
9 |
heimbach |
1.2 |
C \==========================================================/ |
10 |
|
|
|
11 |
edhill |
1.7 |
#ifndef SEAICE_OPTIONS_H |
12 |
|
|
#define SEAICE_OPTIONS_H |
13 |
|
|
#include "PACKAGES_CONFIG.h" |
14 |
|
|
#ifdef ALLOW_SEAICE |
15 |
|
|
|
16 |
heimbach |
1.2 |
#include "CPP_OPTIONS.h" |
17 |
|
|
|
18 |
dimitri |
1.3 |
C-- Write "text-plots" of certain fields in STDOUT for debugging. |
19 |
heimbach |
1.2 |
#undef SEAICE_DEBUG |
20 |
|
|
|
21 |
dimitri |
1.3 |
C-- Allow sea-ice dynamic code. |
22 |
|
|
C This option is provided to allow use of TAMC |
23 |
|
|
C on the thermodynamics component of the code only. |
24 |
|
|
C Sea-ice dynamics can also be turned off at runtime |
25 |
|
|
C using variable SEAICEuseDYNAMICS. |
26 |
heimbach |
1.2 |
#define SEAICE_ALLOW_DYNAMICS |
27 |
dimitri |
1.3 |
|
28 |
|
|
C-- By default, pkg/seaice defines forcing variable internally, in |
29 |
|
|
C SEAICE_FFIELDS.h, and reads them in from files. When CPP option |
30 |
|
|
C SEAICE_EXTERNAL_FORCING is defined, the above forcing variables |
31 |
|
|
C are defined and provided by an external package. At present this |
32 |
|
|
C option is hardwired for pkg/exf and the variables are passed using |
33 |
|
|
C include file exf_fields.h. |
34 |
dimitri |
1.9 |
#define SEAICE_EXTERNAL_FORCING |
35 |
dimitri |
1.8 |
#ifdef SEAICE_EXTERNAL_FORCING |
36 |
|
|
#include "EXF_OPTIONS.h" |
37 |
|
|
#endif /* SEAICE_EXTERNAL_FORCING */ |
38 |
dimitri |
1.3 |
|
39 |
|
|
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.9 |
#define SEAICE_EXTERNAL_FLUXES |
45 |
heimbach |
1.2 |
|
46 |
dimitri |
1.5 |
C-- By default, the sea-ice package uses 2-category thermodynamics. |
47 |
|
|
C When this flag is set, an 8-category calculation of ice |
48 |
|
|
C thermodynamics is carried out in groatb.F |
49 |
dimitri |
1.10 |
C Note the pickup_seaice.* generated by this option differ |
50 |
|
|
C from those generated with the default 2-category model. |
51 |
|
|
C Therefore it is not possible to switch between the two |
52 |
|
|
C in the middle of an integration. |
53 |
dimitri |
1.5 |
#undef SEAICE_MULTILEVEL |
54 |
|
|
|
55 |
dimitri |
1.10 |
C-- By default cdm wind stress under sea-ice is set to the |
56 |
|
|
C same value as it would be if there was no sea-ice. |
57 |
|
|
C This is a placeholder until a more physically-sensible |
58 |
|
|
C stable solution is developed. Apparently ocean stress |
59 |
|
|
C that is based on sea-ice velocity can cause trouble in |
60 |
|
|
C Arctic Ocean configurations. This temporary solution |
61 |
|
|
C also corresponds to that adopted by CCSM-2. For the |
62 |
|
|
C adventurous user who requires ice-modified stress, |
63 |
|
|
C following options are available. |
64 |
|
|
#undef SEAICE_ORIGINAL_BAD_ICE_STRESS |
65 |
|
|
#undef SEAICE_TEST_ICE_STRESS_1 |
66 |
|
|
|
67 |
dimitri |
1.4 |
#endif /* ALLOW_SEAICE */ |
68 |
edhill |
1.7 |
#endif /* SEAICE_OPTIONS_H */ |