| 61 |
(see Section \ref{sec:buildingCode}). |
(see Section \ref{sec:buildingCode}). |
| 62 |
|
|
| 63 |
Parts of the SEAICE code can be enabled or disabled at compile time |
Parts of the SEAICE code can be enabled or disabled at compile time |
| 64 |
via CPP preprocessor flags. These options are set in either |
via CPP preprocessor flags. These options are set in |
| 65 |
\code{SEAICE\_OPTIONS.h} or in \code{ECCO\_CPPOPTIONS.h}. |
\code{SEAICE\_OPTIONS.h}. |
| 66 |
Table \ref{tab:pkg:seaice:cpp} summarizes these options. |
Table \ref{tab:pkg:seaice:cpp} summarizes the most important ones. |
| 67 |
|
|
| 68 |
\begin{table}[!ht] |
\begin{table}[!ht] |
| 69 |
\centering |
\centering |
| 80 |
\code{SEAICE\_CGRID} & |
\code{SEAICE\_CGRID} & |
| 81 |
LSR solver on C-grid (rather than original B-grid) \\ |
LSR solver on C-grid (rather than original B-grid) \\ |
| 82 |
\code{SEAICE\_ALLOW\_EVP} & |
\code{SEAICE\_ALLOW\_EVP} & |
| 83 |
use EVP rather than LSR rheology solver \\ |
enable use of EVP rheology solver \\ |
| 84 |
|
\code{SEAICE\_ALLOW\_JFNK} & |
| 85 |
|
enable use of JFNK rheology solver \\ |
| 86 |
\code{SEAICE\_EXTERNAL\_FLUXES} & |
\code{SEAICE\_EXTERNAL\_FLUXES} & |
| 87 |
use EXF-computed fluxes as starting point \\ |
use EXF-computed fluxes as starting point \\ |
| 88 |
\code{SEAICE\_MULTICATEGORY} & |
\code{SEAICE\_ZETA\_SMOOTHREG} & |
| 89 |
enable 8-category thermodynamics (by default undefined)\\ |
use differentialable regularization for viscosities \\ |
| 90 |
\code{SEAICE\_VARIABLE\_FREEZING\_POINT} & |
\code{SEAICE\_VARIABLE\_FREEZING\_POINT} & |
| 91 |
enable linear dependence of the freezing point on salinity |
enable linear dependence of the freezing point on salinity |
| 92 |
(by default undefined)\\ |
(by default undefined)\\ |
| 93 |
\code{ALLOW\_SEAICE\_FLOODING} & |
\code{ALLOW\_SEAICE\_FLOODING} & |
| 94 |
enable snow to ice conversion for submerged sea-ice \\ |
enable snow to ice conversion for submerged sea-ice \\ |
| 95 |
\code{SEAICE\_SALINITY} & |
\code{SEAICE\_VARIABLE\_SALINITY} & |
| 96 |
enable "salty" sea-ice (by default undefined) \\ |
enable sea-ice with variable salinity (by default undefined) \\ |
| 97 |
\code{SEAICE\_AGE} & |
\code{SEAICE\_SITRACER} & |
| 98 |
enable "age tracer" sea-ice (by default undefined) \\ |
enable sea-ice tracer package (by default undefined) \\ |
|
\code{SEAICE\_CAP\_HEFF} & |
|
|
enable capping of sea-ice thickness to MAX\_HEFF \\ \hline |
|
| 99 |
\code{SEAICE\_BICE\_STRESS} & |
\code{SEAICE\_BICE\_STRESS} & |
| 100 |
B-grid only for backward compatiblity: turn on ice-stress on |
B-grid only for backward compatiblity: turn on ice-stress on |
| 101 |
ocean\\ |
ocean\\ |
| 105 |
\hline |
\hline |
| 106 |
\end{tabular} |
\end{tabular} |
| 107 |
} |
} |
| 108 |
\caption{~} |
\caption{Some of the most relevant CPP preprocessor flags in the |
| 109 |
|
\code{seaice}-package.} |
| 110 |
\end{table} |
\end{table} |
| 111 |
|
|
| 112 |
%---------------------------------------------------------------------- |
%---------------------------------------------------------------------- |
| 114 |
\subsubsection{Run-time parameters |
\subsubsection{Run-time parameters |
| 115 |
\label{sec:pkg:seaice:runtime}} |
\label{sec:pkg:seaice:runtime}} |
| 116 |
|
|
| 117 |
Run-time parameters are set in files |
Run-time parameters (see Table~\ref{tab:pkg:seaice:runtimeparms}) are set |
| 118 |
\code{data.pkg} (read in \code{packages\_readparms.F}), |
in files \code{data.pkg} (read in \code{packages\_readparms.F}), and |
| 119 |
and \code{data.seaice} (read in \code{seaice\_readparms.F}). |
\code{data.seaice} (read in \code{seaice\_readparms.F}). |
| 120 |
|
|
| 121 |
\paragraph{Enabling the package} |
\paragraph{Enabling the package} |
| 122 |
~ \\ |
~ \\ |
| 140 |
over grid cell in meters; initializes variable \code{HSNOW}; |
over grid cell in meters; initializes variable \code{HSNOW}; |
| 141 |
\item[\code{HsaltFile}:] Initial salinity of sea ice averaged over grid |
\item[\code{HsaltFile}:] Initial salinity of sea ice averaged over grid |
| 142 |
cell in g/m$^2$; initializes variable \code{HSALT}; |
cell in g/m$^2$; initializes variable \code{HSALT}; |
|
\item[\code{IceAgeFile}:] Initial ice age of sea ice averaged over grid |
|
|
cell in seconds; initializes variable \code{ICEAGE}; |
|
| 143 |
\end{description} |
\end{description} |
| 144 |
|
|
| 145 |
%---------------------------------------------------------------------- |
%---------------------------------------------------------------------- |
| 181 |
first introduced by \citet{hib79, hib80}. In order to adapt this model |
first introduced by \citet{hib79, hib80}. In order to adapt this model |
| 182 |
to the requirements of coupled ice-ocean state estimation, many |
to the requirements of coupled ice-ocean state estimation, many |
| 183 |
important aspects of the original code have been modified and |
important aspects of the original code have been modified and |
| 184 |
improved: |
improved \citep{losch10:_mitsim}: |
| 185 |
\begin{itemize} |
\begin{itemize} |
| 186 |
\item the code has been rewritten for an Arakawa C-grid, both B- and |
\item the code has been rewritten for an Arakawa C-grid, both B- and |
| 187 |
C-grid variants are available; the C-grid code allows for no-slip |
C-grid variants are available; the C-grid code allows for no-slip |
| 188 |
and free-slip lateral boundary conditions; |
and free-slip lateral boundary conditions; |
| 189 |
\item two different solution methods for solving the nonlinear |
\item three different solution methods for solving the nonlinear |
| 190 |
momentum equations have been adopted: LSOR \citep{zhang97}, and EVP |
momentum equations have been adopted: LSOR \citep{zhang97}, EVP |
| 191 |
\citep{hun97}; |
\citep{hun97}, JFNK \citep{lemieux10,losch14:_jfnk}; |
| 192 |
\item ice-ocean stress can be formulated as in \citet{hibler87} or as in |
\item ice-ocean stress can be formulated as in \citet{hibler87} or as in |
| 193 |
\citet{cam08}; |
\citet{cam08}; |
| 194 |
\item ice variables are advected by sophisticated, conservative |
\item ice variables are advected by sophisticated, conservative |
| 213 |
to use the VP model as the default dynamic component of our ice |
to use the VP model as the default dynamic component of our ice |
| 214 |
model. To do this we extended the line successive over relaxation |
model. To do this we extended the line successive over relaxation |
| 215 |
(LSOR) method of \citet{zhang97} for use in a parallel |
(LSOR) method of \citet{zhang97} for use in a parallel |
| 216 |
configuration. |
configuration. An EVP model and a free-drift implemtation can be |
| 217 |
|
selected with runtime flags. |
| 218 |
|
|
| 219 |
Note, that by default the seaice-package includes the orginial |
\paragraph{Compatibility with ice-thermodynamics package \code{thsice}\label{sec:pkg:seaice:thsice}}~\\ |
| 220 |
|
% |
| 221 |
|
Note, that by default the \code{seaice}-package includes the orginial |
| 222 |
so-called zero-layer thermodynamics following \citet{hib80} with a |
so-called zero-layer thermodynamics following \citet{hib80} with a |
| 223 |
snow cover as in \citet{zha98a}. The zero-layer thermodynamic model |
snow cover as in \citet{zha98a}. The zero-layer thermodynamic model |
| 224 |
assumes that ice does not store heat and, therefore, tends to |
assumes that ice does not store heat and, therefore, tends to |
| 225 |
exaggerate the seasonal variability in ice thickness. This |
exaggerate the seasonal variability in ice thickness. This |
| 226 |
exaggeration can be significantly reduced by using |
exaggeration can be significantly reduced by using |
| 227 |
\citeauthor{sem76}'s~[\citeyear{sem76}] three-layer thermodynamic model |
\citeauthor{sem76}'s~[\citeyear{sem76}] three-layer thermodynamic |
| 228 |
that permits heat storage in ice. Recently, the three-layer |
model that permits heat storage in ice. Recently, the three-layer thermodynamic model has been reformulated by |
| 229 |
thermodynamic model has been reformulated by \citet{win00}. The |
\citet{win00}. The reformulation improves model physics by |
| 230 |
reformulation improves model physics by representing the brine content |
representing the brine content of the upper ice with a variable heat |
| 231 |
of the upper ice with a variable heat capacity. It also improves |
capacity. It also improves model numerics and consumes less computer |
| 232 |
model numerics and consumes less computer time and memory. The Winton |
time and memory. |
| 233 |
sea-ice thermodynamics have been ported to the MIT GCM; they currently |
|
| 234 |
reside under pkg/thsice. The package pkg/thsice is fully compatible |
The Winton sea-ice thermodynamics have been ported to the MIT GCM; |
| 235 |
with pkg/seaice and with pkg/exf. When turned on together with |
they currently reside under \code{pkg/thsice}. The package |
| 236 |
pkg/seaice, the zero-layer thermodynamics are replaced by the Winton |
\code{thsice} is described in section~\ref{sec:pkg:thsice}; it is |
| 237 |
thermodynamics. |
fully compatible with the packages \code{seaice} and \code{exf}. When |
| 238 |
|
turned on together with \code{seaice}, the zero-layer thermodynamics |
| 239 |
|
are replaced by the Winton thermodynamics. In order to use the |
| 240 |
|
\code{seaice}-package with the thermodynamics of \code{thsice}, |
| 241 |
|
compile both packages and turn both package on in \code{data.pkg}; see |
| 242 |
|
an example in \code{global\_ocean.cs32x15/input.icedyn}. Note, that |
| 243 |
|
once \code{thsice} is turned on, the variables and diagnostics |
| 244 |
|
associated to the default thermodynamics are meaningless, and the |
| 245 |
|
diagnostics of \code{thsice} have to be used instead. |
| 246 |
|
|
| 247 |
|
\paragraph{Surface forcing\label{sec:pkg:seaice:surfaceforcing}}~\\ |
| 248 |
|
% |
| 249 |
The sea ice model requires the following input fields: 10-m winds, 2-m |
The sea ice model requires the following input fields: 10-m winds, 2-m |
| 250 |
air temperature and specific humidity, downward longwave and shortwave |
air temperature and specific humidity, downward longwave and shortwave |
| 251 |
radiations, precipitation, evaporation, and river and glacier runoff. |
radiations, precipitation, evaporation, and river and glacier runoff. |
| 256 |
global: in ice-free regions bulk formulae are used to estimate oceanic |
global: in ice-free regions bulk formulae are used to estimate oceanic |
| 257 |
forcing from the atmospheric fields. |
forcing from the atmospheric fields. |
| 258 |
|
|
| 259 |
\paragraph{Dynamics\label{sec:pkg:seaice:dynamics}} |
\paragraph{Dynamics\label{sec:pkg:seaice:dynamics}}~\\ |
| 260 |
|
% |
| 261 |
\newcommand{\vek}[1]{\ensuremath{\vec{\mathbf{#1}}}} |
\newcommand{\vek}[1]{\ensuremath{\vec{\mathbf{#1}}}} |
| 262 |
\newcommand{\vtau}{\vek{\mathbf{\tau}}} |
\newcommand{\vtau}{\vek{\mathbf{\tau}}} |
| 263 |
The momentum equation of the sea-ice model is |
The momentum equation of the sea-ice model is |
| 295 |
densities; and $R_{air/ocean}$ are rotation matrices that act on the |
densities; and $R_{air/ocean}$ are rotation matrices that act on the |
| 296 |
wind/current vectors. |
wind/current vectors. |
| 297 |
|
|
| 298 |
|
\paragraph{Viscous-Plastic (VP) Rheology\label{sec:pkg:seaice:VPrheology}}~\\ |
| 299 |
|
% |
| 300 |
For an isotropic system the stress tensor $\sigma_{ij}$ ($i,j=1,2$) can |
For an isotropic system the stress tensor $\sigma_{ij}$ ($i,j=1,2$) can |
| 301 |
be related to the ice strain rate and strength by a nonlinear |
be related to the ice strain rate and strength by a nonlinear |
| 302 |
viscous-plastic (VP) constitutive law \citep{hib79, zhang97}: |
viscous-plastic (VP) constitutive law \citep{hib79, zhang97}: |
| 316 |
The maximum ice pressure $P_{\max}$, a measure of ice strength, depends on |
The maximum ice pressure $P_{\max}$, a measure of ice strength, depends on |
| 317 |
both thickness $h$ and compactness (concentration) $c$: |
both thickness $h$ and compactness (concentration) $c$: |
| 318 |
\begin{equation} |
\begin{equation} |
| 319 |
P_{\max} = P^{*}c\,h\,e^{[C^{*}\cdot(1-c)]}, |
P_{\max} = P^{*}c\,h\,\exp\{-C^{*}\cdot(1-c)\}, |
| 320 |
\label{eq:icestrength} |
\label{eq:icestrength} |
| 321 |
\end{equation} |
\end{equation} |
| 322 |
with the constants $P^{*}$ (run-time parameter \code{SEAICE\_strength}) and |
with the constants $P^{*}$ (run-time parameter \code{SEAICE\_strength}) and |
| 348 |
= 2\,\Delta\zeta$ \citep{hibler95} is used so that the stress state |
= 2\,\Delta\zeta$ \citep{hibler95} is used so that the stress state |
| 349 |
always lies on the elliptic yield curve by definition. |
always lies on the elliptic yield curve by definition. |
| 350 |
|
|
| 351 |
In the so-called truncated ellipse method the shear viscosity $\eta$ |
Defining the CPP-flag \code{SEAICE\_ZETA\_SMOOTHREG} in |
| 352 |
is capped to suppress any tensile stress \citep{hibler97, geiger98}: |
\code{SEAICE\_OPTIONS.h} before compiling replaces the method for |
| 353 |
|
bounding $\zeta$ by a smooth (differentiable) expression: |
| 354 |
\begin{equation} |
\begin{equation} |
| 355 |
\label{eq:etatem} |
\label{eq:zetaregsmooth} |
| 356 |
\eta = \min\left(\frac{\zeta}{e^2}, |
\begin{split} |
| 357 |
\frac{\frac{P}{2}-\zeta(\dot{\epsilon}_{11}+\dot{\epsilon}_{22})} |
\zeta &= \zeta_{\max}\tanh\left(\frac{P}{2\,\min(\Delta,\Delta_{\min}) |
| 358 |
{\sqrt{(\dot{\epsilon}_{11}+\dot{\epsilon}_{22})^2 |
\,\zeta_{\max}}\right)\\ |
| 359 |
+4\dot{\epsilon}_{12}^2}}\right). |
&= \frac{P}{2\Delta^*} |
| 360 |
|
\tanh\left(\frac{\Delta^*}{\min(\Delta,\Delta_{\min})}\right) |
| 361 |
|
\end{split} |
| 362 |
\end{equation} |
\end{equation} |
| 363 |
To enable this method, set \code{\#define SEAICE\_ALLOW\_TEM} in |
where $\Delta_{\min}=10^{-20}\text{\,s}^{-1}$ is chosen to avoid divisions |
| 364 |
\code{SEAICE\_OPTIONS.h} and turn it on with |
by zero. |
|
\code{SEAICEuseTEM=.TRUE.} in \code{data.seaice}. |
|
| 365 |
|
|
| 366 |
In the current implementation, the VP-model is integrated with the |
\paragraph{LSR and JFNK solver \label{sec:pkg:seaice:LSRJFNK}}~\\ |
| 367 |
semi-implicit line successive over relaxation (LSOR)-solver of |
% |
| 368 |
\citet{zhang97}, which allows for long time steps that, in our case, |
% By default, the VP-model is integrated by a Pickwith the |
| 369 |
are limited by the explicit treatment of the Coriolis term. The |
% semi-implicit line successive over relaxation (LSOR)-solver of |
| 370 |
explicit treatment of the Coriolis term does not represent a severe |
% \citet{zhang97}, which allows for long time steps that, in our case, |
| 371 |
limitation because it restricts the time step to approximately the |
% are limited by the explicit treatment of the Coriolis term. The |
| 372 |
same length as in the ocean model where the Coriolis term is also |
% explicit treatment of the Coriolis term does not represent a severe |
| 373 |
treated explicitly. |
% limitation because it restricts the time step to approximately the |
| 374 |
|
% same length as in the ocean model where the Coriolis term is also |
| 375 |
|
% treated explicitly. |
| 376 |
|
|
| 377 |
|
\newcommand{\mat}[1]{\ensuremath{\mathbf{#1}}} |
| 378 |
|
% |
| 379 |
|
In the matrix notation, the discretized momentum equations can be |
| 380 |
|
written as |
| 381 |
|
\begin{equation} |
| 382 |
|
\label{eq:matrixmom} |
| 383 |
|
\mat{A}(\vek{x})\,\vek{x} = \vek{b}(\vek{x}). |
| 384 |
|
\end{equation} |
| 385 |
|
The solution vector $\vek{x}$ consists of the two velocity components |
| 386 |
|
$u$ and $v$ that contain the velocity variables at all grid points and |
| 387 |
|
at one time level. The standard (and default) method for solving |
| 388 |
|
Eq.\,(\ref{eq:matrixmom}) in the sea ice component of the |
| 389 |
|
\mbox{MITgcm}, as in many sea ice models, is an iterative Picard |
| 390 |
|
solver: in the $k$-th iteration a linearized form |
| 391 |
|
$\mat{A}(\vek{x}^{k-1})\,\vek{x}^{k} = \vek{b}(\vek{x}^{k-1})$ is |
| 392 |
|
solved (in the case of the MITgcm it is a Line Successive (over) |
| 393 |
|
Relaxation (LSR) algorithm \citep{zhang97}). Picard solvers converge |
| 394 |
|
slowly, but generally the iteration is terminated after only a few |
| 395 |
|
non-linear steps \citep{zhang97, lemieux09} and the calculation |
| 396 |
|
continues with the next time level. This method is the default method |
| 397 |
|
in the MITgcm. The number of non-linear iteration steps or pseudo-time |
| 398 |
|
steps can be controlled by the runtime parameter |
| 399 |
|
\code{NPSEUDOTIMESTEPS} (default is 2). |
| 400 |
|
|
| 401 |
|
In order to overcome the poor convergence of the Picard-solver, |
| 402 |
|
\citet{lemieux10} introduced a Jacobian-free Newton-Krylov solver for |
| 403 |
|
the sea ice momentum equations. This solver is also implemented in the |
| 404 |
|
MITgcm \citep{losch14:_jfnk}. The Newton method transforms minimizing |
| 405 |
|
the residual $\vek{F}(\vek{x}) = \mat{A}(\vek{x})\,\vek{x} - |
| 406 |
|
\vek{b}(\vek{x})$ to finding the roots of a multivariate Taylor |
| 407 |
|
expansion of the residual \vek{F} around the previous ($k-1$) estimate |
| 408 |
|
$\vek{x}^{k-1}$: |
| 409 |
|
\begin{equation} |
| 410 |
|
\label{eq:jfnktaylor} |
| 411 |
|
\vek{F}(\vek{x}^{k-1}+\delta\vek{x}^{k}) = |
| 412 |
|
\vek{F}(\vek{x}^{k-1}) + \vek{F}'(\vek{x}^{k-1})\,\delta\vek{x}^{k} |
| 413 |
|
\end{equation} |
| 414 |
|
with the Jacobian $\mat{J}\equiv\vek{F}'$. The root |
| 415 |
|
$\vek{F}(\vek{x}^{k-1}+\delta\vek{x}^{k})=0$ is found by solving |
| 416 |
|
\begin{equation} |
| 417 |
|
\label{eq:jfnklin} |
| 418 |
|
\mat{J}(\vek{x}^{k-1})\,\delta\vek{x}^{k} = -\vek{F}(\vek{x}^{k-1}) |
| 419 |
|
\end{equation} |
| 420 |
|
for $\delta\vek{x}^{k}$. The next ($k$-th) estimate is given by |
| 421 |
|
$\vek{x}^{k}=\vek{x}^{k-1}+a\,\delta\vek{x}^{k}$. In order to avoid |
| 422 |
|
overshoots the factor $a$ is iteratively reduced in a line search |
| 423 |
|
($a=1, \frac{1}{2}, \frac{1}{4}, \frac{1}{8}, \ldots$) until |
| 424 |
|
$\|\vek{F}(\vek{x}^k)\| < \|\vek{F}(\vek{x}^{k-1})\|$, where |
| 425 |
|
$\|\cdot\|=\int\cdot\,dx^2$ is the $L_2$-norm. In practice, the line |
| 426 |
|
search is stopped at $a=\frac{1}{8}$. The line search starts after |
| 427 |
|
$\code{SEAICE\_JFNK\_lsIter}$ non-linear Newton iterations (off by |
| 428 |
|
default). |
| 429 |
|
|
| 430 |
|
|
| 431 |
|
Forming the Jacobian $\mat{J}$ explicitly is often avoided as ``too |
| 432 |
|
error prone and time consuming'' \citep{knoll04:_jfnk}. Instead, |
| 433 |
|
Krylov methods only require the action of \mat{J} on an arbitrary |
| 434 |
|
vector \vek{w} and hence allow a matrix free algorithm for solving |
| 435 |
|
Eq.\,(\ref{eq:jfnklin}) \citep{knoll04:_jfnk}. The action of \mat{J} |
| 436 |
|
can be approximated by a first-order Taylor series expansion: |
| 437 |
|
\begin{equation} |
| 438 |
|
\label{eq:jfnkjacvecfd} |
| 439 |
|
\mat{J}(\vek{x}^{k-1})\,\vek{w} \approx |
| 440 |
|
\frac{\vek{F}(\vek{x}^{k-1}+\epsilon\vek{w}) - \vek{F}(\vek{x}^{k-1})} |
| 441 |
|
{\epsilon} |
| 442 |
|
\end{equation} |
| 443 |
|
or computed exactly with the help of automatic differentiation (AD) |
| 444 |
|
tools. \code{SEAICE\_JFNKepsilon} sets the step size |
| 445 |
|
$\epsilon$. |
| 446 |
|
|
| 447 |
|
We use the Flexible Generalized Minimum RESidual method |
| 448 |
|
\citep[FGMRES,][]{saad93:_fgmres} with right-hand side preconditioning |
| 449 |
|
to solve Eq.\,(\ref{eq:jfnklin}) iteratively starting from a first |
| 450 |
|
guess of $\delta\vek{x}^{k}_{0} = 0$. For the preconditioning matrix |
| 451 |
|
\mat{P} we choose a simplified form of the system matrix |
| 452 |
|
$\mat{A}(\vek{x}^{k-1})$ \citep{lemieux10} where $\vek{x}^{k-1}$ is |
| 453 |
|
the estimate of the previous Newton step $k-1$. The transformed |
| 454 |
|
equation\,(\ref{eq:jfnklin}) becomes |
| 455 |
|
\begin{equation} |
| 456 |
|
\label{eq:jfnklinpc} |
| 457 |
|
\mat{J}(\vek{x}^{k-1})\,\mat{P}^{-1}\delta\vek{z} = |
| 458 |
|
-\vek{F}(\vek{x}^{k-1}), |
| 459 |
|
\quad\text{with}\quad \delta\vek{z}=\mat{P}\delta\vek{x}^{k}. |
| 460 |
|
\end{equation} |
| 461 |
|
The Krylov method iteratively improves the approximate solution |
| 462 |
|
to~(\ref{eq:jfnklinpc}) in subspace ($\vek{r}_0$, |
| 463 |
|
$\mat{J}\mat{P}^{-1}\vek{r}_0$, $(\mat{J}\mat{P}^{-1})^2\vek{r}_0$, |
| 464 |
|
\ldots, $(\mat{J}\mat{P}^{-1})^m\vek{r}_0$) with increasing $m$; |
| 465 |
|
$\vek{r}_0 = -\vek{F}(\vek{x}^{k-1}) |
| 466 |
|
-\mat{J}(\vek{x}^{k-1})\,\delta\vek{x}^{k}_{0}$ |
| 467 |
|
%-\vek{F}(\vek{x}^{k-1}) |
| 468 |
|
%-\mat{J}(\vek{x}^{k-1})\,\mat{P}^{-1}\delta\vek{z}$ |
| 469 |
|
is the initial residual of |
| 470 |
|
(\ref{eq:jfnklin}); $\vek{r}_0=-\vek{F}(\vek{x}^{k-1})$ with the first |
| 471 |
|
guess $\delta\vek{x}^{k}_{0}=0$. We allow a Krylov-subspace of |
| 472 |
|
dimension~$m=50$ and we do not use restarts. The preconditioning operation |
| 473 |
|
involves applying $\mat{P}^{-1}$ to the basis vectors $\vek{v}_0, |
| 474 |
|
\vek{v}_1, \vek{v}_2, \ldots, \vek{v}_m$ of the Krylov subspace. This |
| 475 |
|
operation is approximated by solving the linear system |
| 476 |
|
$\mat{P}\,\vek{w}=\vek{v}_i$. Because $\mat{P} \approx |
| 477 |
|
\mat{A}(\vek{x}^{k-1})$, we can use the LSR-algorithm \citep{zhang97} |
| 478 |
|
already implemented in the Picard solver. Each preconditioning |
| 479 |
|
operation uses a fixed number of 10~LSR-iterations avoiding any |
| 480 |
|
termination criterion. More details and results can be found in |
| 481 |
|
\citet{lemieux10, losch14:_jfnk}. |
| 482 |
|
|
| 483 |
|
To use the JFNK-solver set \code{SEAICEuseJFNK = .TRUE.} in the |
| 484 |
|
namelist file \code{data.seaice}; \code{SEAICE\_ALLOW\_JFNK} needs to |
| 485 |
|
be defined in \code{SEAICE\_OPTIONS.h} and we recommend using a smooth |
| 486 |
|
regularization of $\zeta$ by defining \code{SEAICE\_ZETA\_SMOOTHREG} |
| 487 |
|
(see above) for better convergence. The non-linear Newton iteration |
| 488 |
|
is terminated when the $L_2$-norm of the residual is reduced by |
| 489 |
|
$\gamma_{\mathrm{nl}}$ (runtime parameter \code{JFNKgamma\_nonlin = |
| 490 |
|
1.e-4} will already lead to expensive simulations) with respect to |
| 491 |
|
the initial norm: $\|\vek{F}(\vek{x}^k)\| < |
| 492 |
|
\gamma_{\mathrm{nl}}\|\vek{F}(\vek{x}^0)\|$. Within a non-linear |
| 493 |
|
iteration, the linear FGMRES solver is terminated when the residual is |
| 494 |
|
smaller than $\gamma_k\|\vek{F}(\vek{x}^{k-1})\|$ where $\gamma_k$ is |
| 495 |
|
determined by |
| 496 |
|
\begin{equation} |
| 497 |
|
\label{eq:jfnkgammalin} |
| 498 |
|
\gamma_k = |
| 499 |
|
\begin{cases} |
| 500 |
|
\gamma_0 &\text{for $\|\vek{F}(\vek{x}^{k-1})\| \geq r$}, \\ |
| 501 |
|
\max\left(\gamma_{\min}, |
| 502 |
|
\frac{\|\vek{F}(\vek{x}^{k-1})\|}{\|\vek{F}(\vek{x}^{k-2})\|}\right) |
| 503 |
|
% \phi\left(\frac{\|\vek{F}(\vek{x}^{k-1})\|}{\|\vek{F}(\vek{x}^{k-2})\|}\right)^\alpha\right) |
| 504 |
|
&\text{for $\|\vek{F}(\vek{x}^{k-1})\| < r$,} |
| 505 |
|
\end{cases} |
| 506 |
|
\end{equation} |
| 507 |
|
so that the linear tolerance parameter $\gamma_k$ decreases with the |
| 508 |
|
non-linear Newton step as the non-linear solution is approached. This |
| 509 |
|
inexact Newton method is generally more robust and computationally |
| 510 |
|
more efficient than exact methods \citep[e.g.,][]{knoll04:_jfnk}. |
| 511 |
|
% \footnote{The general idea behind |
| 512 |
|
% inexact Newton methods is this: The Krylov solver is ``only'' |
| 513 |
|
% used to find an intermediate solution of the linear |
| 514 |
|
% equation\,(\ref{eq:jfnklin}) that is used to improve the approximation of |
| 515 |
|
% the actual equation\,(\ref{eq:matrixmom}). With the choice of a |
| 516 |
|
% relatively weak lower limit for FGMRES convergence |
| 517 |
|
% $\gamma_{\min}$ we make sure that the time spent in the FGMRES |
| 518 |
|
% solver is reduced at the cost of more Newton iterations. Newton |
| 519 |
|
% iterations are cheaper than Krylov iterations so that this choice |
| 520 |
|
% improves the overall efficiency.} |
| 521 |
|
Typical parameter choices are |
| 522 |
|
$\gamma_0=\code{JFNKgamma\_lin\_max}=0.99$, |
| 523 |
|
$\gamma_{\min}=\code{JFNKgamma\_lin\_min}=0.1$, and $r = |
| 524 |
|
\code{JFNKres\_tFac}\times\|\vek{F}(\vek{x}^{0})\|$ with |
| 525 |
|
$\code{JFNKres\_tFac} = \frac{1}{2}$. We recommend a maximum number of |
| 526 |
|
non-linear iterations $\code{SEAICEnewtonIterMax} = 100$ and a maximum |
| 527 |
|
number of Krylov iterations $\code{SEAICEkrylovIterMax} = 50$, because |
| 528 |
|
the Krylov subspace has a fixed dimension of 50. |
| 529 |
|
|
| 530 |
|
\paragraph{Elastic-Viscous-Plastic (EVP) Dynamics\label{sec:pkg:seaice:EVPdynamics}}~\\ |
| 531 |
|
% |
| 532 |
\citet{hun97}'s introduced an elastic contribution to the strain |
\citet{hun97}'s introduced an elastic contribution to the strain |
| 533 |
rate in order to regularize Eq.~\ref{eq:vpequation} in such a way that |
rate in order to regularize Eq.~\ref{eq:vpequation} in such a way that |
| 534 |
the resulting elastic-viscous-plastic (EVP) and VP models are |
the resulting elastic-viscous-plastic (EVP) and VP models are |
| 546 |
%used and compared the present sea-ice model study. |
%used and compared the present sea-ice model study. |
| 547 |
The EVP-model uses an explicit time stepping scheme with a short |
The EVP-model uses an explicit time stepping scheme with a short |
| 548 |
timestep. According to the recommendation of \citet{hun97}, the |
timestep. According to the recommendation of \citet{hun97}, the |
| 549 |
EVP-model is stepped forward in time 120 times within the physical |
EVP-model should be stepped forward in time 120 times |
| 550 |
ocean model time step (although this parameter is under debate), to |
($\code{SEAICE\_deltaTevp} = \code{SEAICIE\_deltaTdyn}/120$) within |
| 551 |
allow for elastic waves to disappear. Because the scheme does not |
the physical ocean model time step (although this parameter is under |
| 552 |
require a matrix inversion it is fast in spite of the small internal |
debate), to allow for elastic waves to disappear. Because the scheme |
| 553 |
timestep and simple to implement on parallel computers |
does not require a matrix inversion it is fast in spite of the small |
| 554 |
|
internal timestep and simple to implement on parallel computers |
| 555 |
\citep{hun97}. For completeness, we repeat the equations for the |
\citep{hun97}. For completeness, we repeat the equations for the |
| 556 |
components of the stress tensor $\sigma_{1} = |
components of the stress tensor $\sigma_{1} = |
| 557 |
\sigma_{11}+\sigma_{22}$, $\sigma_{2}= \sigma_{11}-\sigma_{22}$, and |
\sigma_{11}+\sigma_{22}$, $\sigma_{2}= \sigma_{11}-\sigma_{22}$, and |
| 572 |
\frac{\partial\sigma_{12}}{\partial{t}} + \frac{\sigma_{12} e^{2}}{2T} |
\frac{\partial\sigma_{12}}{\partial{t}} + \frac{\sigma_{12} e^{2}}{2T} |
| 573 |
&= \frac{P}{4T\Delta} D_S |
&= \frac{P}{4T\Delta} D_S |
| 574 |
\end{align} |
\end{align} |
| 575 |
Here, the elastic parameter $E$ is redefined in terms of a damping timescale |
Here, the elastic parameter $E$ is redefined in terms of a damping |
| 576 |
$T$ for elastic waves \[E=\frac{\zeta}{T}.\] |
timescale $T$ for elastic waves \[E=\frac{\zeta}{T}.\] |
| 577 |
$T=E_{0}\Delta{t}$ with the tunable parameter $E_0<1$ and |
$T=E_{0}\Delta{t}$ with the tunable parameter $E_0<1$ and the external |
| 578 |
the external (long) timestep $\Delta{t}$. \citet{hun97} recommend |
(long) timestep $\Delta{t}$. $E_{0} = \frac{1}{3}$ is the default |
| 579 |
$E_{0} = \frac{1}{3}$ (which is the default value in the code). |
value in the code and close to what \citet{hun97} and |
| 580 |
|
\citet{hun01} recommend. |
| 581 |
|
|
| 582 |
To use the EVP solver, make sure that both \code{SEAICE\_CGRID} and |
To use the EVP solver, make sure that both \code{SEAICE\_CGRID} and |
| 583 |
\code{SEAICE\_ALLOW\_EVP} are defined in \code{SEAICE\_OPTIONS.h} |
\code{SEAICE\_ALLOW\_EVP} are defined in \code{SEAICE\_OPTIONS.h} |
| 592 |
$E_{0}\Delta{t}=\mbox{forcing time scale}$, or directly |
$E_{0}\Delta{t}=\mbox{forcing time scale}$, or directly |
| 593 |
\code{SEAICE\_evpTauRelax} ($T$) to the forcing time scale. |
\code{SEAICE\_evpTauRelax} ($T$) to the forcing time scale. |
| 594 |
|
|
| 595 |
|
\paragraph{Truncated ellipse method (TEM) for yield curve \label{sec:pkg:seaice:TEM}}~\\ |
| 596 |
|
% |
| 597 |
|
In the so-called truncated ellipse method the shear viscosity $\eta$ |
| 598 |
|
is capped to suppress any tensile stress \citep{hibler97, geiger98}: |
| 599 |
|
\begin{equation} |
| 600 |
|
\label{eq:etatem} |
| 601 |
|
\eta = \min\left(\frac{\zeta}{e^2}, |
| 602 |
|
\frac{\frac{P}{2}-\zeta(\dot{\epsilon}_{11}+\dot{\epsilon}_{22})} |
| 603 |
|
{\sqrt{(\dot{\epsilon}_{11}+\dot{\epsilon}_{22})^2 |
| 604 |
|
+4\dot{\epsilon}_{12}^2}}\right). |
| 605 |
|
\end{equation} |
| 606 |
|
To enable this method, set \code{\#define SEAICE\_ALLOW\_TEM} in |
| 607 |
|
\code{SEAICE\_OPTIONS.h} and turn it on with |
| 608 |
|
\code{SEAICEuseTEM} in \code{data.seaice}. |
| 609 |
|
|
| 610 |
|
\paragraph{Ice-Ocean stress \label{sec:pkg:seaice:iceoceanstress}}~\\ |
| 611 |
|
% |
| 612 |
Moving sea ice exerts a stress on the ocean which is the opposite of |
Moving sea ice exerts a stress on the ocean which is the opposite of |
| 613 |
the stress $\vtau_{ocean}$ in Eq.~\ref{eq:momseaice}. This stess is |
the stress $\vtau_{ocean}$ in Eq.~\ref{eq:momseaice}. This stess is |
| 614 |
applied directly to the surface layer of the ocean model. An |
applied directly to the surface layer of the ocean model. An |
| 638 |
% $P$ at vorticity points. |
% $P$ at vorticity points. |
| 639 |
|
|
| 640 |
\paragraph{Finite-volume discretization of the stress tensor |
\paragraph{Finite-volume discretization of the stress tensor |
| 641 |
divergence\label{sec:pkg:seaice:discretization}} |
divergence\label{sec:pkg:seaice:discretization}}~\\ |
| 642 |
|
% |
| 643 |
On an Arakawa C~grid, ice thickness and concentration and thus ice |
On an Arakawa C~grid, ice thickness and concentration and thus ice |
| 644 |
strength $P$ and bulk and shear viscosities $\zeta$ and $\eta$ are |
strength $P$ and bulk and shear viscosities $\zeta$ and $\eta$ are |
| 645 |
naturally defined a C-points in the center of the grid |
naturally defined a C-points in the center of the grid |
| 701 |
[(\zeta-\eta)\dot{\epsilon}_{\gamma\gamma} - P/2 |
[(\zeta-\eta)\dot{\epsilon}_{\gamma\gamma} - P/2 |
| 702 |
]\delta_{\alpha\beta}$ \citep{hib79}. The stress tensor divergence |
]\delta_{\alpha\beta}$ \citep{hib79}. The stress tensor divergence |
| 703 |
$(\nabla\sigma)_{\alpha} = \partial_\beta\sigma_{\beta\alpha}$, is |
$(\nabla\sigma)_{\alpha} = \partial_\beta\sigma_{\beta\alpha}$, is |
| 704 |
discretized in finite volumes. This conveniently avoids dealing with |
discretized in finite volumes \citep[see |
| 705 |
|
also][]{losch10:_mitsim}. This conveniently avoids dealing with |
| 706 |
further metric terms, as these are ``hidden'' in the differential cell |
further metric terms, as these are ``hidden'' in the differential cell |
| 707 |
widths. For the $u$-equation ($\alpha=1$) we have: |
widths. For the $u$-equation ($\alpha=1$) we have: |
| 708 |
\begin{align} |
\begin{align} |
| 801 |
analogy to $(\epsilon_{12})^Z=0$ on boundaries, we set |
analogy to $(\epsilon_{12})^Z=0$ on boundaries, we set |
| 802 |
$\sigma_{21}^{Z}=0$, or equivalently $\eta_{i,j}^{Z}=0$, on boundaries. |
$\sigma_{21}^{Z}=0$, or equivalently $\eta_{i,j}^{Z}=0$, on boundaries. |
| 803 |
|
|
| 804 |
\paragraph{Thermodynamics\label{sec:pkg:seaice:thermodynamics}} |
\paragraph{Thermodynamics\label{sec:pkg:seaice:thermodynamics}}~\\ |
| 805 |
|
% |
| 806 |
In its original formulation the sea ice model \citep{menemenlis05} |
In its original formulation the sea ice model \citep{menemenlis05} |
| 807 |
uses simple thermodynamics following the appendix of |
uses simple thermodynamics following the appendix of |
| 808 |
\citet{sem76}. This formulation does not allow storage of heat, |
\citet{sem76}. This formulation does not allow storage of heat, |
| 856 |
\code{SEAICE\_ALLOW\_FLOODING} and turned on with run-time parameter |
\code{SEAICE\_ALLOW\_FLOODING} and turned on with run-time parameter |
| 857 |
\code{SEAICEuseFlooding=.true.}. |
\code{SEAICEuseFlooding=.true.}. |
| 858 |
|
|
| 859 |
|
\paragraph{Advection of thermodynamic variables\label{sec:pkg:seaice:advection}}~\\ |
| 860 |
|
% |
| 861 |
Effective ice thickness (ice volume per unit area, |
Effective ice thickness (ice volume per unit area, |
| 862 |
$c\cdot{h}$), concentration $c$ and effective snow thickness |
$c\cdot{h}$), concentration $c$ and effective snow thickness |
| 863 |
($c\cdot{h}_{s}$) are advected by ice velocities: |
($c\cdot{h}_{s}$) are advected by ice velocities: |
| 877 |
(negative thickness or concentration). These schemes conserve volume |
(negative thickness or concentration). These schemes conserve volume |
| 878 |
and horizontal area and are unconditionally stable, so that we can set |
and horizontal area and are unconditionally stable, so that we can set |
| 879 |
$D_{X}=0$. Run-timeflags: \code{SEAICEadvScheme} (default=2, is the |
$D_{X}=0$. Run-timeflags: \code{SEAICEadvScheme} (default=2, is the |
| 880 |
historic 2nd-order, centered difference scheme), \code{DIFF1} |
historic 2nd-order, centered difference scheme), \code{DIFF1} = |
| 881 |
|
$D_{X}/\Delta{x}$ |
| 882 |
(default=0.004). |
(default=0.004). |
| 883 |
|
|
| 884 |
There is considerable doubt about the reliability of a ``zero-layer'' |
The MITgcm sea ice model provides the option to use |
|
thermodynamic model --- \citet{semtner84} found significant errors in |
|
|
phase (one month lead) and amplitude ($\approx$50\%\,overestimate) in |
|
|
such models --- so that today many sea ice models employ more complex |
|
|
thermodynamics. The MITgcm sea ice model provides the option to use |
|
| 885 |
the thermodynamics model of \citet{win00}, which in turn is based on |
the thermodynamics model of \citet{win00}, which in turn is based on |
| 886 |
the 3-layer model of \citet{sem76} and which treats brine content by |
the 3-layer model of \citet{sem76} and which treats brine content by |
| 887 |
means of enthalpy conservation; the corresponding package |
means of enthalpy conservation; the corresponding package |
| 893 |
The internal sea ice temperature is inferred from ice enthalpy. To |
The internal sea ice temperature is inferred from ice enthalpy. To |
| 894 |
avoid unphysical (negative) values for ice thickness and |
avoid unphysical (negative) values for ice thickness and |
| 895 |
concentration, a positive 2nd-order advection scheme with a SuperBee |
concentration, a positive 2nd-order advection scheme with a SuperBee |
| 896 |
flux limiter \citep{roe:85} is used in this study to advect all |
flux limiter \citep{roe:85} should be used to advect all |
| 897 |
sea-ice-related quantities of the \citet{win00} thermodynamic model. |
sea-ice-related quantities of the \citet{win00} thermodynamic model |
| 898 |
Because of the non-linearity of the advection scheme, care must be |
(runtime flag \code{thSIceAdvScheme=77} and |
| 899 |
taken in advecting these quantities: when simply using ice velocity to |
\code{thSIce\_diffK}=$D_{X}$=0 in \code{data.ice}, defaults are 0). Because of the |
| 900 |
advect enthalpy, the total energy (i.e., the volume integral of |
non-linearity of the advection scheme, care must be taken in advecting |
| 901 |
enthalpy) is not conserved. Alternatively, one can advect the energy |
these quantities: when simply using ice velocity to advect enthalpy, |
| 902 |
content (i.e., product of ice-volume and enthalpy) but then false |
the total energy (i.e., the volume integral of enthalpy) is not |
| 903 |
enthalpy extrema can occur, which then leads to unrealistic ice |
conserved. Alternatively, one can advect the energy content (i.e., |
| 904 |
temperature. In the currently implemented solution, the sea-ice mass |
product of ice-volume and enthalpy) but then false enthalpy extrema |
| 905 |
flux is used to advect the enthalpy in order to ensure conservation of |
can occur, which then leads to unrealistic ice temperature. In the |
| 906 |
enthalpy and to prevent false enthalpy extrema. % |
currently implemented solution, the sea-ice mass flux is used to |
| 907 |
In order to use the \code{seaice}-package with the more sophisticated |
advect the enthalpy in order to ensure conservation of enthalpy and to |
| 908 |
thermodynamics of \code{thsice}, compile both packages and turn both |
prevent false enthalpy extrema. % |
|
package on in \code{data.pkg}; see an example in |
|
|
\code{global\_ocean.cs32x15/input.icedyn}. |
|
| 909 |
|
|
| 910 |
%---------------------------------------------------------------------- |
%---------------------------------------------------------------------- |
| 911 |
|
|
| 971 |
Available output fields are summarized in |
Available output fields are summarized in |
| 972 |
Table \ref{tab:pkg:seaice:diagnostics}. |
Table \ref{tab:pkg:seaice:diagnostics}. |
| 973 |
|
|
| 974 |
\begin{table}[!ht] |
\input{s_phys_pkgs/text/seaice_diags.tex} |
|
\centering |
|
|
\label{tab:pkg:seaice:diagnostics} |
|
|
{\footnotesize |
|
|
\begin{verbatim} |
|
|
---------+----+----+----------------+----------------- |
|
|
<-Name->|Levs|grid|<-- Units -->|<- Tile (max=80c) |
|
|
---------+----+----+----------------+----------------- |
|
|
SIarea | 1 |SM |m^2/m^2 |SEAICE fractional ice-covered area [0 to 1] |
|
|
SIheff | 1 |SM |m |SEAICE effective ice thickness |
|
|
SIuice | 1 |UU |m/s |SEAICE zonal ice velocity, >0 from West to East |
|
|
SIvice | 1 |VV |m/s |SEAICE merid. ice velocity, >0 from South to North |
|
|
SIhsnow | 1 |SM |m |SEAICE snow thickness |
|
|
SIhsalt | 1 |SM |g/m^2 |SEAICE effective salinity |
|
|
SIatmFW | 1 |SM |kg/m^2/s |Net freshwater flux from the atmosphere (+=down) |
|
|
SIuwind | 1 |SM |m/s |SEAICE zonal 10-m wind speed, >0 increases uVel |
|
|
SIvwind | 1 |SM |m/s |SEAICE meridional 10-m wind speed, >0 increases uVel |
|
|
SIfu | 1 |UU |N/m^2 |SEAICE zonal surface wind stress, >0 increases uVel |
|
|
SIfv | 1 |VV |N/m^2 |SEAICE merid. surface wind stress, >0 increases vVel |
|
|
SIempmr | 1 |SM |kg/m^2/s |SEAICE upward freshwater flux, > 0 increases salt |
|
|
SIqnet | 1 |SM |W/m^2 |SEAICE upward heatflux, turb+rad, >0 decreases theta |
|
|
SIqsw | 1 |SM |W/m^2 |SEAICE upward shortwave radiat., >0 decreases theta |
|
|
SIpress | 1 |SM |m^2/s^2 |SEAICE strength (with upper and lower limit) |
|
|
SIzeta | 1 |SM |m^2/s |SEAICE nonlinear bulk viscosity |
|
|
SIeta | 1 |SM |m^2/s |SEAICE nonlinear shear viscosity |
|
|
SIsigI | 1 |SM |no units |SEAICE normalized principle stress, component one |
|
|
SIsigII | 1 |SM |no units |SEAICE normalized principle stress, component two |
|
|
SIthdgrh| 1 |SM |m/s |SEAICE thermodynamic growth rate of effective ice thickness |
|
|
SIsnwice| 1 |SM |m/s |SEAICE ice formation rate due to flooding |
|
|
SIuheff | 1 |UU |m^2/s |Zonal Transport of effective ice thickness |
|
|
SIvheff | 1 |VV |m^2/s |Meridional Transport of effective ice thickness |
|
|
ADVxHEFF| 1 |UU |m.m^2/s |Zonal Advective Flux of eff ice thickn |
|
|
ADVyHEFF| 1 |VV |m.m^2/s |Meridional Advective Flux of eff ice thickn |
|
|
DFxEHEFF| 1 |UU |m.m^2/s |Zonal Diffusive Flux of eff ice thickn |
|
|
DFyEHEFF| 1 |VV |m.m^2/s |Meridional Diffusive Flux of eff ice thickn |
|
|
ADVxAREA| 1 |UU |m^2/m^2.m^2/s |Zonal Advective Flux of fract area |
|
|
ADVyAREA| 1 |VV |m^2/m^2.m^2/s |Meridional Advective Flux of fract area |
|
|
DFxEAREA| 1 |UU |m^2/m^2.m^2/s |Zonal Diffusive Flux of fract area |
|
|
DFyEAREA| 1 |VV |m^2/m^2.m^2/s |Meridional Diffusive Flux of fract area |
|
|
ADVxSNOW| 1 |UU |m.m^2/s |Zonal Advective Flux of eff snow thickn |
|
|
ADVySNOW| 1 |VV |m.m^2/s |Meridional Advective Flux of eff snow thickn |
|
|
DFxESNOW| 1 |UU |m.m^2/s |Zonal Diffusive Flux of eff snow thickn |
|
|
DFyESNOW| 1 |VV |m.m^2/s |Meridional Diffusive Flux of eff snow thickn |
|
|
ADVxSSLT| 1 |UU |psu.m^2/s |Zonal Advective Flux of seaice salinity |
|
|
ADVySSLT| 1 |VV |psu.m^2/s |Meridional Advective Flux of seaice salinity |
|
|
DFxESSLT| 1 |UU |psu.m^2/s |Zonal Diffusive Flux of seaice salinity |
|
|
DFyESSLT| 1 |VV |psu.m^2/s |Meridional Diffusive Flux of seaice salinity |
|
|
\end{verbatim} |
|
|
} |
|
|
\caption{Available diagnostics of the seaice-package} |
|
|
\end{table} |
|
|
|
|
| 975 |
|
|
| 976 |
%\subsubsection{Package Reference} |
%\subsubsection{Package Reference} |
| 977 |
|
|
| 979 |
\label{sec:pkg:seaice:experiments} |
\label{sec:pkg:seaice:experiments} |
| 980 |
|
|
| 981 |
\begin{itemize} |
\begin{itemize} |
| 982 |
\item{Labrador Sea experiment in lab\_sea verification directory. } |
\item{Labrador Sea experiment in \code{lab\_sea} verification directory. } |
| 983 |
|
\item \code{seaice\_obcs}, based on \code{lab\_sea} |
| 984 |
|
\item \code{offline\_exf\_seaice/input.seaicetd}, based on \code{lab\_sea} |
| 985 |
|
\item \code{global\_ocean.cs32x15/input.icedyn} and |
| 986 |
|
\code{global\_ocean.cs32x15/input.seaice}, global |
| 987 |
|
cubed-sphere-experiment with combinations of \code{seaice} and |
| 988 |
|
\code{thsice} |
| 989 |
\end{itemize} |
\end{itemize} |
| 990 |
|
|
| 991 |
|
|