\hypertarget{structmom__oda__driver__mod_1_1oda__cs}{}\section{mom\+\_\+oda\+\_\+driver\+\_\+mod\+::oda\+\_\+cs Type Reference}
\label{structmom__oda__driver__mod_1_1oda__cs}\index{mom\_oda\_driver\_mod::oda\_cs@{mom\_oda\_driver\_mod::oda\_cs}}


\subsection{Detailed Description}
Control structure that contains a transpose of the ocean state across ensemble members. 

Definition at line 61 of file M\+O\+M\+\_\+oda\+\_\+driver.\+F90.



Collaboration diagram for mom\+\_\+oda\+\_\+driver\+\_\+mod\+::oda\+\_\+cs\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{structmom__oda__driver__mod_1_1oda__cs__coll__graph}
\end{center}
\end{figure}
\subsection*{Public variables and constants}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a7c237ae97447453fbd93e7daa25b8818}\label{structmom__oda__driver__mod_1_1oda__cs_a7c237ae97447453fbd93e7daa25b8818}} 
type(\mbox{\hyperlink{structocean__da__types__mod_1_1ocean__control__struct}{ocean\+\_\+control\+\_\+struct}}), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a7c237ae97447453fbd93e7daa25b8818}{ocean\+\_\+prior}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em ensemble ocean prior states in DA space \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a182799e5a2d2ce6871367a2e86dcc8cf}\label{structmom__oda__driver__mod_1_1oda__cs_a182799e5a2d2ce6871367a2e86dcc8cf}} 
type(\mbox{\hyperlink{structocean__da__types__mod_1_1ocean__control__struct}{ocean\+\_\+control\+\_\+struct}}), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a182799e5a2d2ce6871367a2e86dcc8cf}{ocean\+\_\+posterior}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em ensemble ocean posterior states or increments to prior in DA space \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a31e5b7a3e732c316eb331c1b24b1b04a}\label{structmom__oda__driver__mod_1_1oda__cs_a31e5b7a3e732c316eb331c1b24b1b04a}} 
integer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a31e5b7a3e732c316eb331c1b24b1b04a}{nk}}
\begin{DoxyCompactList}\small\item\em number of vertical layers used for DA \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_aff92b8fc149a94985a2cce2835bf8625}\label{structmom__oda__driver__mod_1_1oda__cs_aff92b8fc149a94985a2cce2835bf8625}} 
type(ocean\+\_\+grid\+\_\+type), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_aff92b8fc149a94985a2cce2835bf8625}{grid}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em M\+O\+M6 grid type and decomposition for the DA. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_abb3949ed7a44acaaec501e9d96db2954}\label{structmom__oda__driver__mod_1_1oda__cs_abb3949ed7a44acaaec501e9d96db2954}} 
type(\mbox{\hyperlink{structmom__oda__driver__mod_1_1ptr__mpp__domain}{ptr\+\_\+mpp\+\_\+domain}}), dimension(\+:), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_abb3949ed7a44acaaec501e9d96db2954}{domains}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em Pointer to mpp\+\_\+domain objects for ensemble members. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_ab552443eada73d7556bf2b615700bb94}\label{structmom__oda__driver__mod_1_1oda__cs_ab552443eada73d7556bf2b615700bb94}} 
type(verticalgrid\+\_\+type), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_ab552443eada73d7556bf2b615700bb94}{gv}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em vertical grid for DA \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a9308ffdbd3d9225927a0f23edfd1d638}\label{structmom__oda__driver__mod_1_1oda__cs_a9308ffdbd3d9225927a0f23edfd1d638}} 
type(unit\+\_\+scale\+\_\+type), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a9308ffdbd3d9225927a0f23edfd1d638}{us}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em structure containing various unit conversion factors for DA \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_ae5ed9b357f3e8c5154bffb8e7846b320}\label{structmom__oda__driver__mod_1_1oda__cs_ae5ed9b357f3e8c5154bffb8e7846b320}} 
type(domain2d), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_ae5ed9b357f3e8c5154bffb8e7846b320}{mpp\+\_\+domain}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em Pointer to a mpp domain object for DA. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a0662f0817969be3cf8fc505d7b7df2ce}\label{structmom__oda__driver__mod_1_1oda__cs_a0662f0817969be3cf8fc505d7b7df2ce}} 
type(\mbox{\hyperlink{structocean__da__types__mod_1_1grid__type}{grid\+\_\+type}}), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a0662f0817969be3cf8fc505d7b7df2ce}{oda\+\_\+grid}}
\begin{DoxyCompactList}\small\item\em local tracer grid \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a254d951311247e0167bead73268f30a7}\label{structmom__oda__driver__mod_1_1oda__cs_a254d951311247e0167bead73268f30a7}} 
real, dimension(\+:,\+:,\+:), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a254d951311247e0167bead73268f30a7}{h}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em layer thicknesses \mbox{[}H $\sim$$>$ m or kg m-\/2\mbox{]} for DA \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a1b3ec2d911f92c4274e732b88926a05a}\label{structmom__oda__driver__mod_1_1oda__cs_a1b3ec2d911f92c4274e732b88926a05a}} 
type(thermo\+\_\+var\+\_\+ptrs), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a1b3ec2d911f92c4274e732b88926a05a}{tv}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em pointer to thermodynamic variables \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a964972b15d0f77925e59820962b0e2d3}\label{structmom__oda__driver__mod_1_1oda__cs_a964972b15d0f77925e59820962b0e2d3}} 
integer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a964972b15d0f77925e59820962b0e2d3}{ni}}
\begin{DoxyCompactList}\small\item\em global i-\/direction grid size \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_ac66b060de9f7b3a7bb2afff352e19a34}\label{structmom__oda__driver__mod_1_1oda__cs_ac66b060de9f7b3a7bb2afff352e19a34}} 
integer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_ac66b060de9f7b3a7bb2afff352e19a34}{nj}}
\begin{DoxyCompactList}\small\item\em global j-\/direction grid size \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_adaac1168c41027a3df141d21a0cbe1f4}\label{structmom__oda__driver__mod_1_1oda__cs_adaac1168c41027a3df141d21a0cbe1f4}} 
logical \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_adaac1168c41027a3df141d21a0cbe1f4}{reentrant\+\_\+x}}
\begin{DoxyCompactList}\small\item\em grid is reentrant in the x direction \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a6ea288d04ea10603e55963c33aaba1af}\label{structmom__oda__driver__mod_1_1oda__cs_a6ea288d04ea10603e55963c33aaba1af}} 
logical \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a6ea288d04ea10603e55963c33aaba1af}{reentrant\+\_\+y}}
\begin{DoxyCompactList}\small\item\em grid is reentrant in the y direction \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_ad6bd9c0270126193aa589b5140e24d21}\label{structmom__oda__driver__mod_1_1oda__cs_ad6bd9c0270126193aa589b5140e24d21}} 
logical \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_ad6bd9c0270126193aa589b5140e24d21}{tripolar\+\_\+n}}
\begin{DoxyCompactList}\small\item\em grid is folded at its north edge \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_afb21cb4c8e8c1285e5c57bc2bd5f6d15}\label{structmom__oda__driver__mod_1_1oda__cs_afb21cb4c8e8c1285e5c57bc2bd5f6d15}} 
logical \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_afb21cb4c8e8c1285e5c57bc2bd5f6d15}{symmetric}}
\begin{DoxyCompactList}\small\item\em Values at C-\/grid locations are symmetric. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_abb35cffcf10c8ec042cb595e7aadbc09}\label{structmom__oda__driver__mod_1_1oda__cs_abb35cffcf10c8ec042cb595e7aadbc09}} 
integer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_abb35cffcf10c8ec042cb595e7aadbc09}{assim\+\_\+method}}
\begin{DoxyCompactList}\small\item\em Method\+: N\+O\+\_\+\+A\+S\+S\+IM,E\+A\+K\+F\+\_\+\+A\+S\+S\+IM or O\+I\+\_\+\+A\+S\+S\+IM. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a2120192318eb8ecb6e0c4cf02cce9d0a}\label{structmom__oda__driver__mod_1_1oda__cs_a2120192318eb8ecb6e0c4cf02cce9d0a}} 
integer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a2120192318eb8ecb6e0c4cf02cce9d0a}{ensemble\+\_\+size}}
\begin{DoxyCompactList}\small\item\em Size of the ensemble. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a6fed65fb8f2afb108dd44ce8c191e505}\label{structmom__oda__driver__mod_1_1oda__cs_a6fed65fb8f2afb108dd44ce8c191e505}} 
integer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a6fed65fb8f2afb108dd44ce8c191e505}{ensemble\+\_\+id}} = 0
\begin{DoxyCompactList}\small\item\em id of the current ensemble member \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_aa145a83faa3cb3fa43cacd36c0eb284c}\label{structmom__oda__driver__mod_1_1oda__cs_aa145a83faa3cb3fa43cacd36c0eb284c}} 
integer, dimension(\+:,\+:), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_aa145a83faa3cb3fa43cacd36c0eb284c}{ensemble\+\_\+pelist}}
\begin{DoxyCompactList}\small\item\em PE list for ensemble members. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a725deedf3cb9104b91fa8cf27bc242b8}\label{structmom__oda__driver__mod_1_1oda__cs_a725deedf3cb9104b91fa8cf27bc242b8}} 
integer, dimension(\+:), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a725deedf3cb9104b91fa8cf27bc242b8}{filter\+\_\+pelist}}
\begin{DoxyCompactList}\small\item\em PE list for ensemble members. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a018ef3b03736941c454acc3c91d300af}\label{structmom__oda__driver__mod_1_1oda__cs_a018ef3b03736941c454acc3c91d300af}} 
integer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a018ef3b03736941c454acc3c91d300af}{assim\+\_\+frequency}}
\begin{DoxyCompactList}\small\item\em analysis interval in hours \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_add382e139e88f0b8ca5fce89922f6792}\label{structmom__oda__driver__mod_1_1oda__cs_add382e139e88f0b8ca5fce89922f6792}} 
type(\mbox{\hyperlink{structocean__da__types__mod_1_1ocean__profile__type}{ocean\+\_\+profile\+\_\+type}}), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_add382e139e88f0b8ca5fce89922f6792}{profiles}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em pointer to linked list of all available profiles \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a25f5fe157dcc4d4235d0f25de96ce079}\label{structmom__oda__driver__mod_1_1oda__cs_a25f5fe157dcc4d4235d0f25de96ce079}} 
type(\mbox{\hyperlink{structocean__da__types__mod_1_1ocean__profile__type}{ocean\+\_\+profile\+\_\+type}}), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a25f5fe157dcc4d4235d0f25de96ce079}{cprofiles}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em pointer to linked list of current profiles \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_ae4c0e670dd48d581bcef7976e244af10}\label{structmom__oda__driver__mod_1_1oda__cs_ae4c0e670dd48d581bcef7976e244af10}} 
type(\mbox{\hyperlink{structkdtree_1_1kd__root}{kd\+\_\+root}}), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_ae4c0e670dd48d581bcef7976e244af10}{kdroot}} =$>$ N\+U\+LL()
\begin{DoxyCompactList}\small\item\em A structure for storing nearest neighbors. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a3f6da0fa1c81992b6f1b207598475e0a}\label{structmom__oda__driver__mod_1_1oda__cs_a3f6da0fa1c81992b6f1b207598475e0a}} 
type(ale\+\_\+cs), pointer \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a3f6da0fa1c81992b6f1b207598475e0a}{ale\+\_\+cs}} =$>$N\+U\+LL()
\begin{DoxyCompactList}\small\item\em A\+LE control structure for DA. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a5ce34b7ad1b651de0f6f3663f4ee2256}\label{structmom__oda__driver__mod_1_1oda__cs_a5ce34b7ad1b651de0f6f3663f4ee2256}} 
logical \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a5ce34b7ad1b651de0f6f3663f4ee2256}{use\+\_\+ale\+\_\+algorithm}}
\begin{DoxyCompactList}\small\item\em true is using A\+LE remapping \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a27b0ab1e4e720f7b80f9a7399eed3043}\label{structmom__oda__driver__mod_1_1oda__cs_a27b0ab1e4e720f7b80f9a7399eed3043}} 
type(regridding\+\_\+cs) \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a27b0ab1e4e720f7b80f9a7399eed3043}{regridcs}}
\begin{DoxyCompactList}\small\item\em A\+LE control structure for regridding. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a04d9fe96b412b58fbca7bd3555181707}\label{structmom__oda__driver__mod_1_1oda__cs_a04d9fe96b412b58fbca7bd3555181707}} 
type(remapping\+\_\+cs) \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a04d9fe96b412b58fbca7bd3555181707}{remapcs}}
\begin{DoxyCompactList}\small\item\em A\+LE control structure for remapping. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_a5c6026eff1d58f6c9e6cd75273af241e}\label{structmom__oda__driver__mod_1_1oda__cs_a5c6026eff1d58f6c9e6cd75273af241e}} 
type(time\+\_\+type) \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_a5c6026eff1d58f6c9e6cd75273af241e}{time}}
\begin{DoxyCompactList}\small\item\em Current Analysis time. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{structmom__oda__driver__mod_1_1oda__cs_afa94abe8c9bdc611cb51f16d78b15823}\label{structmom__oda__driver__mod_1_1oda__cs_afa94abe8c9bdc611cb51f16d78b15823}} 
type(diag\+\_\+ctrl) \mbox{\hyperlink{structmom__oda__driver__mod_1_1oda__cs_afa94abe8c9bdc611cb51f16d78b15823}{diag\+\_\+cs}}
\begin{DoxyCompactList}\small\item\em Diagnostics control structure. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Control structure that contains a transpose of the ocean state across ensemble members. 

Definition at line 61 of file M\+O\+M\+\_\+oda\+\_\+driver.\+F90.



The documentation for this type was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
/home/cermak/src/\+M\+O\+M6.\+devrob/src/ocean\+\_\+data\+\_\+assim/M\+O\+M\+\_\+oda\+\_\+driver.\+F90\end{DoxyCompactItemize}
