\hypertarget{structmom__coriolisadv_1_1coriolisadv__cs}{}\section{mom\+\_\+coriolisadv\+:\+:coriolisadv\+\_\+cs Type Reference}
\label{structmom__coriolisadv_1_1coriolisadv__cs}\index{mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs@{mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs}}


\subsection{Detailed Description}
Control structure for \mbox{\hyperlink{namespacemom__coriolisadv}{mom\+\_\+coriolisadv}}. 

Definition at line 27 of file M\+O\+M\+\_\+\+Coriolis\+Adv.\+F90.



Collaboration diagram for mom\+\_\+coriolisadv\+:\+:coriolisadv\+\_\+cs\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{structmom__coriolisadv_1_1coriolisadv__cs__coll__graph}
\end{center}
\end{figure}
\subsection*{Public variables and constants}
\begin{DoxyCompactItemize}
\item 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_ab5442b708a4ccaa9e16f6d6e1a22b29d}{coriolis\+\_\+scheme}}
\begin{DoxyCompactList}\small\item\em Selects the discretization for the Coriolis terms. Valid values are\+: \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_aa2813804436dec1bb1ad4abd1c7ead70}\label{structmom__coriolisadv_1_1coriolisadv__cs_aa2813804436dec1bb1ad4abd1c7ead70}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_aa2813804436dec1bb1ad4abd1c7ead70}{ke\+\_\+scheme}}
\begin{DoxyCompactList}\small\item\em K\+E\+\_\+\+S\+C\+H\+E\+ME selects the discretization for the kinetic energy. Valid values are\+: K\+E\+\_\+\+A\+R\+A\+K\+A\+WA, K\+E\+\_\+\+S\+I\+M\+P\+L\+E\+\_\+\+G\+U\+D\+O\+N\+OV, K\+E\+\_\+\+G\+U\+D\+O\+N\+OV. \end{DoxyCompactList}\item 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a18c415a5b9da9868b1b2dedb4db01602}{pv\+\_\+adv\+\_\+scheme}}
\begin{DoxyCompactList}\small\item\em P\+V\+\_\+\+A\+D\+V\+\_\+\+S\+C\+H\+E\+ME selects the discretization for PV advection Valid values are\+: \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_aaea938943f3bfeb1780dd0112c71c264}\label{structmom__coriolisadv_1_1coriolisadv__cs_aaea938943f3bfeb1780dd0112c71c264}} 
real \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_aaea938943f3bfeb1780dd0112c71c264}{f\+\_\+eff\+\_\+max\+\_\+blend}}
\begin{DoxyCompactList}\small\item\em The factor by which the maximum effective Coriolis acceleration from any point can be increased when blending different discretizations with the A\+R\+A\+K\+A\+W\+A\+\_\+\+L\+A\+M\+B\+\_\+\+B\+L\+E\+ND Coriolis scheme. This must be greater than 2.\+0, and is 4.\+0 by default. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a1dd9d6ae81cb1646a3799950c647716d}\label{structmom__coriolisadv_1_1coriolisadv__cs_a1dd9d6ae81cb1646a3799950c647716d}} 
real \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a1dd9d6ae81cb1646a3799950c647716d}{wt\+\_\+lin\+\_\+blend}}
\begin{DoxyCompactList}\small\item\em A weighting value beyond which the blending between Sadourny and Arakawa \& Hsu goes linearly to 0. This must be between 1 and 1e-\/15, often 1/8. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a97fbe8d9c874a513d325cf23280c26bf}\label{structmom__coriolisadv_1_1coriolisadv__cs_a97fbe8d9c874a513d325cf23280c26bf}} 
logical \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a97fbe8d9c874a513d325cf23280c26bf}{no\+\_\+slip}}
\begin{DoxyCompactList}\small\item\em If true, no slip boundary conditions are used. Otherwise free slip boundary conditions are assumed. The implementation of the free slip boundary conditions on a C-\/grid is much cleaner than the no slip boundary conditions. The use of free slip b.\+c.\+s is strongly encouraged. The no slip b.\+c.\+s are not implemented with the biharmonic viscosity. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a0d4d8afbe256a451843ed4a35eb74fba}\label{structmom__coriolisadv_1_1coriolisadv__cs_a0d4d8afbe256a451843ed4a35eb74fba}} 
logical \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a0d4d8afbe256a451843ed4a35eb74fba}{bound\+\_\+coriolis}}
\begin{DoxyCompactList}\small\item\em If true, the Coriolis terms at u points are bounded by the four estimates of (f+rv)v from the four neighboring v points, and similarly at v points. This option would have no effect on the S\+A\+D\+O\+U\+R\+N\+Y75\+\_\+\+E\+N\+E\+R\+GY scheme if it were possible to use centered difference thickness fluxes. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a8cddfccd93fc10887a53a30efd03bf53}\label{structmom__coriolisadv_1_1coriolisadv__cs_a8cddfccd93fc10887a53a30efd03bf53}} 
logical \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a8cddfccd93fc10887a53a30efd03bf53}{coriolis\+\_\+en\+\_\+dis}}
\begin{DoxyCompactList}\small\item\em If C\+O\+R\+I\+O\+L\+I\+S\+\_\+\+E\+N\+\_\+\+D\+IS is defined, two estimates of the thickness fluxes are used to estimate the Coriolis term, and the one that dissipates energy relative to the other one is used. This is only available at present if Coriolis scheme is S\+A\+D\+O\+U\+R\+N\+Y75\+\_\+\+E\+N\+E\+R\+GY. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_af418feac525de1df836e2353ec5d1700}\label{structmom__coriolisadv_1_1coriolisadv__cs_af418feac525de1df836e2353ec5d1700}} 
type(time\+\_\+type), pointer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_af418feac525de1df836e2353ec5d1700}{time}}
\begin{DoxyCompactList}\small\item\em A pointer to the ocean model\textquotesingle{}s clock. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_ab417618b2455dbbed18e4fd939b01009}\label{structmom__coriolisadv_1_1coriolisadv__cs_ab417618b2455dbbed18e4fd939b01009}} 
type(diag\+\_\+ctrl), pointer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_ab417618b2455dbbed18e4fd939b01009}{diag}}
\begin{DoxyCompactList}\small\item\em A structure that is used to regulate the timing of diagnostic output. \end{DoxyCompactList}\end{DoxyCompactItemize}
\textbf{ }\par
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_af5d8520e218dcc2932b9b20f8e22112a}\label{structmom__coriolisadv_1_1coriolisadv__cs_af5d8520e218dcc2932b9b20f8e22112a}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_af5d8520e218dcc2932b9b20f8e22112a}{id\+\_\+rv}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a143f752bc93f33338a75ff278c0adc4e}\label{structmom__coriolisadv_1_1coriolisadv__cs_a143f752bc93f33338a75ff278c0adc4e}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a143f752bc93f33338a75ff278c0adc4e}{id\+\_\+pv}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a72911b3e980a010d0cbd0d9e0c31bb42}\label{structmom__coriolisadv_1_1coriolisadv__cs_a72911b3e980a010d0cbd0d9e0c31bb42}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a72911b3e980a010d0cbd0d9e0c31bb42}{id\+\_\+gkeu}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a72e6b779340111345c91c5cc773f31b8}\label{structmom__coriolisadv_1_1coriolisadv__cs_a72e6b779340111345c91c5cc773f31b8}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a72e6b779340111345c91c5cc773f31b8}{id\+\_\+gkev}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_ab46b78cb85552e4ca9b096aca3ce9fd1}\label{structmom__coriolisadv_1_1coriolisadv__cs_ab46b78cb85552e4ca9b096aca3ce9fd1}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_ab46b78cb85552e4ca9b096aca3ce9fd1}{id\+\_\+rvxu}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a79ddbed064e4e3620f39c983631601b4}\label{structmom__coriolisadv_1_1coriolisadv__cs_a79ddbed064e4e3620f39c983631601b4}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a79ddbed064e4e3620f39c983631601b4}{id\+\_\+rvxv}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a93d48078934f6dfc363f19ff0f4501bd}\label{structmom__coriolisadv_1_1coriolisadv__cs_a93d48078934f6dfc363f19ff0f4501bd}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a93d48078934f6dfc363f19ff0f4501bd}{id\+\_\+hf\+\_\+gkeu\+\_\+2d}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a98a342bd5399822692a74cb51a7f452f}\label{structmom__coriolisadv_1_1coriolisadv__cs_a98a342bd5399822692a74cb51a7f452f}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a98a342bd5399822692a74cb51a7f452f}{id\+\_\+hf\+\_\+gkev\+\_\+2d}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_abd557dd82ca366bd53e9d70ee6fb3e1c}\label{structmom__coriolisadv_1_1coriolisadv__cs_abd557dd82ca366bd53e9d70ee6fb3e1c}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_abd557dd82ca366bd53e9d70ee6fb3e1c}{id\+\_\+hf\+\_\+rvxu\+\_\+2d}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a0edbd98fb724b7f84b8bebded05557b8}\label{structmom__coriolisadv_1_1coriolisadv__cs_a0edbd98fb724b7f84b8bebded05557b8}} 
integer \mbox{\hyperlink{structmom__coriolisadv_1_1coriolisadv__cs_a0edbd98fb724b7f84b8bebded05557b8}{id\+\_\+hf\+\_\+rvxv\+\_\+2d}} = -\/1
\begin{DoxyCompactList}\small\item\em Diagnostic I\+Ds. \end{DoxyCompactList}\end{DoxyCompactItemize}



\subsection{Detailed Description}
Control structure for \mbox{\hyperlink{namespacemom__coriolisadv}{mom\+\_\+coriolisadv}}. 

Definition at line 27 of file M\+O\+M\+\_\+\+Coriolis\+Adv.\+F90.



\subsection{Variables and constants}
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_ab5442b708a4ccaa9e16f6d6e1a22b29d}\label{structmom__coriolisadv_1_1coriolisadv__cs_ab5442b708a4ccaa9e16f6d6e1a22b29d}} 
\index{mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs@{mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs}!coriolis\+\_\+scheme@{coriolis\+\_\+scheme}}
\index{coriolis\+\_\+scheme@{coriolis\+\_\+scheme}!mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs@{mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs}}
\subsubsection{\texorpdfstring{coriolis\+\_\+scheme}{coriolis\_scheme}}
{\footnotesize\ttfamily integer mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs\+::coriolis\+\_\+scheme}



Selects the discretization for the Coriolis terms. Valid values are\+: 


\begin{DoxyItemize}
\item S\+A\+D\+O\+U\+R\+N\+Y75\+\_\+\+E\+N\+E\+R\+GY -\/ Sadourny, 1975
\item A\+R\+A\+K\+A\+W\+A\+\_\+\+H\+S\+U90 -\/ Arakawa \& Hsu, 1990, Energy \& non-\/div. Enstrophy
\item R\+O\+B\+U\+S\+T\+\_\+\+E\+N\+S\+T\+RO -\/ Pseudo-\/enstrophy scheme
\item S\+A\+D\+O\+U\+R\+N\+Y75\+\_\+\+E\+N\+S\+T\+RO -\/ Sadourny, J\+AS 1975, Enstrophy
\item A\+R\+A\+K\+A\+W\+A\+\_\+\+L\+A\+M\+B81 -\/ Arakawa \& Lamb, M\+WR 1981, Energy \& Enstrophy
\item A\+R\+A\+K\+A\+W\+A\+\_\+\+L\+A\+M\+B\+\_\+\+B\+L\+E\+ND -\/ A blend of Arakawa \& Lamb with Arakawa \& Hsu and Sadourny energy. The default, S\+A\+D\+O\+U\+R\+N\+Y75\+\_\+\+E\+N\+E\+R\+GY, is the safest choice then the deformation radius is poorly resolved. 
\end{DoxyItemize}

Definition at line 28 of file M\+O\+M\+\_\+\+Coriolis\+Adv.\+F90.


\begin{DoxyCode}
28   \textcolor{keywordtype}{integer} :: Coriolis\_Scheme\textcolor{comment}{ !< Selects the discretization for the Coriolis terms.}
\end{DoxyCode}
\mbox{\Hypertarget{structmom__coriolisadv_1_1coriolisadv__cs_a18c415a5b9da9868b1b2dedb4db01602}\label{structmom__coriolisadv_1_1coriolisadv__cs_a18c415a5b9da9868b1b2dedb4db01602}} 
\index{mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs@{mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs}!pv\+\_\+adv\+\_\+scheme@{pv\+\_\+adv\+\_\+scheme}}
\index{pv\+\_\+adv\+\_\+scheme@{pv\+\_\+adv\+\_\+scheme}!mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs@{mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs}}
\subsubsection{\texorpdfstring{pv\+\_\+adv\+\_\+scheme}{pv\_adv\_scheme}}
{\footnotesize\ttfamily integer mom\+\_\+coriolisadv\+::coriolisadv\+\_\+cs\+::pv\+\_\+adv\+\_\+scheme}



P\+V\+\_\+\+A\+D\+V\+\_\+\+S\+C\+H\+E\+ME selects the discretization for PV advection Valid values are\+: 


\begin{DoxyItemize}
\item P\+V\+\_\+\+A\+D\+V\+\_\+\+C\+E\+N\+T\+E\+R\+ED -\/ centered (aka Sadourny, 75)
\item P\+V\+\_\+\+A\+D\+V\+\_\+\+U\+P\+W\+I\+N\+D1 -\/ upwind, first order 
\end{DoxyItemize}

Definition at line 41 of file M\+O\+M\+\_\+\+Coriolis\+Adv.\+F90.


\begin{DoxyCode}
41   \textcolor{keywordtype}{integer} :: PV\_Adv\_Scheme\textcolor{comment}{   !< PV\_ADV\_SCHEME selects the discretization for PV advection}
\end{DoxyCode}


The documentation for this type was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
/home/cermak/src/\+M\+O\+M6.\+devrob/src/core/M\+O\+M\+\_\+\+Coriolis\+Adv.\+F90\end{DoxyCompactItemize}
