/[MITgcm]/MITgcm_contrib/ksnow/press_release/code_expt/SHELFICE.h
ViewVC logotype

Contents of /MITgcm_contrib/ksnow/press_release/code_expt/SHELFICE.h

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


Revision 1.1 - (show annotations) (download)
Fri Dec 16 15:25:29 2016 UTC (8 years, 7 months ago) by ksnow
Branch: MAIN
File MIME type: text/plain
Adding shelfice_remeshing files for experiment

1 C $Header: /u/gcmpack/MITgcm_contrib/verification_other/shelfice_remeshing/code/SHELFICE.h,v 1.8 2016/07/06 18:03:40 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 SHELFICEmassFile :: name of shelfice Mass file
22 C SHELFICEmassForcingFile :: name of time-dependent shelfice Mass file
23 C SHELFICEloadAnomalyFile :: name of shelfice load anomaly file
24 C SHELFICEMassDynTendFile :: file name for other mass tendency
25 C (e.g. dynamics)
26 C useISOMIPTD :: use simple ISOMIP thermodynamics, def: F
27 C SHELFICEconserve :: use conservative form of H&O-thermodynamics
28 C following Jenkins et al. (2001, JPO), def: F
29 C SHELFICEMassStepping :: flag to step forward ice shelf mass/thickness
30 C accounts for melting/freezing & dynamics
31 C (from file or from coupling), def: F
32 C SHELFICEDynMassOnly :: step ice mass ONLY with Shelficemassdyntendency
33 C (not melting/freezing) def: F
34 C SHELFICEboundaryLayer :: turn on vertical merging of cells to for a
35 C boundary layer of drF thickness, def: F
36 C SHELFICErealFWflux :: ensure vert advective flux at bdry uses top cell
37 C value rather than "boundary layer" value F
38 C SHELFICEadvDiffHeatFlux :: use advective-diffusive heat flux into the
39 C ice shelf instead of default diffusive heat
40 C flux, see Holland and Jenkins (1999),
41 C eq.21,22,26,31; def: F
42 C SHELFICEheatTransCoeff :: constant heat transfer coefficient that
43 C determines heat flux into shelfice
44 C (def: 1e-4 m/s)
45 C SHELFICEsaltTransCoeff :: constant salinity transfer coefficient that
46 C determines salt flux into shelfice
47 C (def: 5.05e-3 * 1e-4 m/s)
48 C -----------------------------------------------------------------------
49 C SHELFICEuseGammaFrict :: use velocity dependent exchange coefficients,
50 C see Holland and Jenkins (1999), eq.11-18,
51 C with the following parameters (def: F):
52 C shiCdrag :: quadratic drag coefficient to compute uStar
53 C (def: 0.0015)
54 C shiZetaN :: ??? (def: 0.052)
55 C shiRc :: ??? (not used, def: 0.2)
56 C shiPrandtl, shiSchmidt :: constant Prandtl (13.8) and Schmidt (2432.0)
57 C numbers used to compute gammaTurb
58 C shiKinVisc :: constant kinetic viscosity used to compute
59 C gammaTurb (def: 1.95e-5)
60 C SHELFICERemeshFrequency :: Frequency that size of etaN is checked to
61 C trigger remesh
62 C SHELFICESplitThreshold :: Max size of etaN allowed before a remesh
63 C SHELFICEMergeThreshold :: Min size of etaN allowed before a remesh
64 C -----------------------------------------------------------------------
65 C SHELFICEDragLinear :: linear drag at bottom shelfice (1/s)
66 C SHELFICEDragQuadratic :: quadratic drag at bottom shelfice (default
67 C = shiCdrag or bottomDragQuadratic)
68 C no_slip_shelfice :: set slip conditions for shelfice separately,
69 C (by default the same as no_slip_bottom, but
70 C really should be false when there is linear
71 C or quadratic drag)
72 C SHELFICElatentHeat :: latent heat of fusion (def: 334000 J/kg)
73 C SHELFICEwriteState :: enable output
74 C SHELFICEHeatCapacity_Cp :: heat capacity of ice shelf (def: 2000 J/K/kg)
75 C rhoShelfIce :: density of ice shelf (def: 917.0 kg/m^3)
76 C
77 C SHELFICE_dump_mnc :: use netcdf for snapshot output
78 C SHELFICE_tave_mnc :: use netcdf for time-averaged output
79 C SHELFICE_dumpFreq :: analoguous to dumpFreq (= default)
80 C SHELFICE_taveFreq :: analoguous to taveFreq (= default)
81 C conserve_ssh :: KS16. Use the obcs to conserve net open
82 C ocean eta to 0m
83 C useshelficemassforcing :: flag to update shelficemass from file
84 C shelfice_forcing_period :: freq of update of mass from file
85 C
86 C-- Fields
87 C ktopC :: index of the top "wet cell" (2D)
88 C R_shelfIce :: shelfice topography [m]
89 C shelficeMassInit :: ice-shelf mass (per unit area) (kg/m^2)
90 C shelficeMass :: ice-shelf mass (per unit area) (kg/m^2)
91 C shelfIceMassDynTendency :: other mass balance tendency (kg/m^2/s)
92 C :: (e.g., from dynamics)
93 C shelficeLoadAnomaly :: pressure load anomaly of shelfice (Pa)
94 C shelficeHeatFlux :: upward heat flux (W/m^2)
95 C shelficeFreshWaterFlux :: upward fresh water flux (virt. salt flux)
96 C (kg/m^2/s)
97 C shelficeForcingT :: analogue of surfaceForcingT
98 C units are r_unit.Kelvin/s (=Kelvin.m/s if r=z)
99 C shelficeForcingS :: analogue of surfaceForcingS
100 C units are r_unit.psu/s (=psu.m/s if r=z)
101 C
102 C
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 & shelfice_forcing_period
129 _RL SHELFICE_dumpFreq, SHELFICE_taveFreq
130 _RL SHELFICEheatTransCoeff
131 _RL SHELFICEsaltTransCoeff
132 _RL SHELFICElatentHeat
133 _RL SHELFICEheatCapacity_Cp
134 _RL rhoShelfice
135 _RL SHELFICEkappa
136 _RL SHELFICEDragLinear
137 _RL SHELFICEDragQuadratic
138 _RL SHELFICEMergeThreshold
139 _RL SHELFICEthetaSurface, SHELFICESplitThreshold
140 _RL shiCdrag, shiZetaN, shiRc
141 _RL SHELFICERemeshFrequency
142 _RL shiPrandtl, shiSchmidt, shiKinVisc
143 _RL SHELFICEGroundW, SHELFICEGroundC, shelficeEtaRelax
144 _RL shelfice_forcing_period
145
146 COMMON /SHELFICE_FIELDS_RL/
147 & shelficeMass, shelficeMassInit,
148 & shelficeLoadAnomaly,
149 & shelficeForcingT, shelficeForcingS,
150 & shiTransCoeffT, shiTransCoeffS, EFFMASS
151
152 _RL shelficeMass (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
153 _RL shelficeMassInit (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
154 _RL shelficeLoadAnomaly (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
155 _RL shelficeForcingT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
156 _RL shelficeForcingS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
157 _RL shiTransCoeffT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
158 _RL shiTransCoeffS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
159 _RL EFFMASS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
160 _RL SeaLevelRestore (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
161
162 COMMON /SHELFICE_FIELDS_RS/
163 & R_shelfIce, R_MWCT,
164 & shelficeHeatFlux,
165 & shelfIceFreshWaterFlux,
166 & shelfIceMassDynTendency
167 #ifdef ALLOW_SHELFICE_GROUNDED_ICE
168 & , GrdFactor
169 #endif
170
171 _RS R_shelfIce (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
172 _RS R_MWCT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
173 _RS shelficeHeatFlux (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
174 _RS shelficeFreshWaterFlux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
175 _RS
176 & shelfIceMassDynTendency(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
177 #ifdef ALLOW_SHELFICE_GROUNDED_ICE
178 _RS GrdFactor (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
179 #endif
180
181 #ifdef ALLOW_SHIFWFLX_CONTROL
182 COMMON /SHELFICE_MASKS_CTRL/ maskSHI
183 _RS maskSHI (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
184 #endif /* ALLOW_SHIFWFLX_CONTROL */
185
186 LOGICAL SHELFICEisOn
187 LOGICAL useISOMIPTD
188 LOGICAL SHELFICEconserve
189 LOGICAL SHELFICEboundaryLayer
190 LOGICAL SHELFICEthickBoundaryLayer
191 LOGICAL SHELFICErealFWflux
192 LOGICAL no_slip_shelfice
193 LOGICAL SHELFICEwriteState
194 LOGICAL SHELFICE_dump_mdsio
195 LOGICAL SHELFICE_tave_mdsio
196 LOGICAL SHELFICE_dump_mnc
197 LOGICAL SHELFICE_tave_mnc
198 LOGICAL SHELFICEadvDiffHeatFlux
199 LOGICAL SHELFICEuseGammaFrict
200 LOGICAL SHELFICEMassStepping
201 LOGICAL SHELFICEDynMassOnly
202 LOGICAL SHELFICEEtaSponge
203 LOGICAL SHELFICE_dig_ice
204 LOGICAL SHELFICE_massmin_truedens
205 LOGICAL SHELFICEusemassforcing
206 C KS16 put var here
207 LOGICAL conserve_ssh
208 COMMON /SHELFICE_PARMS_L/
209 & SHELFICEisOn,
210 & useISOMIPTD,
211 & SHELFICEconserve,
212 & SHELFICErealFWflux,
213 & SHELFICEboundaryLayer,
214 & SHELFICEthickBoundaryLayer,
215 & no_slip_shelfice,
216 & SHELFICEwriteState,
217 & SHELFICE_dump_mdsio,
218 & SHELFICE_tave_mdsio,
219 & SHELFICE_dump_mnc,
220 & SHELFICE_tave_mnc,
221 & SHELFICEadvDiffHeatFlux,
222 & SHELFICEuseGammaFrict,
223 & SHELFICEMassStepping,
224 & SHELFICEDynMassOnly,
225 & SHELFICEEtaSponge,
226 & SHELFICE_dig_ice,
227 & SHELFICE_massmin_truedens,
228 & SHELFICEusemassforcing,
229 C KS16 and here;
230 & conserve_ssh
231
232 CHARACTER*(MAX_LEN_FNAM) SHELFICEloadAnomalyFile
233 CHARACTER*(MAX_LEN_FNAM) SHELFICEmassFile
234 CHARACTER*(MAX_LEN_FNAM) SHELFICEGroundTopoFile
235 CHARACTER*(MAX_LEN_FNAM) SHELFICEtopoFile
236 CHARACTER*(MAX_LEN_FNAM) SHELFICEMassDynTendFile
237 CHARACTER*(MAX_LEN_FNAM) SHELFICEGroundInitFile
238 CHARACTER*(MAX_LEN_FNAM) SHELFICETransCoeffTFile
239 CHARACTER*(MAX_LEN_FNAM) SHELFICEmassForcingFile
240
241 COMMON /SHELFICE_PARM_C/
242 & SHELFICEloadAnomalyFile,
243 & SHELFICEmassFile,
244 & SHELFICEtopoFile,
245 & SHELFICEGroundTopoFile,
246 & SHELFICEMassDynTendFile,
247 & SHELFICEGroundInitFile,
248 & SHELFICETransCoeffTFile,
249 & SHELFICEmassForcingFile
250
251 COMMON /SHELFICE_TIMEDEP_FORCE/
252 & SHELFICEmass1,
253 & SHELFICEmass0
254
255 _RS SHELFICEmass1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
256 _RS SHELFICEmass0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
257
258
259 #endif /* ALLOW_SHELFICE */

  ViewVC Help
Powered by ViewVC 1.1.22