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

Diff of /manual/s_phys_pkgs/text/shelfice.tex

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

revision 1.1 by mlosch, Thu May 14 10:19:12 2009 UTC revision 1.5 by mlosch, Thu Dec 1 11:59:46 2011 UTC
# Line 11  Authors: Martin Losch, Jean-Michel Campi Line 11  Authors: Martin Losch, Jean-Michel Campi
11    
12  %----------------------------------------------------------------------  %----------------------------------------------------------------------
13  \subsubsection{Introduction  \subsubsection{Introduction
14  \label{sec:pkg:exf:intro}}  \label{sec:pkg:shelfice:intro}}
15    
16    
17  Package ``shelfice'' provides a thermodynamic model for basal melting  Package ``shelfice'' provides a thermodynamic model for basal melting
# Line 20  underneath floating ice shelves. Line 20  underneath floating ice shelves.
20  CPP options enable or disable different aspects of the package  CPP options enable or disable different aspects of the package
21  (Section \ref{sec:pkg:shelfice:config}).  (Section \ref{sec:pkg:shelfice:config}).
22  Run-Time options, flags, filenames and field-related dates/times are  Run-Time options, flags, filenames and field-related dates/times are
23  set in \texttt{data.shelfice}  set in \code{data.shelfice}
24  (Section \ref{sec:pkg:shelfice:runtime}).  (Section \ref{sec:pkg:shelfice:runtime}).
25  A description of key subroutines is given in Section  A description of key subroutines is given in Section
26  \ref{sec:pkg:shelfice:subroutines}.  \ref{sec:pkg:shelfice:subroutines}.
27  Input fields, units and sign conventions are summarized in  Input fields, units and sign conventions are summarized in
28  Section \ref{sec:pkg:shelfice:fields_units}, and available diagnostics  Section \ref{sec:pkg:shelfice:fields_units}, and available diagnostics
29  output is listed in Section \ref{sec:pkg:shelfice:fields_diagnostics}.  output is listed in Section \ref{sec:pkg:shelfice:diagnostics}.
30    
31  %----------------------------------------------------------------------  %----------------------------------------------------------------------
32    
# Line 41  As with all MITgcm packages, SHELFICE ca Line 41  As with all MITgcm packages, SHELFICE ca
41  \begin{itemize}  \begin{itemize}
42  %  %
43  \item  \item
44  using the \texttt{packages.conf} file by adding \texttt{shelfice} to it,  using the \code{packages.conf} file by adding \code{shelfice} to it,
45  %  %
46  \item  \item
47  or using \texttt{genmake2} adding  or using \code{genmake2} adding
48  \texttt{-enable=shelfice} or \texttt{-disable=shelfice} switches  \code{-enable=shelfice} or \code{-disable=shelfice} switches
49  %  %
50  \item  \item
51  \textit{required packages and CPP options}: \\  \textit{required packages and CPP options}: \\
# Line 56  schemes, be aware, that non-local parame Line 56  schemes, be aware, that non-local parame
56  off, e.g.\ for KPP (\ref{sec:pkg:kpp}).  off, e.g.\ for KPP (\ref{sec:pkg:kpp}).
57  %  %
58  \end{itemize}  \end{itemize}
59  (see Section \ref{sect:buildingCode}).  (see Section \ref{sec:buildingCode}).
60    
61  Parts of the SHELFICE code can be enabled or disabled at compile time  Parts of the SHELFICE code can be enabled or disabled at compile time
62  via CPP preprocessor flags. These options are set  via CPP preprocessor flags. These options are set
63  \texttt{SHELFICE\_OPTIONS.h}.  \code{SHELFICE\_OPTIONS.h}.
64  Table \ref{tab:pkg:shelfice:cpp} summarizes these options.  Table \ref{tab:pkg:shelfice:cpp} summarizes these options.
65    
66  \begin{table}[h!]  \begin{table}[!ht]
67  \centering  \centering
68    \label{tab:pkg:shelfice:cpp}    \label{tab:pkg:shelfice:cpp}
69    {\footnotesize    {\footnotesize
# Line 71  Table \ref{tab:pkg:shelfice:cpp} summari Line 71  Table \ref{tab:pkg:shelfice:cpp} summari
71        \hline        \hline
72        \textbf{CPP option}  &  \textbf{Description}  \\        \textbf{CPP option}  &  \textbf{Description}  \\
73        \hline \hline        \hline \hline
74          \texttt{ALLOW\_SHELFICE\_DEBUG} &          \code{ALLOW\_SHELFICE\_DEBUG} &
75            Include code for enhanged diagnosis \\            Include code for enhanged diagnosis \\
76          \texttt{ALLOW\_ISOMIP\_TD} &          \code{ALLOW\_ISOMIP\_TD} &
77            Include code for simplifed ISOMIP thermodynamics \\            Include code for simplifed ISOMIP thermodynamics \\
78        \hline        \hline
79      \end{tabular}      \end{tabular}
80    }    }
81    \caption{Available CPP-flags to be set in \texttt{SHELFICE\_OPTIONS.h}}    \caption{Available CPP-flags to be set in \code{SHELFICE\_OPTIONS.h}}
82  \end{table}  \end{table}
83    
84  %----------------------------------------------------------------------  %----------------------------------------------------------------------
# Line 87  Table \ref{tab:pkg:shelfice:cpp} summari Line 87  Table \ref{tab:pkg:shelfice:cpp} summari
87  \label{sec:pkg:shelfice:runtime}}  \label{sec:pkg:shelfice:runtime}}
88    
89  Run-time parameters are set in files  Run-time parameters are set in files
90  \texttt{data.pkg} (read in \texttt{packages\_readparms.F}),  \code{data.pkg} (read in \code{packages\_readparms.F}),
91  and \texttt{data.shelfice} (read in \texttt{shelfice\_readparms.F}).  and \code{data.shelfice} (read in \code{shelfice\_readparms.F}).
92    
93  \paragraph{Enabling the package}  \paragraph{Enabling the package}
94  ~ \\  ~ \\
95  %  %
96  A package is switched on/off at run-time by setting  A package is switched on/off at run-time by setting
97  (e.g. for SHELFICE) \texttt{useSHELFICE = .TRUE.} in \texttt{data.pkg}.  (e.g.\ for SHELFICE) \code{useSHELFICE = .TRUE.} in \code{data.pkg}.
98    
99  \paragraph{General flags and parameters}  \paragraph{General flags and parameters}
100  ~ \\  ~ \\
101  %  %
102  Table~\ref{tab:pkg:shelfice:runtimeparms} lists all run-time parameters.  Table~\ref{tab:pkg:shelfice:runtimeparms} lists all run-time parameters.
103  \begin{table}[h!]  \begin{table}[!ht]
104    \caption{Run-time parameters and default values    \caption{Run-time parameters and default values
105      \label{tab:pkg:shelfice:runtimeparms}}      \label{tab:pkg:shelfice:runtimeparms}}
106    {\footnotesize    {\footnotesize
# Line 129  Table~\ref{tab:pkg:shelfice:runtimeparms Line 129  Table~\ref{tab:pkg:shelfice:runtimeparms
129        &  %---ref---        &  %---ref---
130        \\        \\
131        SHELFICEtopoFile         & UNSET        SHELFICEtopoFile         & UNSET
132        &   under-ice topography of ice shelfes        &   under-ice topography of ice shelves
133        &  %---ref---        &  %---ref---
134        \\        \\
135        SHELFICElatentHeat       &  334.0E+03        SHELFICElatentHeat       &  334.0E+03
# Line 137  Table~\ref{tab:pkg:shelfice:runtimeparms Line 137  Table~\ref{tab:pkg:shelfice:runtimeparms
137        &  %---ref---        &  %---ref---
138        \\        \\
139        SHELFICEHeatCapacity\_Cp & 2000.0E+00        SHELFICEHeatCapacity\_Cp & 2000.0E+00
140        &   latent heat of fusion ($c_{p,I}$)        &   specific heat capacity of ice ($c_{p,I}$)
141        &  %---ref---        &  %---ref---
142        \\        \\
143        rhoShelfIce              &  917.0E+00        rhoShelfIce              &  917.0E+00
# Line 199  Table~\ref{tab:pkg:shelfice:runtimeparms Line 199  Table~\ref{tab:pkg:shelfice:runtimeparms
199  }  }
200  \end{table}  \end{table}
201    
202    \paragraph{Input fields and units\label{sec:pkg:shelfice:fields_units}}
203    
204    \begin{description}
205    \item[\code{SHEFLICEtopoFile}:] under-ice topography of ice shelves in
206      meters; upwards is positive, that as for the bathymetry files,
207      negative values are required for topography below the sea-level;
208    \item[\code{SHEFLICEloadAnomalyFile}:] pressure load anomaly at the bottom of
209      the ice shelves in pressure units (Pa); this field is absolutely
210      required to avoid large excursions of the free surface during
211      initial adjustment processes; obtained by integrating an approximate
212      density from the surface at $z=0$ down to the bottom of the last
213      fully dry cell within the ice shelf, see
214      Eq.~(\ref{eq:surfacepressure}); however, the file
215      \code{SHEFLICEloadAnomalyFile} must not be $p_{top}$, but
216      $p_{top}-g\sum_{k'=1}^{n-1}\rho_{0}\Delta{z}_{k'}$, with
217      $\rho_{0}=$~\code{rhoConst}, so that in the absenses of a $\rho^{*}$
218      that is different from $\rho_{0}$, the anomaly is zero.
219    \end{description}
220    
221  %----------------------------------------------------------------------  %----------------------------------------------------------------------
222  \subsubsection{Description  \subsubsection{Description
# Line 228  assumed to be floating in isostatic equi Line 245  assumed to be floating in isostatic equi
245  of the water column is the atmospheric pressure $p_{a}$ plus the  of the water column is the atmospheric pressure $p_{a}$ plus the
246  weight of the ice-shelf. It is this weight of the ice-shelf that has  weight of the ice-shelf. It is this weight of the ice-shelf that has
247  to be provided as a boundary condition at the top of the water column  to be provided as a boundary condition at the top of the water column
248  (in run-time parameter \texttt{SHELFICEloadAnomalyFile}).  (in run-time parameter \code{SHELFICEloadAnomalyFile}).
249  The weight is conveniently computed by integrating a density profile  The weight is conveniently computed by integrating a density profile
250  $\rho^*$, that is constant in time and corresponds to the sea-water  $\rho^*$, that is constant in time and corresponds to the sea-water
251  replaced by ice, from $z=0$ to a ``reference'' ice-shelf draft at  replaced by ice, from $z=0$ to a ``reference'' ice-shelf draft at
# Line 277  gradient is computed in the center of th Line 294  gradient is computed in the center of th
294  \end{equation}  \end{equation}
295  where $H(k'-k)=1$ for $k'<k$ and $0$ otherwise.    where $H(k'-k)=1$ for $k'<k$ and $0$ otherwise.  
296    
297  Setting \texttt{SHELFICEboundaryLayer=.true.} introduces a simple  Setting \code{SHELFICEboundaryLayer=.true.} introduces a simple
298  boundary layer that reduces the potential noise problem at the cost of  boundary layer that reduces the potential noise problem at the cost of
299  increased vertical mixing. For this purpose the water temperature at  increased vertical mixing. For this purpose the water temperature at
300  the $k$-th layer abutting ice shelf topography for use in the heat  the $k$-th layer abutting ice shelf topography for use in the heat
# Line 390  $T_{f}$ which is computed from a linear Line 407  $T_{f}$ which is computed from a linear
407  \begin{equation}  \begin{equation}
408    \label{eq:helmerfreeze}    \label{eq:helmerfreeze}
409      T_{f} = (0.0901 - 0.0575\ S_{b})^{\circ}      T_{f} = (0.0901 - 0.0575\ S_{b})^{\circ}
410      - 7.61 \times 10^{-4}\frac{^{\circ}}{\text{dBar}}\ p_{b}      - 7.61 \times 10^{-4}\frac{\text{K}}{\text{dBar}}\ p_{b}
411  \end{equation}  \end{equation}
412  with the salinity $S_{b}$ and the pressure $p_{b}$ (in dBar) in the  with the salinity $S_{b}$ and the pressure $p_{b}$ (in dBar) in the
413  cell at the ice-water interface. From the salt budget, the salt flux  cell at the ice-water interface. From the salt budget, the salt flux
# Line 452  equation~(\ref{eq:hellmersaltbalance}) i Line 469  equation~(\ref{eq:hellmersaltbalance}) i
469  formulation it is obvious that melting ($q<0$) leads to a reduction of  formulation it is obvious that melting ($q<0$) leads to a reduction of
470  salinity.  salinity.
471    
472  The default value of \texttt{SHELFICEconserve=.false.} removes the  The default value of \code{SHELFICEconserve=.false.} removes the
473  contribution $q ( X_{b}-X )$ from Eq.~(\ref{eq:jenkinsbc}), making the  contribution $q ( X_{b}-X )$ from Eq.~(\ref{eq:jenkinsbc}), making the
474  boundary conditions for temperature non-conservative.  boundary conditions for temperature non-conservative.
475    
# Line 474  and the fresh water flux $q$ is computed Line 491  and the fresh water flux $q$ is computed
491    q = - \frac{c_{p} \rho \gamma_T (T - T_{b})}{L}.    q = - \frac{c_{p} \rho \gamma_T (T - T_{b})}{L}.
492  \end{equation}  \end{equation}
493  In order to use this formulation, set run-time parameter  In order to use this formulation, set run-time parameter
494  \texttt{useISOMIPTD=.true.} in data.shelfice.  \code{useISOMIPTD=.true.} in data.shelfice.
495    
496  \paragraph{Remark} The shelfice package and experiments demonstrating  \paragraph{Remark} The shelfice package and experiments demonstrating
497  its strenghts and weaknesses are also described in  its strenghts and weaknesses are also described in
# Line 487  the thermodynamics in the appendix of \c Line 504  the thermodynamics in the appendix of \c
504  \subsubsection{Key subroutines  \subsubsection{Key subroutines
505  \label{sec:pkg:shelfice:subroutines}}  \label{sec:pkg:shelfice:subroutines}}
506    
507  Top-level routine: \texttt{shelfice\_model.F}  Top-level routine: \code{shelfice\_model.F}
508    
509  {\footnotesize  {\footnotesize
510  \begin{verbatim}  \begin{verbatim}
# Line 505  C ... Line 522  C ...
522  C | | |-EXTERNAL_FORCING_T :: Problem specific forcing for temperature.  C | | |-EXTERNAL_FORCING_T :: Problem specific forcing for temperature.
523  C | | |-SHELFICE_FORCING_T :: apply heat fluxes from ice shelf model  C | | |-SHELFICE_FORCING_T :: apply heat fluxes from ice shelf model
524  C ...  C ...
525  C | | |-EXTERNAL_FORCING_S :: Problem specific forcing for temperature.  C | | |-EXTERNAL_FORCING_S :: Problem specific forcing for salinity.
526  C | | |-SHELFICE_FORCING_S :: apply fresh water fluxes from ice shelf model  C | | |-SHELFICE_FORCING_S :: apply fresh water fluxes from ice shelf model
527  C ...  C ...
528  C | |-DYNAMICS             :: Momentum equations driver.  C | |-DYNAMICS             :: Momentum equations driver.
# Line 535  Diagnostics output is available via the Line 552  Diagnostics output is available via the
552  Available output fields are summarized in  Available output fields are summarized in
553  Table \ref{tab:pkg:shelfice:diagnostics}.  Table \ref{tab:pkg:shelfice:diagnostics}.
554    
555  \begin{table}[h!]  \begin{table}[!ht]
556  \centering  \centering
557  \label{tab:pkg:shelfice:diagnostics}  \label{tab:pkg:shelfice:diagnostics}
558  {\footnotesize  {\footnotesize
# Line 569  Table \ref{tab:pkg:shelfice:diagnostics} Line 586  Table \ref{tab:pkg:shelfice:diagnostics}
586    
587  %%% Local Variables:  %%% Local Variables:
588  %%% mode: latex  %%% mode: latex
589  %%% TeX-master: "../manual"  %%% TeX-master: "../../manual"
590  %%% End:  %%% End:

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.5

  ViewVC Help
Powered by ViewVC 1.1.22