/[MITgcm]/manual/s_phys_pkgs/text/seaice.tex
ViewVC logotype

Contents of /manual/s_phys_pkgs/text/seaice.tex

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


Revision 1.17 - (show annotations) (download) (as text)
Sat Aug 13 13:30:14 2011 UTC (12 years, 9 months ago) by heimbach
Branch: MAIN
Changes since 1.16: +2 -53 lines
File MIME type: application/x-tex
Update seaice diagnostics list

1 % $Header: /u/gcmpack/manual/s_phys_pkgs/text/seaice.tex,v 1.16 2011/03/02 13:46:38 mlosch Exp $
2 % $Name: $
3
4 %%EH3 Copied from "MITgcm/pkg/seaice/seaice_description.tex"
5 %%EH3 which was written by Dimitris M.
6
7
8 \subsection{SEAICE Package}
9 \label{sec:pkg:seaice}
10 \begin{rawhtml}
11 <!-- CMIREDIR:package_seaice: -->
12 \end{rawhtml}
13
14 Authors: Martin Losch, Dimitris Menemenlis, An Nguyen, Jean-Michel Campin,
15 Patrick Heimbach, Chris Hill and Jinlun Zhang
16
17 %----------------------------------------------------------------------
18 \subsubsection{Introduction
19 \label{sec:pkg:seaice:intro}}
20
21
22 Package ``seaice'' provides a dynamic and thermodynamic interactive
23 sea-ice model.
24
25 CPP options enable or disable different aspects of the package
26 (Section \ref{sec:pkg:seaice:config}).
27 Run-Time options, flags, filenames and field-related dates/times are
28 set in \code{data.seaice}
29 (Section \ref{sec:pkg:seaice:runtime}).
30 A description of key subroutines is given in Section
31 \ref{sec:pkg:seaice:subroutines}.
32 Input fields, units and sign conventions are summarized in
33 Section \ref{sec:pkg:seaice:fields_units}, and available diagnostics
34 output is listed in Section \ref{sec:pkg:seaice:diagnostics}.
35
36 %----------------------------------------------------------------------
37
38 \subsubsection{SEAICE configuration, compiling \& running}
39
40 \paragraph{Compile-time options
41 \label{sec:pkg:seaice:config}}
42 ~
43
44 As with all MITgcm packages, SEAICE can be turned on or off at compile time
45 %
46 \begin{itemize}
47 %
48 \item
49 using the \code{packages.conf} file by adding \code{seaice} to it,
50 %
51 \item
52 or using \code{genmake2} adding
53 \code{-enable=seaice} or \code{-disable=seaice} switches
54 %
55 \item
56 \textit{required packages and CPP options}: \\
57 SEAICE requires the external forcing package \code{exf} to be enabled;
58 no additional CPP options are required.
59 %
60 \end{itemize}
61 (see Section \ref{sec:buildingCode}).
62
63 Parts of the SEAICE code can be enabled or disabled at compile time
64 via CPP preprocessor flags. These options are set in either
65 \code{SEAICE\_OPTIONS.h} or in \code{ECCO\_CPPOPTIONS.h}.
66 Table \ref{tab:pkg:seaice:cpp} summarizes these options.
67
68 \begin{table}[!ht]
69 \centering
70 \label{tab:pkg:seaice:cpp}
71 {\footnotesize
72 \begin{tabular}{|l|p{10cm}|}
73 \hline
74 \textbf{CPP option} & \textbf{Description} \\
75 \hline \hline
76 \code{SEAICE\_DEBUG} &
77 Enhance STDOUT for debugging \\
78 \code{SEAICE\_ALLOW\_DYNAMICS} &
79 sea-ice dynamics code \\
80 \code{SEAICE\_CGRID} &
81 LSR solver on C-grid (rather than original B-grid) \\
82 \code{SEAICE\_ALLOW\_EVP} &
83 use EVP rather than LSR rheology solver \\
84 \code{SEAICE\_EXTERNAL\_FLUXES} &
85 use EXF-computed fluxes as starting point \\
86 \code{SEAICE\_MULTICATEGORY} &
87 enable 8-category thermodynamics (by default undefined)\\
88 \code{SEAICE\_VARIABLE\_FREEZING\_POINT} &
89 enable linear dependence of the freezing point on salinity
90 (by default undefined)\\
91 \code{ALLOW\_SEAICE\_FLOODING} &
92 enable snow to ice conversion for submerged sea-ice \\
93 \code{SEAICE\_SALINITY} &
94 enable "salty" sea-ice (by default undefined) \\
95 \code{SEAICE\_AGE} &
96 enable "age tracer" sea-ice (by default undefined) \\
97 \code{SEAICE\_CAP\_HEFF} &
98 enable capping of sea-ice thickness to MAX\_HEFF \\ \hline
99 \code{SEAICE\_BICE\_STRESS} &
100 B-grid only for backward compatiblity: turn on ice-stress on
101 ocean\\
102 \code{EXPLICIT\_SSH\_SLOPE} &
103 B-grid only for backward compatiblity: use ETAN for tilt
104 computations rather than geostrophic velocities \\
105 \hline
106 \end{tabular}
107 }
108 \caption{~}
109 \end{table}
110
111 %----------------------------------------------------------------------
112
113 \subsubsection{Run-time parameters
114 \label{sec:pkg:seaice:runtime}}
115
116 Run-time parameters (see Table~\ref{tab:pkg:seaice:runtimeparms}) are set
117 in files \code{data.pkg} (read in \code{packages\_readparms.F}), and
118 \code{data.seaice} (read in \code{seaice\_readparms.F}).
119
120 \paragraph{Enabling the package}
121 ~ \\
122 %
123 A package is switched on/off at run-time by setting
124 (e.g. for SEAICE) \code{useSEAICE = .TRUE.} in \code{data.pkg}.
125
126 \paragraph{General flags and parameters}
127 ~ \\
128 %
129 Table~\ref{tab:pkg:seaice:runtimeparms} lists most run-time parameters.
130 \input{s_phys_pkgs/text/seaice-parms.tex}
131
132 \paragraph{Input fields and units\label{sec:pkg:seaice:fields_units}}
133 \begin{description}
134 \item[\code{HeffFile}:] Initial sea ice thickness averaged over grid cell
135 in meters; initializes variable \code{HEFF};
136 \item[\code{AreaFile}:] Initial fractional sea ice cover, range $[0,1]$;
137 initializes variable \code{AREA};
138 \item[\code{HsnowFile}:] Initial snow thickness on sea ice averaged
139 over grid cell in meters; initializes variable \code{HSNOW};
140 \item[\code{HsaltFile}:] Initial salinity of sea ice averaged over grid
141 cell in g/m$^2$; initializes variable \code{HSALT};
142 \item[\code{IceAgeFile}:] Initial ice age of sea ice averaged over grid
143 cell in seconds; initializes variable \code{ICEAGE};
144 \end{description}
145
146 %----------------------------------------------------------------------
147 \subsubsection{Description
148 \label{sec:pkg:seaice:descr}}
149
150 [TO BE CONTINUED/MODIFIED]
151
152 % Sea-ice model thermodynamics are based on Hibler
153 % \cite{hib80}, that is, a 2-category model that simulates ice thickness
154 % and concentration. Snow is simulated as per Zhang et al.
155 % \cite{zha98a}. Although recent years have seen an increased use of
156 % multi-category thickness distribution sea-ice models for climate
157 % studies, the Hibler 2-category ice model is still the most widely used
158 % model and has resulted in realistic simulation of sea-ice variability
159 % on regional and global scales. Being less complicated, compared to
160 % multi-category models, the 2-category model permits easier application
161 % of adjoint model optimization methods.
162
163 % Note, however, that the Hibler 2-category model and its variants use a
164 % so-called zero-layer thermodynamic model to estimate ice growth and
165 % decay. The zero-layer thermodynamic model assumes that ice does not
166 % store heat and, therefore, tends to exaggerate the seasonal
167 % variability in ice thickness. This exaggeration can be significantly
168 % reduced by using Semtner's \cite{sem76} three-layer thermodynamic
169 % model that permits heat storage in ice. Recently, the three-layer
170 % thermodynamic model has been reformulated by Winton \cite{win00}. The
171 % reformulation improves model physics by representing the brine content
172 % of the upper ice with a variable heat capacity. It also improves
173 % model numerics and consumes less computer time and memory. The Winton
174 % sea-ice thermodynamics have been ported to the MIT GCM; they currently
175 % reside under pkg/thsice. The package pkg/thsice is fully
176 % compatible with pkg/seaice and with pkg/exf. When turned on togeter
177 % with pkg/seaice, the zero-layer thermodynamics are replaced by the by
178 % Winton thermodynamics
179
180 The MITgcm sea ice model (MITgcm/sim) is based on a variant of the
181 viscous-plastic (VP) dynamic-thermodynamic sea ice model \citep{zhang97}
182 first introduced by \citet{hib79, hib80}. In order to adapt this model
183 to the requirements of coupled ice-ocean state estimation, many
184 important aspects of the original code have been modified and
185 improved:
186 \begin{itemize}
187 \item the code has been rewritten for an Arakawa C-grid, both B- and
188 C-grid variants are available; the C-grid code allows for no-slip
189 and free-slip lateral boundary conditions;
190 \item two different solution methods for solving the nonlinear
191 momentum equations have been adopted: LSOR \citep{zhang97}, and EVP
192 \citep{hun97};
193 \item ice-ocean stress can be formulated as in \citet{hibler87} or as in
194 \citet{cam08};
195 \item ice variables are advected by sophisticated, conservative
196 advection schemes with flux limiting;
197 \item growth and melt parameterizations have been refined and extended
198 in order to allow for more stable automatic differentiation of the code.
199 \end{itemize}
200 The sea ice model is tightly coupled to the ocean compontent of the
201 MITgcm. Heat, fresh water fluxes and surface stresses are computed
202 from the atmospheric state and -- by default -- modified by the ice
203 model at every time step.
204
205 The ice dynamics models that are most widely used for large-scale
206 climate studies are the viscous-plastic (VP) model \citep{hib79}, the
207 cavitating fluid (CF) model \citep{fla92}, and the
208 elastic-viscous-plastic (EVP) model \citep{hun97}. Compared to the VP
209 model, the CF model does not allow ice shear in calculating ice
210 motion, stress, and deformation. EVP models approximate VP by adding
211 an elastic term to the equations for easier adaptation to parallel
212 computers. Because of its higher accuracy in plastic solution and
213 relatively simpler formulation, compared to the EVP model, we decided
214 to use the VP model as the default dynamic component of our ice
215 model. To do this we extended the line successive over relaxation
216 (LSOR) method of \citet{zhang97} for use in a parallel
217 configuration. An EVP model and a free-drift implemtation can be
218 selected with runtime flags.
219
220 \paragraph{Compatibility with ice-thermodynamics package \code{thsice}\label{sec:pkg:seaice:thsice}}~\\
221 %
222 Note, that by default the \code{seaice}-package includes the orginial
223 so-called zero-layer thermodynamics following \citet{hib80} with a
224 snow cover as in \citet{zha98a}. The zero-layer thermodynamic model
225 assumes that ice does not store heat and, therefore, tends to
226 exaggerate the seasonal variability in ice thickness. This
227 exaggeration can be significantly reduced by using
228 \citeauthor{sem76}'s~[\citeyear{sem76}] three-layer thermodynamic
229 model that permits heat storage in ice. Recently, the three-layer thermodynamic model has been reformulated by
230 \citet{win00}. The reformulation improves model physics by
231 representing the brine content of the upper ice with a variable heat
232 capacity. It also improves model numerics and consumes less computer
233 time and memory.
234
235 The Winton sea-ice thermodynamics have been ported to the MIT GCM;
236 they currently reside under \code{pkg/thsice}. The package
237 \code{thsice} is described in section~\ref{sec:pkg:thsice}; it is
238 fully compatible with the packages \code{seaice} and \code{exf}. When
239 turned on together with \code{seaice}, the zero-layer thermodynamics
240 are replaced by the Winton thermodynamics. In order to use the
241 \code{seaice}-package with the thermodynamics of \code{thsice},
242 compile both packages and turn both package on in \code{data.pkg}; see
243 an example in \code{global\_ocean.cs32x15/input.icedyn}. Note, that
244 once \code{thsice} is turned on, the variables and diagnostics
245 associated to the default thermodynamics are meaningless, and the
246 diagnostics of \code{thsice} have to be used instead.
247
248 \paragraph{Surface forcing\label{sec:pkg:seaice:surfaceforcing}}~\\
249 %
250 The sea ice model requires the following input fields: 10-m winds, 2-m
251 air temperature and specific humidity, downward longwave and shortwave
252 radiations, precipitation, evaporation, and river and glacier runoff.
253 The sea ice model also requires surface temperature from the ocean
254 model and the top level horizontal velocity. Output fields are
255 surface wind stress, evaporation minus precipitation minus runoff, net
256 surface heat flux, and net shortwave flux. The sea-ice model is
257 global: in ice-free regions bulk formulae are used to estimate oceanic
258 forcing from the atmospheric fields.
259
260 \paragraph{Dynamics\label{sec:pkg:seaice:dynamics}}~\\
261 %
262 \newcommand{\vek}[1]{\ensuremath{\vec{\mathbf{#1}}}}
263 \newcommand{\vtau}{\vek{\mathbf{\tau}}}
264 The momentum equation of the sea-ice model is
265 \begin{equation}
266 \label{eq:momseaice}
267 m \frac{D\vek{u}}{Dt} = -mf\vek{k}\times\vek{u} + \vtau_{air} +
268 \vtau_{ocean} - m \nabla{\phi(0)} + \vek{F},
269 \end{equation}
270 where $m=m_{i}+m_{s}$ is the ice and snow mass per unit area;
271 $\vek{u}=u\vek{i}+v\vek{j}$ is the ice velocity vector;
272 $\vek{i}$, $\vek{j}$, and $\vek{k}$ are unit vectors in the $x$, $y$, and $z$
273 directions, respectively;
274 $f$ is the Coriolis parameter;
275 $\vtau_{air}$ and $\vtau_{ocean}$ are the wind-ice and ocean-ice stresses,
276 respectively;
277 $g$ is the gravity accelation;
278 $\nabla\phi(0)$ is the gradient (or tilt) of the sea surface height;
279 $\phi(0) = g\eta + p_{a}/\rho_{0} + mg/\rho_{0}$ is the sea surface
280 height potential in response to ocean dynamics ($g\eta$), to
281 atmospheric pressure loading ($p_{a}/\rho_{0}$, where $\rho_{0}$ is a
282 reference density) and a term due to snow and ice loading \citep{cam08};
283 and $\vek{F}=\nabla\cdot\sigma$ is the divergence of the internal ice
284 stress tensor $\sigma_{ij}$. %
285 Advection of sea-ice momentum is neglected. The wind and ice-ocean stress
286 terms are given by
287 \begin{align*}
288 \vtau_{air} = & \rho_{air} C_{air} |\vek{U}_{air} -\vek{u}|
289 R_{air} (\vek{U}_{air} -\vek{u}), \\
290 \vtau_{ocean} = & \rho_{ocean}C_{ocean} |\vek{U}_{ocean}-\vek{u}|
291 R_{ocean}(\vek{U}_{ocean}-\vek{u}),
292 \end{align*}
293 where $\vek{U}_{air/ocean}$ are the surface winds of the atmosphere
294 and surface currents of the ocean, respectively; $C_{air/ocean}$ are
295 air and ocean drag coefficients; $\rho_{air/ocean}$ are reference
296 densities; and $R_{air/ocean}$ are rotation matrices that act on the
297 wind/current vectors.
298
299 \paragraph{Viscous-Plastic (VP) Rheology and LSOR solver \label{sec:pkg:seaice:VPdynamics}}~\\
300 %
301 For an isotropic system the stress tensor $\sigma_{ij}$ ($i,j=1,2$) can
302 be related to the ice strain rate and strength by a nonlinear
303 viscous-plastic (VP) constitutive law \citep{hib79, zhang97}:
304 \begin{equation}
305 \label{eq:vpequation}
306 \sigma_{ij}=2\eta(\dot{\epsilon}_{ij},P)\dot{\epsilon}_{ij}
307 + \left[\zeta(\dot{\epsilon}_{ij},P) -
308 \eta(\dot{\epsilon}_{ij},P)\right]\dot{\epsilon}_{kk}\delta_{ij}
309 - \frac{P}{2}\delta_{ij}.
310 \end{equation}
311 The ice strain rate is given by
312 \begin{equation*}
313 \dot{\epsilon}_{ij} = \frac{1}{2}\left(
314 \frac{\partial{u_{i}}}{\partial{x_{j}}} +
315 \frac{\partial{u_{j}}}{\partial{x_{i}}}\right).
316 \end{equation*}
317 The maximum ice pressure $P_{\max}$, a measure of ice strength, depends on
318 both thickness $h$ and compactness (concentration) $c$:
319 \begin{equation}
320 P_{\max} = P^{*}c\,h\,e^{[C^{*}\cdot(1-c)]},
321 \label{eq:icestrength}
322 \end{equation}
323 with the constants $P^{*}$ (run-time parameter \code{SEAICE\_strength}) and
324 $C^{*}=20$. The nonlinear bulk and shear
325 viscosities $\eta$ and $\zeta$ are functions of ice strain rate
326 invariants and ice strength such that the principal components of the
327 stress lie on an elliptical yield curve with the ratio of major to
328 minor axis $e$ equal to $2$; they are given by:
329 \begin{align*}
330 \zeta =& \min\left(\frac{P_{\max}}{2\max(\Delta,\Delta_{\min})},
331 \zeta_{\max}\right) \\
332 \eta =& \frac{\zeta}{e^2} \\
333 \intertext{with the abbreviation}
334 \Delta = & \left[
335 \left(\dot{\epsilon}_{11}^2+\dot{\epsilon}_{22}^2\right)
336 (1+e^{-2}) + 4e^{-2}\dot{\epsilon}_{12}^2 +
337 2\dot{\epsilon}_{11}\dot{\epsilon}_{22} (1-e^{-2})
338 \right]^{\frac{1}{2}}.
339 \end{align*}
340 The bulk viscosities are bounded above by imposing both a minimum
341 $\Delta_{\min}$ (for numerical reasons, run-time parameter
342 \code{SEAICE\_EPS} with a default value of
343 $10^{-10}\text{\,s}^{-1}$) and a maximum $\zeta_{\max} =
344 P_{\max}/\Delta^*$, where
345 $\Delta^*=(5\times10^{12}/2\times10^4)\text{\,s}^{-1}$. (There is also
346 the option of bounding $\zeta$ from below by setting run-time
347 parameter \code{SEAICE\_zetaMin} $>0$, but this is generally not
348 recommended). For stress tensor computation the replacement pressure $P
349 = 2\,\Delta\zeta$ \citep{hibler95} is used so that the stress state
350 always lies on the elliptic yield curve by definition.
351
352 In the current implementation, the VP-model is integrated with the
353 semi-implicit line successive over relaxation (LSOR)-solver of
354 \citet{zhang97}, which allows for long time steps that, in our case,
355 are limited by the explicit treatment of the Coriolis term. The
356 explicit treatment of the Coriolis term does not represent a severe
357 limitation because it restricts the time step to approximately the
358 same length as in the ocean model where the Coriolis term is also
359 treated explicitly.
360
361 \paragraph{Elastic-Viscous-Plastic (EVP) Dynamics\label{sec:pkg:seaice:EVPdynamics}}~\\
362 %
363 \citet{hun97}'s introduced an elastic contribution to the strain
364 rate in order to regularize Eq.~\ref{eq:vpequation} in such a way that
365 the resulting elastic-viscous-plastic (EVP) and VP models are
366 identical at steady state,
367 \begin{equation}
368 \label{eq:evpequation}
369 \frac{1}{E}\frac{\partial\sigma_{ij}}{\partial{t}} +
370 \frac{1}{2\eta}\sigma_{ij}
371 + \frac{\eta - \zeta}{4\zeta\eta}\sigma_{kk}\delta_{ij}
372 + \frac{P}{4\zeta}\delta_{ij}
373 = \dot{\epsilon}_{ij}.
374 \end{equation}
375 %In the EVP model, equations for the components of the stress tensor
376 %$\sigma_{ij}$ are solved explicitly. Both model formulations will be
377 %used and compared the present sea-ice model study.
378 The EVP-model uses an explicit time stepping scheme with a short
379 timestep. According to the recommendation of \citet{hun97}, the
380 EVP-model should be stepped forward in time 120 times
381 ($\code{SEAICE\_deltaTevp} = \code{SEAICIE\_deltaTdyn}/120$) within
382 the physical ocean model time step (although this parameter is under
383 debate), to allow for elastic waves to disappear. Because the scheme
384 does not require a matrix inversion it is fast in spite of the small
385 internal timestep and simple to implement on parallel computers
386 \citep{hun97}. For completeness, we repeat the equations for the
387 components of the stress tensor $\sigma_{1} =
388 \sigma_{11}+\sigma_{22}$, $\sigma_{2}= \sigma_{11}-\sigma_{22}$, and
389 $\sigma_{12}$. Introducing the divergence $D_D =
390 \dot{\epsilon}_{11}+\dot{\epsilon}_{22}$, and the horizontal tension
391 and shearing strain rates, $D_T =
392 \dot{\epsilon}_{11}-\dot{\epsilon}_{22}$ and $D_S =
393 2\dot{\epsilon}_{12}$, respectively, and using the above
394 abbreviations, the equations~\ref{eq:evpequation} can be written as:
395 \begin{align}
396 \label{eq:evpstresstensor1}
397 \frac{\partial\sigma_{1}}{\partial{t}} + \frac{\sigma_{1}}{2T} +
398 \frac{P}{2T} &= \frac{P}{2T\Delta} D_D \\
399 \label{eq:evpstresstensor2}
400 \frac{\partial\sigma_{2}}{\partial{t}} + \frac{\sigma_{2} e^{2}}{2T}
401 &= \frac{P}{2T\Delta} D_T \\
402 \label{eq:evpstresstensor12}
403 \frac{\partial\sigma_{12}}{\partial{t}} + \frac{\sigma_{12} e^{2}}{2T}
404 &= \frac{P}{4T\Delta} D_S
405 \end{align}
406 Here, the elastic parameter $E$ is redefined in terms of a damping
407 timescale $T$ for elastic waves \[E=\frac{\zeta}{T}.\]
408 $T=E_{0}\Delta{t}$ with the tunable parameter $E_0<1$ and the external
409 (long) timestep $\Delta{t}$. $E_{0} = \frac{1}{3}$ is the default
410 value in the code and close to what \citet{hun97} and
411 \citet{hun01} recommend.
412
413 To use the EVP solver, make sure that both \code{SEAICE\_CGRID} and
414 \code{SEAICE\_ALLOW\_EVP} are defined in \code{SEAICE\_OPTIONS.h}
415 (default). The solver is turned on by setting the sub-cycling time
416 step \code{SEAICE\_deltaTevp} to a value larger than zero. The
417 choice of this time step is under debate. \citet{hun97} recommend
418 order(120) time steps for the EVP solver within one model time step
419 $\Delta{t}$ (\code{deltaTmom}). One can also choose order(120) time
420 steps within the forcing time scale, but then we recommend adjusting
421 the damping time scale $T$ accordingly, by setting either
422 \code{SEAICE\_elasticParm} ($E_{0}$), so that
423 $E_{0}\Delta{t}=\mbox{forcing time scale}$, or directly
424 \code{SEAICE\_evpTauRelax} ($T$) to the forcing time scale.
425
426 \paragraph{Truncated ellipse method (TEM) for yield curve \label{sec:pkg:seaice:TEM}}~\\
427 %
428 In the so-called truncated ellipse method the shear viscosity $\eta$
429 is capped to suppress any tensile stress \citep{hibler97, geiger98}:
430 \begin{equation}
431 \label{eq:etatem}
432 \eta = \min\left(\frac{\zeta}{e^2},
433 \frac{\frac{P}{2}-\zeta(\dot{\epsilon}_{11}+\dot{\epsilon}_{22})}
434 {\sqrt{(\dot{\epsilon}_{11}+\dot{\epsilon}_{22})^2
435 +4\dot{\epsilon}_{12}^2}}\right).
436 \end{equation}
437 To enable this method, set \code{\#define SEAICE\_ALLOW\_TEM} in
438 \code{SEAICE\_OPTIONS.h} and turn it on with
439 \code{SEAICEuseTEM} in \code{data.seaice}.
440
441 \paragraph{Ice-Ocean stress \label{sec:pkg:seaice:iceoceanstress}}~\\
442 %
443 Moving sea ice exerts a stress on the ocean which is the opposite of
444 the stress $\vtau_{ocean}$ in Eq.~\ref{eq:momseaice}. This stess is
445 applied directly to the surface layer of the ocean model. An
446 alternative ocean stress formulation is given by \citet{hibler87}.
447 Rather than applying $\vtau_{ocean}$ directly, the stress is derived
448 from integrating over the ice thickness to the bottom of the oceanic
449 surface layer. In the resulting equation for the \emph{combined}
450 ocean-ice momentum, the interfacial stress cancels and the total
451 stress appears as the sum of windstress and divergence of internal ice
452 stresses: $\delta(z) (\vtau_{air} + \vek{F})/\rho_0$, \citep[see also
453 Eq.\,2 of][]{hibler87}. The disadvantage of this formulation is that
454 now the velocity in the surface layer of the ocean that is used to
455 advect tracers, is really an average over the ocean surface
456 velocity and the ice velocity leading to an inconsistency as the ice
457 temperature and salinity are different from the oceanic variables.
458 To turn on the stress formulation of \citet{hibler87}, set
459 \code{useHB87StressCoupling=.TRUE.} in \code{data.seaice}.
460
461
462 % Our discretization differs from \citet{zhang97, zhang03} in the
463 % underlying grid, namely the Arakawa C-grid, but is otherwise
464 % straightforward. The EVP model, in particular, is discretized
465 % naturally on the C-grid with $\sigma_{1}$ and $\sigma_{2}$ on the
466 % center points and $\sigma_{12}$ on the corner (or vorticity) points of
467 % the grid. With this choice all derivatives are discretized as central
468 % differences and averaging is only involved in computing $\Delta$ and
469 % $P$ at vorticity points.
470
471 \paragraph{Finite-volume discretization of the stress tensor
472 divergence\label{sec:pkg:seaice:discretization}}~\\
473 %
474 On an Arakawa C~grid, ice thickness and concentration and thus ice
475 strength $P$ and bulk and shear viscosities $\zeta$ and $\eta$ are
476 naturally defined a C-points in the center of the grid
477 cell. Discretization requires only averaging of $\zeta$ and $\eta$ to
478 vorticity or Z-points (or $\zeta$-points, but here we use Z in order
479 avoid confusion with the bulk viscosity) at the bottom left corner of
480 the cell to give $\overline{\zeta}^{Z}$ and $\overline{\eta}^{Z}$. In
481 the following, the superscripts indicate location at Z or C points,
482 distance across the cell (F), along the cell edge (G), between
483 $u$-points (U), $v$-points (V), and C-points (C). The control volumes
484 of the $u$- and $v$-equations in the grid cell at indices $(i,j)$ are
485 $A_{i,j}^{w}$ and $A_{i,j}^{s}$, respectively. With these definitions
486 (which follow the model code documentation except that $\zeta$-points
487 have been renamed to Z-points), the strain rates are discretized as:
488 \begin{align}
489 \dot{\epsilon}_{11} &= \partial_{1}{u}_{1} + k_{2}u_{2} \\ \notag
490 => (\epsilon_{11})_{i,j}^C &= \frac{u_{i+1,j}-u_{i,j}}{\Delta{x}_{i,j}^{F}}
491 + k_{2,i,j}^{C}\frac{v_{i,j+1}+v_{i,j}}{2} \\
492 \dot{\epsilon}_{22} &= \partial_{2}{u}_{2} + k_{1}u_{1} \\\notag
493 => (\epsilon_{22})_{i,j}^C &= \frac{v_{i,j+1}-v_{i,j}}{\Delta{y}_{i,j}^{F}}
494 + k_{1,i,j}^{C}\frac{u_{i+1,j}+u_{i,j}}{2} \\
495 \dot{\epsilon}_{12} = \dot{\epsilon}_{21} &= \frac{1}{2}\biggl(
496 \partial_{1}{u}_{2} + \partial_{2}{u}_{1} - k_{1}u_{2} - k_{2}u_{1}
497 \biggr) \\ \notag
498 => (\epsilon_{12})_{i,j}^Z &= \frac{1}{2}
499 \biggl( \frac{v_{i,j}-v_{i-1,j}}{\Delta{x}_{i,j}^V}
500 + \frac{u_{i,j}-u_{i,j-1}}{\Delta{y}_{i,j}^U} \\\notag
501 &\phantom{=\frac{1}{2}\biggl(}
502 - k_{1,i,j}^{Z}\frac{v_{i,j}+v_{i-1,j}}{2}
503 - k_{2,i,j}^{Z}\frac{u_{i,j}+u_{i,j-1}}{2}
504 \biggr),
505 \end{align}
506 so that the diagonal terms of the strain rate tensor are naturally
507 defined at C-points and the symmetric off-diagonal term at
508 Z-points. No-slip boundary conditions ($u_{i,j-1}+u_{i,j}=0$ and
509 $v_{i-1,j}+v_{i,j}=0$ across boundaries) are implemented via
510 ``ghost-points''; for free slip boundary conditions
511 $(\epsilon_{12})^Z=0$ on boundaries.
512
513 For a spherical polar grid, the coefficients of the metric terms are
514 $k_{1}=0$ and $k_{2}=-\tan\phi/a$, with the spherical radius $a$ and
515 the latitude $\phi$; $\Delta{x}_1 = \Delta{x} = a\cos\phi
516 \Delta\lambda$, and $\Delta{x}_2 = \Delta{y}=a\Delta\phi$. For a
517 general orthogonal curvilinear grid, $k_{1}$ and
518 $k_{2}$ can be approximated by finite differences of the cell widths:
519 \begin{align}
520 k_{1,i,j}^{C} &= \frac{1}{\Delta{y}_{i,j}^{F}}
521 \frac{\Delta{y}_{i+1,j}^{G}-\Delta{y}_{i,j}^{G}}{\Delta{x}_{i,j}^{F}} \\
522 k_{2,i,j}^{C} &= \frac{1}{\Delta{x}_{i,j}^{F}}
523 \frac{\Delta{x}_{i,j+1}^{G}-\Delta{x}_{i,j}^{G}}{\Delta{y}_{i,j}^{F}} \\
524 k_{1,i,j}^{Z} &= \frac{1}{\Delta{y}_{i,j}^{U}}
525 \frac{\Delta{y}_{i,j}^{C}-\Delta{y}_{i-1,j}^{C}}{\Delta{x}_{i,j}^{V}} \\
526 k_{2,i,j}^{Z} &= \frac{1}{\Delta{x}_{i,j}^{V}}
527 \frac{\Delta{x}_{i,j}^{C}-\Delta{x}_{i,j-1}^{C}}{\Delta{y}_{i,j}^{U}}
528 \end{align}
529
530 The stress tensor is given by the constitutive viscous-plastic
531 relation $\sigma_{\alpha\beta} = 2\eta\dot{\epsilon}_{\alpha\beta} +
532 [(\zeta-\eta)\dot{\epsilon}_{\gamma\gamma} - P/2
533 ]\delta_{\alpha\beta}$ \citep{hib79}. The stress tensor divergence
534 $(\nabla\sigma)_{\alpha} = \partial_\beta\sigma_{\beta\alpha}$, is
535 discretized in finite volumes. This conveniently avoids dealing with
536 further metric terms, as these are ``hidden'' in the differential cell
537 widths. For the $u$-equation ($\alpha=1$) we have:
538 \begin{align}
539 (\nabla\sigma)_{1}: \phantom{=}&
540 \frac{1}{A_{i,j}^w}
541 \int_{\mathrm{cell}}(\partial_1\sigma_{11}+\partial_2\sigma_{21})\,dx_1\,dx_2
542 \\\notag
543 =& \frac{1}{A_{i,j}^w} \biggl\{
544 \int_{x_2}^{x_2+\Delta{x}_2}\sigma_{11}dx_2\biggl|_{x_{1}}^{x_{1}+\Delta{x}_{1}}
545 + \int_{x_1}^{x_1+\Delta{x}_1}\sigma_{21}dx_1\biggl|_{x_{2}}^{x_{2}+\Delta{x}_{2}}
546 \biggr\} \\ \notag
547 \approx& \frac{1}{A_{i,j}^w} \biggl\{
548 \Delta{x}_2\sigma_{11}\biggl|_{x_{1}}^{x_{1}+\Delta{x}_{1}}
549 + \Delta{x}_1\sigma_{21}\biggl|_{x_{2}}^{x_{2}+\Delta{x}_{2}}
550 \biggr\} \\ \notag
551 =& \frac{1}{A_{i,j}^w} \biggl\{
552 (\Delta{x}_2\sigma_{11})_{i,j}^C -
553 (\Delta{x}_2\sigma_{11})_{i-1,j}^C
554 \\\notag
555 \phantom{=}& \phantom{\frac{1}{A_{i,j}^w} \biggl\{}
556 + (\Delta{x}_1\sigma_{21})_{i,j+1}^Z - (\Delta{x}_1\sigma_{21})_{i,j}^Z
557 \biggr\}
558 \end{align}
559 with
560 \begin{align}
561 (\Delta{x}_2\sigma_{11})_{i,j}^C =& \phantom{+}
562 \Delta{y}_{i,j}^{F}(\zeta + \eta)^{C}_{i,j}
563 \frac{u_{i+1,j}-u_{i,j}}{\Delta{x}_{i,j}^{F}} \\ \notag
564 &+ \Delta{y}_{i,j}^{F}(\zeta + \eta)^{C}_{i,j}
565 k_{2,i,j}^C \frac{v_{i,j+1}+v_{i,j}}{2} \\ \notag
566 \phantom{=}& + \Delta{y}_{i,j}^{F}(\zeta - \eta)^{C}_{i,j}
567 \frac{v_{i,j+1}-v_{i,j}}{\Delta{y}_{i,j}^{F}} \\ \notag
568 \phantom{=}& + \Delta{y}_{i,j}^{F}(\zeta - \eta)^{C}_{i,j}
569 k_{1,i,j}^{C}\frac{u_{i+1,j}+u_{i,j}}{2} \\ \notag
570 \phantom{=}& - \Delta{y}_{i,j}^{F} \frac{P}{2} \\
571 (\Delta{x}_1\sigma_{21})_{i,j}^Z =& \phantom{+}
572 \Delta{x}_{i,j}^{V}\overline{\eta}^{Z}_{i,j}
573 \frac{u_{i,j}-u_{i,j-1}}{\Delta{y}_{i,j}^{U}} \\ \notag
574 & + \Delta{x}_{i,j}^{V}\overline{\eta}^{Z}_{i,j}
575 \frac{v_{i,j}-v_{i-1,j}}{\Delta{x}_{i,j}^{V}} \\ \notag
576 & - \Delta{x}_{i,j}^{V}\overline{\eta}^{Z}_{i,j}
577 k_{2,i,j}^{Z}\frac{u_{i,j}+u_{i,j-1}}{2} \\ \notag
578 & - \Delta{x}_{i,j}^{V}\overline{\eta}^{Z}_{i,j}
579 k_{1,i,j}^{Z}\frac{v_{i,j}+v_{i-1,j}}{2}
580 \end{align}
581
582 Similarly, we have for the $v$-equation ($\alpha=2$):
583 \begin{align}
584 (\nabla\sigma)_{2}: \phantom{=}&
585 \frac{1}{A_{i,j}^s}
586 \int_{\mathrm{cell}}(\partial_1\sigma_{12}+\partial_2\sigma_{22})\,dx_1\,dx_2
587 \\\notag
588 =& \frac{1}{A_{i,j}^s} \biggl\{
589 \int_{x_2}^{x_2+\Delta{x}_2}\sigma_{12}dx_2\biggl|_{x_{1}}^{x_{1}+\Delta{x}_{1}}
590 + \int_{x_1}^{x_1+\Delta{x}_1}\sigma_{22}dx_1\biggl|_{x_{2}}^{x_{2}+\Delta{x}_{2}}
591 \biggr\} \\ \notag
592 \approx& \frac{1}{A_{i,j}^s} \biggl\{
593 \Delta{x}_2\sigma_{12}\biggl|_{x_{1}}^{x_{1}+\Delta{x}_{1}}
594 + \Delta{x}_1\sigma_{22}\biggl|_{x_{2}}^{x_{2}+\Delta{x}_{2}}
595 \biggr\} \\ \notag
596 =& \frac{1}{A_{i,j}^s} \biggl\{
597 (\Delta{x}_2\sigma_{12})_{i+1,j}^Z - (\Delta{x}_2\sigma_{12})_{i,j}^Z
598 \\ \notag
599 \phantom{=}& \phantom{\frac{1}{A_{i,j}^s} \biggl\{}
600 + (\Delta{x}_1\sigma_{22})_{i,j}^C - (\Delta{x}_1\sigma_{22})_{i,j-1}^C
601 \biggr\}
602 \end{align}
603 with
604 \begin{align}
605 (\Delta{x}_1\sigma_{12})_{i,j}^Z =& \phantom{+}
606 \Delta{y}_{i,j}^{U}\overline{\eta}^{Z}_{i,j}
607 \frac{u_{i,j}-u_{i,j-1}}{\Delta{y}_{i,j}^{U}}
608 \\\notag &
609 + \Delta{y}_{i,j}^{U}\overline{\eta}^{Z}_{i,j}
610 \frac{v_{i,j}-v_{i-1,j}}{\Delta{x}_{i,j}^{V}} \\\notag
611 &- \Delta{y}_{i,j}^{U}\overline{\eta}^{Z}_{i,j}
612 k_{2,i,j}^{Z}\frac{u_{i,j}+u_{i,j-1}}{2}
613 \\\notag &
614 - \Delta{y}_{i,j}^{U}\overline{\eta}^{Z}_{i,j}
615 k_{1,i,j}^{Z}\frac{v_{i,j}+v_{i-1,j}}{2} \\ \notag
616 (\Delta{x}_2\sigma_{22})_{i,j}^C =& \phantom{+}
617 \Delta{x}_{i,j}^{F}(\zeta - \eta)^{C}_{i,j}
618 \frac{u_{i+1,j}-u_{i,j}}{\Delta{x}_{i,j}^{F}} \\ \notag
619 &+ \Delta{x}_{i,j}^{F}(\zeta - \eta)^{C}_{i,j}
620 k_{2,i,j}^{C} \frac{v_{i,j+1}+v_{i,j}}{2} \\ \notag
621 & + \Delta{x}_{i,j}^{F}(\zeta + \eta)^{C}_{i,j}
622 \frac{v_{i,j+1}-v_{i,j}}{\Delta{y}_{i,j}^{F}} \\ \notag
623 & + \Delta{x}_{i,j}^{F}(\zeta + \eta)^{C}_{i,j}
624 k_{1,i,j}^{C}\frac{u_{i+1,j}+u_{i,j}}{2} \\ \notag
625 & -\Delta{x}_{i,j}^{F} \frac{P}{2}
626 \end{align}
627
628 Again, no slip boundary conditions are realized via ghost points and
629 $u_{i,j-1}+u_{i,j}=0$ and $v_{i-1,j}+v_{i,j}=0$ across boundaries. For
630 free slip boundary conditions the lateral stress is set to zeros. In
631 analogy to $(\epsilon_{12})^Z=0$ on boundaries, we set
632 $\sigma_{21}^{Z}=0$, or equivalently $\eta_{i,j}^{Z}=0$, on boundaries.
633
634 \paragraph{Thermodynamics\label{sec:pkg:seaice:thermodynamics}}~\\
635 %
636 In its original formulation the sea ice model \citep{menemenlis05}
637 uses simple thermodynamics following the appendix of
638 \citet{sem76}. This formulation does not allow storage of heat,
639 that is, the heat capacity of ice is zero. Upward conductive heat flux
640 is parameterized assuming a linear temperature profile and together
641 with a constant ice conductivity. It is expressed as
642 $(K/h)(T_{w}-T_{0})$, where $K$ is the ice conductivity, $h$ the ice
643 thickness, and $T_{w}-T_{0}$ the difference between water and ice
644 surface temperatures. This type of model is often refered to as a
645 ``zero-layer'' model. The surface heat flux is computed in a similar
646 way to that of \citet{parkinson79} and \citet{manabe79}.
647
648 The conductive heat flux depends strongly on the ice thickness $h$.
649 However, the ice thickness in the model represents a mean over a
650 potentially very heterogeneous thickness distribution. In order to
651 parameterize a sub-grid scale distribution for heat flux
652 computations, the mean ice thickness $h$ is split into seven thickness
653 categories $H_{n}$ that are equally distributed between $2h$ and a
654 minimum imposed ice thickness of $5\text{\,cm}$ by $H_n=
655 \frac{2n-1}{7}\,h$ for $n\in[1,7]$. The heat fluxes computed for each
656 thickness category is area-averaged to give the total heat flux
657 \citep{hibler84}. To use this thickness category parameterization set
658 \code{\#define SEAICE\_MULTICATEGORY}; note that this requires
659 different restart files and switching this flag on in the middle of an
660 integration is not possible.
661
662 The atmospheric heat flux is balanced by an oceanic heat flux from
663 below. The oceanic flux is proportional to
664 $\rho\,c_{p}\left(T_{w}-T_{fr}\right)$ where $\rho$ and $c_{p}$ are
665 the density and heat capacity of sea water and $T_{fr}$ is the local
666 freezing point temperature that is a function of salinity. This flux
667 is not assumed to instantaneously melt or create ice, but a time scale
668 of three days (run-time parameter \code{SEAICE\_gamma\_t}) is used
669 to relax $T_{w}$ to the freezing point.
670 %
671 The parameterization of lateral and vertical growth of sea ice follows
672 that of \citet{hib79, hib80}; the so-called lead closing parameter
673 $h_{0}$ (run-time parameter \code{HO}) has a default value of
674 0.5~meters.
675
676 On top of the ice there is a layer of snow that modifies the heat flux
677 and the albedo \citep{zha98a}. Snow modifies the effective
678 conductivity according to
679 \[\frac{K}{h} \rightarrow \frac{1}{\frac{h_{s}}{K_{s}}+\frac{h}{K}},\]
680 where $K_s$ is the conductivity of snow and $h_s$ the snow thickness.
681 If enough snow accumulates so that its weight submerges the ice and
682 the snow is flooded, a simple mass conserving parameterization of
683 snowice formation (a flood-freeze algorithm following Archimedes'
684 principle) turns snow into ice until the ice surface is back at $z=0$
685 \citep{leppaeranta83}. The flood-freeze algorithm is enabled with the CPP-flag
686 \code{SEAICE\_ALLOW\_FLOODING} and turned on with run-time parameter
687 \code{SEAICEuseFlooding=.true.}.
688
689 \paragraph{Advection of thermodynamic variables\label{sec:pkg:seaice:advection}}~\\
690 %
691 Effective ice thickness (ice volume per unit area,
692 $c\cdot{h}$), concentration $c$ and effective snow thickness
693 ($c\cdot{h}_{s}$) are advected by ice velocities:
694 \begin{equation}
695 \label{eq:advection}
696 \frac{\partial{X}}{\partial{t}} = - \nabla\cdot\left(\vek{u}\,X\right) +
697 \Gamma_{X} + D_{X}
698 \end{equation}
699 where $\Gamma_X$ are the thermodynamic source terms and $D_{X}$ the
700 diffusive terms for quantities $X=(c\cdot{h}), c, (c\cdot{h}_{s})$.
701 %
702 From the various advection scheme that are available in the MITgcm, we
703 recommend flux-limited schemes \citep[multidimensional 2nd and
704 3rd-order advection scheme with flux limiter][]{roe:85, hundsdorfer94}
705 to preserve sharp gradients and edges that are typical of sea ice
706 distributions and to rule out unphysical over- and undershoots
707 (negative thickness or concentration). These schemes conserve volume
708 and horizontal area and are unconditionally stable, so that we can set
709 $D_{X}=0$. Run-timeflags: \code{SEAICEadvScheme} (default=2, is the
710 historic 2nd-order, centered difference scheme), \code{DIFF1} =
711 $D_{X}/\Delta{x}$
712 (default=0.004).
713
714 The MITgcm sea ice model provides the option to use
715 the thermodynamics model of \citet{win00}, which in turn is based on
716 the 3-layer model of \citet{sem76} and which treats brine content by
717 means of enthalpy conservation; the corresponding package
718 \code{thsice} is described in section~\ref{sec:pkg:thsice}. This
719 scheme requires additional state variables, namely the enthalpy of the
720 two ice layers (instead of effective ice salinity), to be advected by
721 ice velocities.
722 %
723 The internal sea ice temperature is inferred from ice enthalpy. To
724 avoid unphysical (negative) values for ice thickness and
725 concentration, a positive 2nd-order advection scheme with a SuperBee
726 flux limiter \citep{roe:85} should be used to advect all
727 sea-ice-related quantities of the \citet{win00} thermodynamic model
728 (runtime flag \code{thSIceAdvScheme=77} and
729 \code{thSIce\_diffK}=$D_{X}$=0 in \code{data.ice}, defaults are 0). Because of the
730 non-linearity of the advection scheme, care must be taken in advecting
731 these quantities: when simply using ice velocity to advect enthalpy,
732 the total energy (i.e., the volume integral of enthalpy) is not
733 conserved. Alternatively, one can advect the energy content (i.e.,
734 product of ice-volume and enthalpy) but then false enthalpy extrema
735 can occur, which then leads to unrealistic ice temperature. In the
736 currently implemented solution, the sea-ice mass flux is used to
737 advect the enthalpy in order to ensure conservation of enthalpy and to
738 prevent false enthalpy extrema. %
739
740 %----------------------------------------------------------------------
741
742 \subsubsection{Key subroutines
743 \label{sec:pkg:seaice:subroutines}}
744
745 Top-level routine: \code{seaice\_model.F}
746
747 {\footnotesize
748 \begin{verbatim}
749
750 C !CALLING SEQUENCE:
751 c ...
752 c seaice_model (TOP LEVEL ROUTINE)
753 c |
754 c |-- #ifdef SEAICE_CGRID
755 c | SEAICE_DYNSOLVER
756 c | |
757 c | |-- < compute proxy for geostrophic velocity >
758 c | |
759 c | |-- < set up mass per unit area and Coriolis terms >
760 c | |
761 c | |-- < dynamic masking of areas with no ice >
762 c | |
763 c | |
764
765 c | #ELSE
766 c | DYNSOLVER
767 c | #ENDIF
768 c |
769 c |-- if ( useOBCS )
770 c | OBCS_APPLY_UVICE
771 c |
772 c |-- if ( SEAICEadvHeff .OR. SEAICEadvArea .OR. SEAICEadvSnow .OR. SEAICEadvSalt )
773 c | SEAICE_ADVDIFF
774 c |
775 c |-- if ( usePW79thermodynamics )
776 c | SEAICE_GROWTH
777 c |
778 c |-- if ( useOBCS )
779 c | if ( SEAICEadvHeff ) OBCS_APPLY_HEFF
780 c | if ( SEAICEadvArea ) OBCS_APPLY_AREA
781 c | if ( SEAICEadvSALT ) OBCS_APPLY_HSALT
782 c | if ( SEAICEadvSNOW ) OBCS_APPLY_HSNOW
783 c |
784 c |-- < do various exchanges >
785 c |
786 c |-- < do additional diagnostics >
787 c |
788 c o
789
790 \end{verbatim}
791 }
792
793
794 %----------------------------------------------------------------------
795
796 \subsubsection{SEAICE diagnostics
797 \label{sec:pkg:seaice:diagnostics}}
798
799 Diagnostics output is available via the diagnostics package
800 (see Section \ref{sec:pkg:diagnostics}).
801 Available output fields are summarized in
802 Table \ref{tab:pkg:seaice:diagnostics}.
803
804 \input{s_phys_pkgs/text/seaice-diags.tex}
805
806 %\subsubsection{Package Reference}
807
808 \subsubsection{Experiments and tutorials that use seaice}
809 \label{sec:pkg:seaice:experiments}
810
811 \begin{itemize}
812 \item{Labrador Sea experiment in \code{lab\_sea} verification directory. }
813 \item \code{seaice\_obcs}, based on \code{lab\_sea}
814 \item \code{offline\_exf\_seaice/input.seaicetd}, based on \code{lab\_sea}
815 \item \code{global\_ocean.cs32x15/input.icedyn} and
816 \code{global\_ocean.cs32x15/input.seaice}, global
817 cubed-sphere-experiment with combinations of \code{seaice} and
818 \code{thsice}
819 \end{itemize}
820
821
822 %%% Local Variables:
823 %%% mode: latex
824 %%% TeX-master: "../../manual"
825 %%% End:

  ViewVC Help
Powered by ViewVC 1.1.22