@@ -384,39 +384,39 @@ The momentum equation of the sea-ice model is
384384.. math ::
385385
386386 \label {eq:momseaice}
387- m \frac {D{\ensuremath {\vec {\mathbf {u}}}}}{Dt} = -mf{\ensuremath {\vec {\mathbf {k}}}}\times {\ensuremath {\vec {\mathbf {u}}}} + {{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{air} +
388- {{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean} - m \nabla {\phi (0 )} + {\ensuremath {\vec {\mathbf {F}}}},
387+ m \frac {D{{\vec {\mathbf {u}}}}}{Dt} = -mf{{\vec {\mathbf {k}}}}\times {{\vec {\mathbf {u}}}} + {{{\vec {\mathbf {\mathbf {\tau }}}}}}_{air} +
388+ {{{\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean} - m \nabla {\phi (0 )} + {{\vec {\mathbf {F}}}},
389389
390390 where :math: `m=m_{i}+m_{s}` is the ice and snow mass per unit area;
391- :math: `{\ensuremath {\vec {\mathbf {u}}}}=u{\ensuremath {\vec {\mathbf {i}}}}+v{\ensuremath {\vec {\mathbf {j}}}}`
392- is the ice velocity vector; :math: `{\ensuremath {\vec {\mathbf {i}}}}`,
393- :math: `{\ensuremath {\vec {\mathbf {j}}}}`, and
394- :math: `{\ensuremath {\vec {\mathbf {k}}}}` are unit vectors in the
391+ :math: `{{\vec {\mathbf {u}}}}=u{{\vec {\mathbf {i}}}}+v{{\vec {\mathbf {j}}}}`
392+ is the ice velocity vector; :math: `{{\vec {\mathbf {i}}}}`,
393+ :math: `{{\vec {\mathbf {j}}}}`, and
394+ :math: `{{\vec {\mathbf {k}}}}` are unit vectors in the
395395:math: `x`, :math: `y`, and :math: `z` directions, respectively; :math: `f`
396396is the Coriolis parameter;
397- :math: `{{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{air}` and
398- :math: `{{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean}` are the
397+ :math: `{{{\vec {\mathbf {\mathbf {\tau }}}}}}_{air}` and
398+ :math: `{{{\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean}` are the
399399wind-ice and ocean-ice stresses, respectively; :math: `g` is the gravity
400400accelation; :math: `\nabla\phi (0 )` is the gradient (or tilt) of the sea
401401surface height; :math: `\phi (0 ) = g\eta + p_{a}/\rho _{0 } + mg/\rho _{0 }`
402402is the sea surface height potential in response to ocean dynamics
403403(:math: `g\eta `), to atmospheric pressure loading
404404(:math: `p_{a}/\rho _{0 }`, where :math: `\rho _{0 }` is a reference density)
405405and a term due to snow and ice loading ; and
406- :math: `{\ensuremath {\vec {\mathbf {F}}}}=\nabla\cdot\sigma ` is the
406+ :math: `{{\vec {\mathbf {F}}}}=\nabla\cdot\sigma ` is the
407407divergence of the internal ice stress tensor :math: `\sigma _{ij}`.
408408Advection of sea-ice momentum is neglected. The wind and ice-ocean
409409stress terms are given by
410410
411411.. math ::
412412
413413 \begin {aligned}
414- {{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{air} = & \rho _{air} C_{air} |{\ensuremath {\vec {\mathbf {U}}}}_{air} -{\ensuremath {\vec {\mathbf {u}}}}|
415- R_{air} ({\ensuremath {\vec {\mathbf {U}}}}_{air} -{\ensuremath {\vec {\mathbf {u}}}}), \\
416- {{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean} = & \rho _{ocean}C_{ocean} |{\ensuremath {\vec {\mathbf {U}}}}_{ocean}-{\ensuremath {\vec {\mathbf {u}}}}|
417- R_{ocean}({\ensuremath {\vec {\mathbf {U}}}}_{ocean}-{\ensuremath {\vec {\mathbf {u}}}}),\end {aligned}
414+ {{{\vec {\mathbf {\mathbf {\tau }}}}}}_{air} = & \rho _{air} C_{air} |{{\vec {\mathbf {U}}}}_{air} -{{\vec {\mathbf {u}}}}|
415+ R_{air} ({{\vec {\mathbf {U}}}}_{air} -{{\vec {\mathbf {u}}}}), \\
416+ {{{\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean} = & \rho _{ocean}C_{ocean} |{{\vec {\mathbf {U}}}}_{ocean}-{{\vec {\mathbf {u}}}}|
417+ R_{ocean}({{\vec {\mathbf {U}}}}_{ocean}-{{\vec {\mathbf {u}}}}),\end {aligned}
418418
419- where :math: `{\ensuremath {\vec {\mathbf {U}}}}_{air/ocean}` are the
419+ where :math: `{{\vec {\mathbf {U}}}}_{air/ocean}` are the
420420surface winds of the atmosphere and surface currents of the ocean,
421421respectively; :math: `C_{air/ocean}` are air and ocean drag coefficients;
422422:math: `\rho _{air/ocean}` are reference densities; and
@@ -515,15 +515,15 @@ written as
515515.. math ::
516516
517517 \label {eq:matrixmom}
518- {\ensuremath {\mathbf {A}}}({\ensuremath {\vec {\mathbf {x}}}})\,{\ensuremath {\vec {\mathbf {x}}}} = {\ensuremath {\vec {\mathbf {b}}}}({\ensuremath {\vec {\mathbf {x}}}}).
518+ {{\mathbf {A}}}({{\vec {\mathbf {x}}}})\,{{\vec {\mathbf {x}}}} = {{\vec {\mathbf {b}}}}({{\vec {\mathbf {x}}}}).
519519
520- The solution vector :math: `{\ensuremath {\vec {\mathbf {x}}}}` consists of
520+ The solution vector :math: `{{\vec {\mathbf {x}}}}` consists of
521521the two velocity components :math: `u` and :math: `v` that contain the
522522velocity variables at all grid points and at one time level. The
523523standard (and default) method for solving Eq.([eq:matrixmom]) in the sea
524524ice component of the , as in many sea ice models, is an iterative Picard
525525solver: in the :math: `k`-th iteration a linearized form
526- :math: `{\ensuremath {\mathbf {A}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\,{\ensuremath {\vec {\mathbf {x}}}}^{k} = {\ensuremath {\vec {\mathbf {b}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })`
526+ :math: `{{\mathbf {A}}}({{\vec {\mathbf {x}}}}^{k-1 })\,{{\vec {\mathbf {x}}}}^{k} = {{\vec {\mathbf {b}}}}({{\vec {\mathbf {x}}}}^{k-1 })`
527527is solved (in the case of the MITgcm it is a Line Successive (over)
528528Relaxation (LSR) algorithm ). Picard solvers converge slowly, but
529529generally the iteration is terminated after only a few non-linear steps
@@ -536,42 +536,42 @@ In order to overcome the poor convergence of the Picard-solver,
536536introduced a Jacobian-free Newton-Krylov solver for the sea ice momentum
537537equations. This solver is also implemented in the MITgcm . The Newton
538538method transforms minimizing the residual
539- :math: `{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}) = {\ensuremath {\mathbf {A}}}({\ensuremath {\vec {\mathbf {x}}}})\,{\ensuremath {\vec {\mathbf {x}}}} -
540- {\ensuremath {\vec {\mathbf {b}}}}({\ensuremath {\vec {\mathbf {x}}}})` to
539+ :math: `{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}) = {{\mathbf {A}}}({{\vec {\mathbf {x}}}})\,{{\vec {\mathbf {x}}}} -
540+ {{\vec {\mathbf {b}}}}({{\vec {\mathbf {x}}}})` to
541541finding the roots of a multivariate Taylor expansion of the residual
542542:math: `\vec {\mathbf {F}}` around the previous (:math: `k-1 `) estimate
543- :math: `{\ensuremath {\vec {\mathbf {x}}}}^{k-1 }`:
543+ :math: `{{\vec {\mathbf {x}}}}^{k-1 }`:
544544
545545.. math ::
546546
547547 \label {eq:jfnktaylor}
548- {\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 }+\delta {\ensuremath {\vec {\mathbf {x}}}}^{k}) =
549- {\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 }) + {\ensuremath {\vec {\mathbf {F}}}}'({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\,\delta {\ensuremath {\vec {\mathbf {x}}}}^{k}
548+ {{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 }+\delta {{\vec {\mathbf {x}}}}^{k}) =
549+ {{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 }) + {{\vec {\mathbf {F}}}}'({{\vec {\mathbf {x}}}}^{k-1 })\,\delta {{\vec {\mathbf {x}}}}^{k}
550550
551551 with the Jacobian
552- :math: `{\ensuremath {\mathbf {J}}}\equiv {\ensuremath {\vec {\mathbf {F}}}}'`.
552+ :math: `{{\mathbf {J}}}\equiv {{\vec {\mathbf {F}}}}'`.
553553The root
554- :math: `{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 }+\delta {\ensuremath {\vec {\mathbf {x}}}}^{k})=0 `
554+ :math: `{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 }+\delta {{\vec {\mathbf {x}}}}^{k})=0 `
555555is found by solving
556556
557557.. math ::
558558
559559 \label {eq:jfnklin}
560- {\ensuremath {\mathbf {J}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\,\delta {\ensuremath {\vec {\mathbf {x}}}}^{k} = -{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })
560+ {{\mathbf {J}}}({{\vec {\mathbf {x}}}}^{k-1 })\,\delta {{\vec {\mathbf {x}}}}^{k} = -{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })
561561
562- for :math: `\delta {\ensuremath {\vec {\mathbf {x}}}}^{k}`. The next
562+ for :math: `\delta {{\vec {\mathbf {x}}}}^{k}`. The next
563563(:math: `k`-th) estimate is given by
564- :math: `{\ensuremath {\vec {\mathbf {x}}}}^{k}={\ensuremath {\vec {\mathbf {x}}}}^{k-1 }+a\,\delta {\ensuremath {\vec {\mathbf {x}}}}^{k}`.
564+ :math: `{{\vec {\mathbf {x}}}}^{k}={{\vec {\mathbf {x}}}}^{k-1 }+a\,\delta {{\vec {\mathbf {x}}}}^{k}`.
565565In order to avoid overshoots the factor :math: `a` is iteratively reduced
566566in a line search
567567(:math: `a=1 , \frac {1 }{2 }, \frac {1 }{4 }, \frac {1 }{8 }, \ldots `) until
568- :math: `\|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^k)\| < \|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\|`,
568+ :math: `\|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^k)\| < \|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })\|`,
569569where :math: `\|\cdot \|=\int\cdot \, dx^2 ` is the :math: `L_2 `-norm. In
570570practice, the line search is stopped at :math: `a=\frac {1 }{8 }`. The line
571571search starts after :math: `\code {SEAICE\_JFNK\_lsIter}` non-linear
572572Newton iterations (off by default).
573573
574- Forming the Jacobian :math: `{\ensuremath {\mathbf {J}}}` explicitly is
574+ Forming the Jacobian :math: `{{\mathbf {J}}}` explicitly is
575575often avoided as “too error prone and time consuming” . Instead, Krylov
576576methods only require the action of :math: `\mathbf {J}` on an arbitrary
577577vector :math: `\vec {\mathbf {w}}` and hence allow a matrix free algorithm
@@ -581,8 +581,8 @@ approximated by a first-order Taylor series expansion:
581581.. math ::
582582
583583 \label {eq:jfnkjacvecfd}
584- {\ensuremath {\mathbf {J}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\,{\ensuremath {\vec {\mathbf {w}}}} \approx
585- \frac {{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 }+\epsilon {\ensuremath {\vec {\mathbf {w}}}}) - {\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })}
584+ {{\mathbf {J}}}({{\vec {\mathbf {x}}}}^{k-1 })\,{{\vec {\mathbf {w}}}} \approx
585+ \frac {{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 }+\epsilon {{\vec {\mathbf {w}}}}) - {{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })}
586586 {\epsilon }
587587
588588 or computed exactly with the help of automatic differentiation (AD)
@@ -591,45 +591,45 @@ tools. sets the step size :math:`\epsilon`.
591591We use the Flexible Generalized Minimum RESidual method with right-hand
592592side preconditioning to solve Eq.([eq:jfnklin]) iteratively starting
593593from a first guess of
594- :math: `\delta {\ensuremath {\vec {\mathbf {x}}}}^{k}_{0 } = 0 `. For the
594+ :math: `\delta {{\vec {\mathbf {x}}}}^{k}_{0 } = 0 `. For the
595595preconditioning matrix :math: `\mathbf {P}` we choose a simplified form of
596596the system matrix
597- :math: `{\ensuremath {\mathbf {A}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })`
598- where :math: `{\ensuremath {\vec {\mathbf {x}}}}^{k-1 }` is the estimate of
597+ :math: `{{\mathbf {A}}}({{\vec {\mathbf {x}}}}^{k-1 })`
598+ where :math: `{{\vec {\mathbf {x}}}}^{k-1 }` is the estimate of
599599the previous Newton step :math: `k-1 `. The transformed
600600equation([eq:jfnklin]) becomes
601601
602602.. math ::
603603
604604 \label {eq:jfnklinpc}
605- {\ensuremath {\mathbf {J}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\,{\ensuremath {\mathbf {P}}}^{-1 }\delta {\ensuremath {\vec {\mathbf {z}}}} =
606- -{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 }),
607- \quad\text {with}\quad \delta {\ensuremath {\vec {\mathbf {z}}}}={\ensuremath {\mathbf {P}}}\delta {\ensuremath {\vec {\mathbf {x}}}}^{k}.
605+ {{\mathbf {J}}}({{\vec {\mathbf {x}}}}^{k-1 })\,{{\mathbf {P}}}^{-1 }\delta {{\vec {\mathbf {z}}}} =
606+ -{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 }),
607+ \quad\text {with}\quad \delta {{\vec {\mathbf {z}}}}={{\mathbf {P}}}\delta {{\vec {\mathbf {x}}}}^{k}.
608608
609609 The Krylov method iteratively improves the approximate solution
610610to ([eq:jfnklinpc]) in subspace
611- (:math: `{\ensuremath {\vec {\mathbf {r}}}}_0 `,
612- :math: `{\ensuremath {\mathbf {J}}}{\ensuremath {\mathbf {P}}}^{-1 }{\ensuremath {\vec {\mathbf {r}}}}_0 `,
613- :math: `({\ensuremath {\mathbf {J}}}{\ensuremath {\mathbf {P}}}^{-1 })^2 {\ensuremath {\vec {\mathbf {r}}}}_0 `,
611+ (:math: `{{\vec {\mathbf {r}}}}_0 `,
612+ :math: `{{\mathbf {J}}}{{\mathbf {P}}}^{-1 }{{\vec {\mathbf {r}}}}_0 `,
613+ :math: `({{\mathbf {J}}}{{\mathbf {P}}}^{-1 })^2 {{\vec {\mathbf {r}}}}_0 `,
614614…,
615- :math: `({\ensuremath {\mathbf {J}}}{\ensuremath {\mathbf {P}}}^{-1 })^m{\ensuremath {\vec {\mathbf {r}}}}_0 `)
615+ :math: `({{\mathbf {J}}}{{\mathbf {P}}}^{-1 })^m{{\vec {\mathbf {r}}}}_0 `)
616616with increasing :math: `m`;
617- :math: `{\ensuremath {\vec {\mathbf {r}}}}_0 = -{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })
618- -{\ensuremath {\mathbf {J}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\,\delta {\ensuremath {\vec {\mathbf {x}}}}^{k}_{0 }`
617+ :math: `{{\vec {\mathbf {r}}}}_0 = -{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })
618+ -{{\mathbf {J}}}({{\vec {\mathbf {x}}}}^{k-1 })\,\delta {{\vec {\mathbf {x}}}}^{k}_{0 }`
619619is the initial residual of ([eq:jfnklin]);
620- :math: `{\ensuremath {\vec {\mathbf {r}}}}_0 =-{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })`
620+ :math: `{{\vec {\mathbf {r}}}}_0 =-{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })`
621621with the first guess
622- :math: `\delta {\ensuremath {\vec {\mathbf {x}}}}^{k}_{0 }=0 `. We allow a
622+ :math: `\delta {{\vec {\mathbf {x}}}}^{k}_{0 }=0 `. We allow a
623623Krylov-subspace of dimension \ :math: `m=50 ` and we do not use restarts.
624624The preconditioning operation involves applying
625- :math: `{\ensuremath {\mathbf {P}}}^{-1 }` to the basis vectors
626- :math: `{\ensuremath {\vec {\mathbf {v}}}}_0 ,
627- {\ensuremath {\vec {\mathbf {v}}}}_1 , {\ensuremath {\vec {\mathbf {v}}}}_2 , \ldots , {\ensuremath {\vec {\mathbf {v}}}}_m`
625+ :math: `{{\mathbf {P}}}^{-1 }` to the basis vectors
626+ :math: `{{\vec {\mathbf {v}}}}_0 ,
627+ {{\vec {\mathbf {v}}}}_1 , {{\vec {\mathbf {v}}}}_2 , \ldots , {{\vec {\mathbf {v}}}}_m`
628628of the Krylov subspace. This operation is approximated by solving the
629629linear system
630- :math: `{\ensuremath {\mathbf {P}}}\,{\ensuremath {\vec {\mathbf {w}}}}={\ensuremath {\vec {\mathbf {v}}}}_i`.
631- Because :math: `{\ensuremath {\mathbf {P}}} \approx
632- {\ensuremath {\mathbf {A}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })`, we
630+ :math: `{{\mathbf {P}}}\,{{\vec {\mathbf {w}}}}={{\vec {\mathbf {v}}}}_i`.
631+ Because :math: `{{\mathbf {P}}} \approx
632+ {{\mathbf {A}}}({{\vec {\mathbf {x}}}}^{k-1 })`, we
633633can use the LSR-algorithm already implemented in the Picard solver. Each
634634preconditioning operation uses a fixed number of 10 LSR-iterations
635635avoiding any termination criterion. More details and results can be
@@ -641,22 +641,22 @@ defining (see above) for better convergence. The non-linear Newton
641641iteration is terminated when the :math: `L_2 `-norm of the residual is
642642reduced by :math: `\gamma _{\mathrm {nl}}` (runtime parameter will already
643643lead to expensive simulations) with respect to the initial norm:
644- :math: `\|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^k)\| <
645- \gamma _{\mathrm {nl}}\|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^0 )\|`.
644+ :math: `\|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^k)\| <
645+ \gamma _{\mathrm {nl}}\|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^0 )\|`.
646646Within a non-linear iteration, the linear FGMRES solver is terminated
647647when the residual is smaller than
648- :math: `\gamma _k\|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\|`
648+ :math: `\gamma _k\|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })\|`
649649where :math: `\gamma _k` is determined by
650650
651651.. math ::
652652
653653 \label {eq:jfnkgammalin}
654654 \gamma _k =
655655 \begin {cases}
656- \gamma _0 &\text {for $\|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\| \geq r$}, \\
656+ \gamma _0 &\text {for $\|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })\| \geq r$}, \\
657657 \max \left (\gamma _{\min },
658- \frac {\|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\| }{\|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-2 })\| }\right )
659- &\text {for $\|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{k-1 })\| < r$,}
658+ \frac {\|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })\| }{\|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-2 })\| }\right )
659+ &\text {for $\|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{k-1 })\| < r$,}
660660 \end {cases}
661661
662662 so that the linear tolerance parameter :math: `\gamma _k` decreases with
@@ -665,7 +665,7 @@ This inexact Newton method is generally more robust and computationally
665665more efficient than exact methods . Typical parameter choices are
666666:math: `\gamma _0 =\code {JFNKgamma\_lin\_max}=0.99 `,
667667:math: `\gamma _{\min }=\code {JFNKgamma\_lin\_min}=0.1 `, and :math: `r =
668- \code {JFNKres\_tFac}\times \|{\ensuremath {\vec {\mathbf {F}}}}({\ensuremath {\vec {\mathbf {x}}}}^{0 })\|`
668+ \code {JFNKres\_tFac}\times \|{{\vec {\mathbf {F}}}}({{\vec {\mathbf {x}}}}^{0 })\|`
669669with :math: `\code {JFNKres\_tFac} = \frac {1 }{2 }`. We recommend a maximum
670670number of non-linear iterations :math: `\code {SEAICEnewtonIterMax} = 100 `
671671and a maximum number of Krylov iterations
@@ -849,17 +849,17 @@ Ice-Ocean stress [sec:pkg:seaice:iceoceanstress]
849849
850850|
851851| Moving sea ice exerts a stress on the ocean which is the opposite of
852- the stress :math: `{{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean}`
852+ the stress :math: `{{{\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean}`
853853in Eq. [eq:momseaice]. This stess is applied directly to the surface
854854layer of the ocean model. An alternative ocean stress formulation is
855855given by . Rather than applying
856- :math: `{{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean}` directly,
856+ :math: `{{{\vec {\mathbf {\mathbf {\tau }}}}}}_{ocean}` directly,
857857the stress is derived from integrating over the ice thickness to the
858858bottom of the oceanic surface layer. In the resulting equation for the
859859*combined * ocean-ice momentum, the interfacial stress cancels and the
860860total stress appears as the sum of windstress and divergence of internal
861861ice stresses:
862- :math: `\delta (z) ({{\ensuremath {\vec {\mathbf {\mathbf {\tau }}}}}}_{air} + {\ensuremath {\vec {\mathbf {F}}}})/\rho _0 `,
862+ :math: `\delta (z) ({{{\vec {\mathbf {\mathbf {\tau }}}}}}_{air} + {{\vec {\mathbf {F}}}})/\rho _0 `,
863863. The disadvantage of this formulation is that now the velocity in the
864864surface layer of the ocean that is used to advect tracers, is really an
865865average over the ocean surface velocity and the ice velocity leading to
@@ -1118,7 +1118,7 @@ concentration :math:`c` and effective snow thickness
11181118.. math ::
11191119
11201120 \label {eq:advection}
1121- \frac {\partial {X}}{\partial {t}} = - \nabla\cdot \left ({\ensuremath {\vec {\mathbf {u}}}}\, X\right ) +
1121+ \frac {\partial {X}}{\partial {t}} = - \nabla\cdot \left ({{\vec {\mathbf {u}}}}\, X\right ) +
11221122 \Gamma _{X} + D_{X}
11231123
11241124 where :math: `\Gamma _X` are the thermodynamic source terms and
0 commit comments