/[MITgcm]/MITgcm_contrib/verification_other/shelfice_remeshing/code/SHELFICE.h
ViewVC logotype

Contents of /MITgcm_contrib/verification_other/shelfice_remeshing/code/SHELFICE.h

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


Revision 1.4 - (show annotations) (download)
Mon Jan 25 14:07:12 2016 UTC (9 years, 5 months ago) by dgoldberg
Branch: MAIN
Changes since 1.3: +10 -5 lines
File MIME type: text/plain
mod files -- effective mass of ice shelf and SL restore

1 C $Header: /u/gcmpack/MITgcm_contrib/verification_other/shelfice_remeshing/code/SHELFICE.h,v 1.3 2016/01/22 18:09:42 dgoldberg Exp $
2 C $Name: $
3
4 #ifdef ALLOW_SHELFICE
5
6 CBOP
7 C !ROUTINE: SHELFICE.h
8
9 C !DESCRIPTION: \bv
10 C *==========================================================*
11 C | SHELFICE.h
12 C | o Basic header thermodnynamic shelf ice package.
13 C | Contains all SHELFICE field declarations.
14 C *==========================================================*
15
16 C-----------------------------------------------------------------------
17 C
18 C-- Constants that can be set in data.shelfice
19 C SHELFICEtopoFile :: File containing the topography of the
20 C shelfice draught (unit=m)
21 C SHELFICEGroundTopoFile :: File containing the topography of "grounded"
22 c ice (unit=m)
23 C SHELFICEmassFile :: name of shelfice Mass file
24 C SHELFICEGroundInitFile :: name of GroundingMass file, equivalent to justC float ice at GroundTopo level
25 C SHELFICEloadAnomalyFile :: name of shelfice load anomaly file
26 C SHELFICEMassDynTendFile :: file name for other mass tendency
27 C (e.g. dynamics)
28 C useISOMIPTD :: use simple ISOMIP thermodynamics, def: F
29 C SHELFICEconserve :: use conservative form of H&O-thermodynamics
30 C following Jenkins et al. (2001, JPO), def: F
31 C SHELFICEMassStepping :: flag to step forward ice shelf mass/thickness
32 C accounts for melting/freezing & dynamics
33 C (from file or from coupling), def: F
34 C SHELFICEDynMassOnly :: step ice mass ONLY with Shelficemassdyntendency
35 C (not melting/freezing) def: F
36 C SHELFICEboundaryLayer :: turn on vertical merging of cells to for a
37 C boundary layer of drF thickness, def: F
38 C SHELFICEthickboundaryLayer
39 C :: similar to boundary layer but allow for a thicker
40 C layer, encompassing 3 cells in vertical, def: F
41 C SHELFICErealFWflux :: ensure vert advective flux at bdry uses top cell
42 C value rather than "boundary layer" value F
43 C SHELFICEadvDiffHeatFlux :: use advective-diffusive heat flux into the
44 C ice shelf instead of default diffusive heat
45 C flux, see Holland and Jenkins (1999),
46 C eq.21,22,26,31; def: F
47 C SHELFICEheatTransCoeff :: constant heat transfer coefficient that
48 C determines heat flux into shelfice
49 C (def: 1e-4 m/s)
50 C SHELFICEsaltTransCoeff :: constant salinity transfer coefficient that
51 C determines salt flux into shelfice
52 C (def: 5.05e-3 * 1e-4 m/s)
53 C -----------------------------------------------------------------------
54 C SHELFICEuseGammaFrict :: use velocity dependent exchange coefficients,
55 C see Holland and Jenkins (1999), eq.11-18,
56 C with the following parameters (def: F):
57 C shiCdrag :: quadratic drag coefficient to compute uStar
58 C (def: 0.0015)
59 C shiZetaN :: ??? (def: 0.052)
60 C shiRc :: ??? (not used, def: 0.2)
61 C shiPrandtl, shiSchmidt :: constant Prandtl (13.8) and Schmidt (2432.0)
62 C numbers used to compute gammaTurb
63 C shiKinVisc :: constant kinetic viscosity used to compute
64 C gammaTurb (def: 1.95e-5)
65 C SHELFICERemeshFrequency :: Frequency that size of etaN is checked to
66 C trigger remesh
67 C SHELFICESplitThreshold :: Max size of etaN allowed before a remesh
68 C SHELFICEMergeThreshold :: Min size of etaN allowed before a remesh
69 C -----------------------------------------------------------------------
70 C SHELFICEDragLinear :: linear drag at bottom shelfice (1/s)
71 C SHELFICEDragQuadratic :: quadratic drag at bottom shelfice (default
72 C = shiCdrag or bottomDragQuadratic)
73 C no_slip_shelfice :: set slip conditions for shelfice separately,
74 C (by default the same as no_slip_bottom, but
75 C really should be false when there is linear
76 C or quadratic drag)
77 C SHELFICElatentHeat :: latent heat of fusion (def: 334000 J/kg)
78 C SHELFICEwriteState :: enable output
79 C SHELFICEHeatCapacity_Cp :: heat capacity of ice shelf (def: 2000 J/K/kg)
80 C rhoShelfIce :: density of ice shelf (def: 917.0 kg/m^3)
81 C
82 C SHELFICE_dump_mnc :: use netcdf for snapshot output
83 C SHELFICE_tave_mnc :: use netcdf for time-averaged output
84 C SHELFICE_dumpFreq :: analoguous to dumpFreq (= default)
85 C SHELFICE_taveFreq :: analoguous to taveFreq (= default)
86 C
87 C-- Fields
88 C ktopC :: index of the top "wet cell" (2D)
89 C R_shelfIce :: shelfice topography [m]
90 C R_Grounding :: "grounded" ice topography [m]
91 C shelficeMassInit :: ice-shelf mass (per unit area) (kg/m^2)
92 C shelficeMass :: ice-shelf mass (per unit area) (kg/m^2)
93 C shelfIceMassDynTendency :: other mass balance tendency (kg/m^2/s)
94 C :: (e.g., from dynamics)
95 C shelficeLoadAnomaly :: pressure load anomaly of shelfice (Pa)
96 C shelficeHeatFlux :: upward heat flux (W/m^2)
97 C shelficeFreshWaterFlux :: upward fresh water flux (virt. salt flux)
98 C (kg/m^2/s)
99 C shelficeForcingT :: analogue of surfaceForcingT
100 C units are r_unit.Kelvin/s (=Kelvin.m/s if r=z)
101 C shelficeForcingS :: analogue of surfaceForcingS
102 C units are r_unit.psu/s (=psu.m/s if r=z)
103 C-----------------------------------------------------------------------
104 C \ev
105 CEOP
106
107 COMMON /SHELFICE_PARMS_I/ kTopC,
108 & SHELFICEselectDragQuadr,
109 & shelfice_etarestore_spongewidth
110 INTEGER kTopC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
111 INTEGER SHELFICEselectDragQuadr
112 INTEGER shelfice_etarestore_spongewidth
113
114 COMMON /SHELFICE_PARMS_R/
115 & SHELFICE_dumpFreq, SHELFICE_taveFreq,
116 & SHELFICEheatTransCoeff, SHELFICEsaltTransCoeff,
117 & rhoShelfice, SHELFICEkappa,
118 & SHELFICElatentHeat,
119 & SHELFICEheatCapacity_Cp,
120 & SHELFICEthetaSurface,
121 & SHELFICEDragLinear, SHELFICEDragQuadratic,
122 & shiCdrag, shiZetaN, shiRc,
123 & shiPrandtl, shiSchmidt, shiKinVisc,
124 & SHELFICERemeshFrequency,
125 & SHELFICESplitThreshold,
126 & SHELFICEMergeThreshold,
127 & shelficeEtaRelax
128 _RL SHELFICE_dumpFreq, SHELFICE_taveFreq
129 _RL SHELFICEheatTransCoeff
130 _RL SHELFICEsaltTransCoeff
131 _RL SHELFICElatentHeat
132 _RL SHELFICEheatCapacity_Cp
133 _RL rhoShelfice
134 _RL SHELFICEkappa
135 _RL SHELFICEDragLinear
136 _RL SHELFICEDragQuadratic, SHELFICEMergeThreshold
137 _RL SHELFICEthetaSurface, SHELFICESplitThreshold
138 _RL shiCdrag, shiZetaN, shiRc, SHELFICERemeshFrequency
139 _RL shiPrandtl, shiSchmidt, shiKinVisc
140 _RL SHELFICEGroundW, SHELFICEGroundC, shelficeEtaRelax
141 COMMON /SHELFICE_FIELDS_RL/
142 & shelficeMass, shelficeMassInit, shelficeGroundInit,
143 & shelficeLoadAnomaly,
144 & shelficeForcingT, shelficeForcingS,
145 & shiTransCoeffT, shiTransCoeffS, EFFMASS
146 _RL shelficeMass (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
147 _RL shelficeMassInit (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
148 _RL shelficeGroundInit (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
149 _RL shelficeLoadAnomaly (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
150 _RL shelficeForcingT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
151 _RL shelficeForcingS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
152 _RL shiTransCoeffT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
153 _RL shiTransCoeffS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
154 _RL EFFMASS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
155 _RL SeaLevelRestore (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
156
157 COMMON /SHELFICE_FIELDS_RS/
158 & R_shelfIce,
159 & R_Grounding,
160 & shelficeHeatFlux,
161 & shelfIceFreshWaterFlux,
162 & shelfIceMassDynTendency
163 _RS R_shelfIce (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
164 _RS R_Grounding (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
165 _RS shelficeHeatFlux (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
166 _RS shelficeFreshWaterFlux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
167 _RS
168 & shelfIceMassDynTendency(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
169
170 #ifdef ALLOW_SHIFWFLX_CONTROL
171 COMMON /SHELFICE_MASKS_CTRL/ maskSHI
172 _RS maskSHI (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
173 #endif /* ALLOW_SHIFWFLX_CONTROL */
174
175 LOGICAL SHELFICEisOn
176 LOGICAL useISOMIPTD
177 LOGICAL SHELFICEconserve
178 LOGICAL SHELFICEboundaryLayer
179 LOGICAL SHELFICEthickBoundaryLayer
180 LOGICAL SHELFICErealFWflux
181 LOGICAL no_slip_shelfice
182 LOGICAL SHELFICEwriteState
183 LOGICAL SHELFICE_dump_mdsio
184 LOGICAL SHELFICE_tave_mdsio
185 LOGICAL SHELFICE_dump_mnc
186 LOGICAL SHELFICE_tave_mnc
187 LOGICAL SHELFICEadvDiffHeatFlux
188 LOGICAL SHELFICEuseGammaFrict
189 LOGICAL SHELFICEMassStepping
190 LOGICAL SHELFICEDynMassOnly
191 LOGICAL SHELFICEEtaSponge
192 COMMON /SHELFICE_PARMS_L/
193 & SHELFICEisOn,
194 & useISOMIPTD,
195 & SHELFICEconserve,
196 & SHELFICErealFWflux,
197 & SHELFICEboundaryLayer,
198 & SHELFICEthickBoundaryLayer,
199 & no_slip_shelfice,
200 & SHELFICEwriteState,
201 & SHELFICE_dump_mdsio,
202 & SHELFICE_tave_mdsio,
203 & SHELFICE_dump_mnc,
204 & SHELFICE_tave_mnc,
205 & SHELFICEadvDiffHeatFlux,
206 & SHELFICEuseGammaFrict,
207 & SHELFICEMassStepping,
208 & SHELFICEDynMassOnly,
209 & SHELFICEEtaSponge
210
211 CHARACTER*(MAX_LEN_FNAM) SHELFICEloadAnomalyFile
212 CHARACTER*(MAX_LEN_FNAM) SHELFICEmassFile
213 CHARACTER*(MAX_LEN_FNAM) SHELFICEGroundTopoFile
214 CHARACTER*(MAX_LEN_FNAM) SHELFICEtopoFile
215 CHARACTER*(MAX_LEN_FNAM) SHELFICEMassDynTendFile
216 CHARACTER*(MAX_LEN_FNAM) SHELFICEGroundInitFile
217 CHARACTER*(MAX_LEN_FNAM) SHELFICETransCoeffTFile
218
219
220 COMMON /SHELFICE_PARM_C/
221 & SHELFICEloadAnomalyFile,
222 & SHELFICEmassFile,
223 & SHELFICEtopoFile,
224 & SHELFICEGroundTopoFile,
225 & SHELFICEMassDynTendFile,
226 & SHELFICEGroundInitFile,
227 & SHELFICETransCoeffTFile
228
229 #endif /* ALLOW_SHELFICE */

  ViewVC Help
Powered by ViewVC 1.1.22