776 |
equations for $\phi_{nh}^{n+1}$: |
equations for $\phi_{nh}^{n+1}$: |
777 |
\begin{equation} |
\begin{equation} |
778 |
\partial_{xx} \phi_{nh}^{n+1} + \partial_{yy} \phi_{nh}^{n+1} + |
\partial_{xx} \phi_{nh}^{n+1} + \partial_{yy} \phi_{nh}^{n+1} + |
779 |
\partial_{rr} \phi_{nh}^{n+1} = |
\partial_{rr} \phi_{nh}^{n+1} = \left( |
780 |
\partial_x u^{**} + \partial_y v^{**} + \partial_r w^{*} |
\partial_x u^{**} + \partial_y v^{**} + \partial_r w^{*} |
781 |
|
\right) / \Delta t |
782 |
\end{equation} |
\end{equation} |
783 |
|
|
784 |
The entire algorithm can be summarized as the sequential solution of |
The entire algorithm can be summarized as the sequential solution of |
801 |
u^{**} & = & u^{*} - \Delta t g \partial_x \eta^{n+1} \label{eq:unx-nh}\\ |
u^{**} & = & u^{*} - \Delta t g \partial_x \eta^{n+1} \label{eq:unx-nh}\\ |
802 |
v^{**} & = & v^{*} - \Delta t g \partial_y \eta^{n+1} \label{eq:vnx-nh}\\ |
v^{**} & = & v^{*} - \Delta t g \partial_y \eta^{n+1} \label{eq:vnx-nh}\\ |
803 |
\partial_{xx} \phi_{nh}^{n+1} + \partial_{yy} \phi_{nh}^{n+1} + |
\partial_{xx} \phi_{nh}^{n+1} + \partial_{yy} \phi_{nh}^{n+1} + |
804 |
\partial_{rr} \phi_{nh}^{n+1} & = & |
\partial_{rr} \phi_{nh}^{n+1} & = & \left( |
805 |
\partial_x u^{**} + \partial_y v^{**} + \partial_r w^{*} \label{eq:phi-nh}\\ |
\partial_x u^{**} + \partial_y v^{**} + \partial_r w^{*} |
806 |
|
\right) / \Delta t \label{eq:phi-nh}\\ |
807 |
u^{n+1} & = & u^{**} - \Delta t \partial_x \phi_{nh}^{n+1} \label{eq:un+1-nh}\\ |
u^{n+1} & = & u^{**} - \Delta t \partial_x \phi_{nh}^{n+1} \label{eq:un+1-nh}\\ |
808 |
v^{n+1} & = & v^{**} - \Delta t \partial_y \phi_{nh}^{n+1} \label{eq:vn+1-nh}\\ |
v^{n+1} & = & v^{**} - \Delta t \partial_y \phi_{nh}^{n+1} \label{eq:vn+1-nh}\\ |
809 |
\partial_r w^{n+1} & = & - \partial_x u^{n+1} - \partial_y v^{n+1} |
\partial_r w^{n+1} & = & - \partial_x u^{n+1} - \partial_y v^{n+1} |
811 |
where the last equation is solved by vertically integrating for |
where the last equation is solved by vertically integrating for |
812 |
$w^{n+1}$. |
$w^{n+1}$. |
813 |
|
|
|
|
|
|
|
|
814 |
\section{Variants on the Free Surface} |
\section{Variants on the Free Surface} |
815 |
\label{sec:free-surface} |
\label{sec:free-surface} |
816 |
|
|
924 |
|
|
925 |
|
|
926 |
|
|
927 |
\subsection{Crank-Nickelson barotropic time stepping} |
\subsection{Crank-Nicolson barotropic time stepping} |
928 |
\label{sec:freesurf-CrankNick} |
\label{sec:freesurf-CrankNick} |
929 |
|
|
930 |
The full implicit time stepping described previously is |
The full implicit time stepping described previously is |
936 |
\\ |
\\ |
937 |
For instance, $\beta=\gamma=1$ is the previous fully implicit scheme; |
For instance, $\beta=\gamma=1$ is the previous fully implicit scheme; |
938 |
$\beta=\gamma=1/2$ is the non damping (energy conserving), unconditionally |
$\beta=\gamma=1/2$ is the non damping (energy conserving), unconditionally |
939 |
stable, Crank-Nickelson scheme; $(\beta,\gamma)=(1,0)$ or $=(0,1)$ |
stable, Crank-Nicolson scheme; $(\beta,\gamma)=(1,0)$ or $=(0,1)$ |
940 |
corresponds to the forward - backward scheme that conserves energy but is |
corresponds to the forward - backward scheme that conserves energy but is |
941 |
only stable for small time steps.\\ |
only stable for small time steps.\\ |
942 |
In the code, $\beta,\gamma$ are defined as parameters, respectively |
In the code, $\beta,\gamma$ are defined as parameters, respectively |
999 |
{\bf useRealFreshWater}{\em=TRUE} in parameter file {\em data}). |
{\bf useRealFreshWater}{\em=TRUE} in parameter file {\em data}). |
1000 |
In order to remain consistent with the tracer equation, specially in |
In order to remain consistent with the tracer equation, specially in |
1001 |
the non-linear free-surface formulation, this term is also |
the non-linear free-surface formulation, this term is also |
1002 |
affected by the Crank-Nickelson time stepping. The RHS reads: |
affected by the Crank-Nicolson time stepping. The RHS reads: |
1003 |
$\epsilon_{fw} ( \gamma (P-E)^{n+1/2} + (1-\gamma) (P-E)^{n-1/2} )$ |
$\epsilon_{fw} ( \gamma (P-E)^{n+1/2} + (1-\gamma) (P-E)^{n-1/2} )$ |
1004 |
%\item The non-hydrostatic part of the code has not yet been |
%\item The non-hydrostatic part of the code has not yet been |
1005 |
%updated, and therefore cannot be used with $(\beta,\gamma) \neq (1,1)$. |
%updated, and therefore cannot be used with $(\beta,\gamma) \neq (1,1)$. |
1006 |
\item The stability criteria with Crank-Nickelson time stepping |
\item The stability criteria with Crank-Nicolson time stepping |
1007 |
for the pure linear gravity wave problem in cartesian coordinates is: |
for the pure linear gravity wave problem in cartesian coordinates is: |
1008 |
\begin{itemize} |
\begin{itemize} |
1009 |
\item $\beta + \gamma < 1$ : unstable |
\item $\beta + \gamma < 1$ : unstable |