\hypertarget{namespacemod__oasis__coupler}{}\section{mod\+\_\+oasis\+\_\+coupler Module Reference}
\label{namespacemod__oasis__coupler}\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}


Initialize the O\+A\+S\+IS coupler infrastructure.  


\subsection*{Data Types}
\begin{DoxyCompactItemize}
\item 
type \hyperlink{structmod__oasis__coupler_1_1prism__coupler__type}{prism\+\_\+coupler\+\_\+type}
\begin{DoxyCompactList}\small\item\em Coupler data for managing all aspects of coupling in O\+A\+S\+IS. \end{DoxyCompactList}\item 
type \hyperlink{structmod__oasis__coupler_1_1prism__router__type}{prism\+\_\+router\+\_\+type}
\begin{DoxyCompactList}\small\item\em Router information for rearranging data on tasks. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \hyperlink{namespacemod__oasis__coupler_ab48c4d4ee118f948ccc286eec5b509ec}{oasis\+\_\+coupler\+\_\+setup} ()
\begin{DoxyCompactList}\small\item\em Main routine to setup couplers. \end{DoxyCompactList}\item 
subroutine \hyperlink{namespacemod__oasis__coupler_a5cb96db0ae7b837db934689a49df3da6}{oasis\+\_\+coupler\+\_\+print} (cplid, pcprint)
\begin{DoxyCompactList}\small\item\em Print routine for oasis\+\_\+couplers. \end{DoxyCompactList}\item 
subroutine, public \hyperlink{namespacemod__oasis__coupler_a65adf0558cfd9a9d316bd22ad1f9dc23}{oasis\+\_\+coupler\+\_\+bldvarname} (varid, varnum, vname)
\begin{DoxyCompactList}\small\item\em Build a consistent variable name based on bundles. \end{DoxyCompactList}\item 
subroutine, public \hyperlink{namespacemod__oasis__coupler_ad8c9a74a349ea4420ac38e2da2dc3cd2}{oasis\+\_\+coupler\+\_\+unbldvarname} (varid, vname, varnum)
\begin{DoxyCompactList}\small\item\em Deconstruct the varname based on oasis\+\_\+coupler\+\_\+bldvarname. \end{DoxyCompactList}\item 
subroutine \hyperlink{namespacemod__oasis__coupler_a773e323d2275aff227e05e98ce97def1}{cplfind} (num, fldlist, fld, ifind, nfind)
\begin{DoxyCompactList}\small\item\em Search a character field list for a matching values. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
integer(kind=ip\+\_\+i4\+\_\+p), parameter, public \hyperlink{namespacemod__oasis__coupler_a6f166f099a134dffba97a168d28a3c01}{prism\+\_\+coupler\+\_\+avsmax} =5
\begin{DoxyCompactList}\small\item\em maximum number of higher order terms in mapping \end{DoxyCompactList}\item 
integer(kind=ip\+\_\+i4\+\_\+p) \hyperlink{namespacemod__oasis__coupler_a6d46883e9df70ab9cdafaf607afacacb}{prism\+\_\+mrouter}
\begin{DoxyCompactList}\small\item\em max routers \end{DoxyCompactList}\item 
integer(kind=ip\+\_\+i4\+\_\+p) \hyperlink{namespacemod__oasis__coupler_a2ebdb255598e1b004de2533f16b06e04}{prism\+\_\+nrouter} = 0
\begin{DoxyCompactList}\small\item\em router counter \end{DoxyCompactList}\item 
type(\hyperlink{structmod__oasis__coupler_1_1prism__router__type}{prism\+\_\+router\+\_\+type}), dimension(\+:), pointer, public \hyperlink{namespacemod__oasis__coupler_a33dbf692ad73f83f73fe083e252badd8}{prism\+\_\+router}
\begin{DoxyCompactList}\small\item\em prism\+\_\+router array \end{DoxyCompactList}\item 
integer(kind=ip\+\_\+i4\+\_\+p), public \hyperlink{namespacemod__oasis__coupler_aaa019c39b0f657e7c37820697ecf354a}{prism\+\_\+mcoupler}
\begin{DoxyCompactList}\small\item\em max couplers \end{DoxyCompactList}\item 
type(\hyperlink{structmod__oasis__coupler_1_1prism__coupler__type}{prism\+\_\+coupler\+\_\+type}), dimension(\+:), pointer, public \hyperlink{namespacemod__oasis__coupler_ae59d8823993d9ca8610efd9770393271}{prism\+\_\+coupler\+\_\+put}
\begin{DoxyCompactList}\small\item\em prism\+\_\+coupler put array \end{DoxyCompactList}\item 
type(\hyperlink{structmod__oasis__coupler_1_1prism__coupler__type}{prism\+\_\+coupler\+\_\+type}), dimension(\+:), pointer, public \hyperlink{namespacemod__oasis__coupler_a96df3ef2ec1b53597bb9beca43fe8349}{prism\+\_\+coupler\+\_\+get}
\begin{DoxyCompactList}\small\item\em prism\+\_\+coupler get array \end{DoxyCompactList}\item 
integer(kind=ip\+\_\+i4\+\_\+p), public \hyperlink{namespacemod__oasis__coupler_a0cb9b8a96c10385d38fa244d920c7eaf}{lastseq}
\begin{DoxyCompactList}\small\item\em last coupler sequence \end{DoxyCompactList}\item 
integer(kind=ip\+\_\+i4\+\_\+p), public \hyperlink{namespacemod__oasis__coupler_a47f4727f94719892d837f6a1545d3d08}{lastseqtime}
\begin{DoxyCompactList}\small\item\em last coupler sequence time \end{DoxyCompactList}\item 
logical, public \hyperlink{namespacemod__oasis__coupler_ab494fbbb8065f3a006892828f288e44a}{allow\+\_\+no\+\_\+restart}
\begin{DoxyCompactList}\small\item\em flag to allow no restart files at startup \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Initialize the O\+A\+S\+IS coupler infrastructure. 

\subsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{namespacemod__oasis__coupler_a773e323d2275aff227e05e98ce97def1}\label{namespacemod__oasis__coupler_a773e323d2275aff227e05e98ce97def1}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!cplfind@{cplfind}}
\index{cplfind@{cplfind}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{cplfind()}{cplfind()}}
{\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+coupler\+::cplfind (\begin{DoxyParamCaption}\item[{integer(in), intent(in)}]{num,  }\item[{character(len=cl), dimension(\+:), intent(in)}]{fldlist,  }\item[{character(len=cl), intent(in)}]{fld,  }\item[{integer(in), intent(out)}]{ifind,  }\item[{integer(in), intent(out)}]{nfind }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Search a character field list for a matching values. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em num} & size of array\\
\hline
\mbox{\tt in}  & {\em fldlist} & sorted field list\\
\hline
\mbox{\tt in}  & {\em fld} & field to search for\\
\hline
\mbox{\tt out}  & {\em ifind} & first match index\\
\hline
\mbox{\tt out}  & {\em nfind} & number that match \\
\hline
\end{DoxyParams}


Definition at line 2106 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a65adf0558cfd9a9d316bd22ad1f9dc23}\label{namespacemod__oasis__coupler_a65adf0558cfd9a9d316bd22ad1f9dc23}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!oasis\+\_\+coupler\+\_\+bldvarname@{oasis\+\_\+coupler\+\_\+bldvarname}}
\index{oasis\+\_\+coupler\+\_\+bldvarname@{oasis\+\_\+coupler\+\_\+bldvarname}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{oasis\+\_\+coupler\+\_\+bldvarname()}{oasis\_coupler\_bldvarname()}}
{\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+coupler\+::oasis\+\_\+coupler\+\_\+bldvarname (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{varid,  }\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{varnum,  }\item[{character(len=$\ast$), intent(out)}]{vname }\end{DoxyParamCaption})}



Build a consistent variable name based on bundles. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em varid} & variable id\\
\hline
\mbox{\tt in}  & {\em varnum} & variable bundle level number\\
\hline
\mbox{\tt out}  & {\em vname} & variable name \\
\hline
\end{DoxyParams}


Definition at line 2012 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a5cb96db0ae7b837db934689a49df3da6}\label{namespacemod__oasis__coupler_a5cb96db0ae7b837db934689a49df3da6}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!oasis\+\_\+coupler\+\_\+print@{oasis\+\_\+coupler\+\_\+print}}
\index{oasis\+\_\+coupler\+\_\+print@{oasis\+\_\+coupler\+\_\+print}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{oasis\+\_\+coupler\+\_\+print()}{oasis\_coupler\_print()}}
{\footnotesize\ttfamily subroutine mod\+\_\+oasis\+\_\+coupler\+::oasis\+\_\+coupler\+\_\+print (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{cplid,  }\item[{type(\hyperlink{structmod__oasis__coupler_1_1prism__coupler__type}{prism\+\_\+coupler\+\_\+type}), intent(in)}]{pcprint }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Print routine for oasis\+\_\+couplers. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em cplid} & coupler id\\
\hline
\mbox{\tt in}  & {\em pcprint} & specific prism\+\_\+coupler \\
\hline
\end{DoxyParams}


Definition at line 1904 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_ab48c4d4ee118f948ccc286eec5b509ec}\label{namespacemod__oasis__coupler_ab48c4d4ee118f948ccc286eec5b509ec}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!oasis\+\_\+coupler\+\_\+setup@{oasis\+\_\+coupler\+\_\+setup}}
\index{oasis\+\_\+coupler\+\_\+setup@{oasis\+\_\+coupler\+\_\+setup}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{oasis\+\_\+coupler\+\_\+setup()}{oasis\_coupler\_setup()}}
{\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+coupler\+::oasis\+\_\+coupler\+\_\+setup (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Main routine to setup couplers. 

This routine initializes all the coupler data based on the namcouple inputs and the calls into the O\+A\+S\+IS initialization interfaces from models. It reconciles everything. This is called from oasis\+\_\+enddef. 
\begin{DoxyItemize}
\item Allocate and zero prism\+\_\+router, prism\+\_\+mapper, prism\+\_\+coupler based on nnamcpl
\item Generate model variable lists across all models based on def\+\_\+var calls. These will be reconciled with the namcouple input. These are sorted to improve search performance later.
\item Setup couplers based on namcouple and model variable info.
\item Preprocess namcouple strings and sort for faster searches
\item Loop over all my model variables
\begin{DoxyItemize}
\item Get parition and field information
\item Check if variable is In or Out and then find namcouple matches
\item Loop over the namcouple matches
\begin{DoxyItemize}
\item Migrate namcouple info into part
\item Make sure it\textquotesingle{}s either an In or Out, sanity check
\item Determine matching field name from namcouple
\item Search for list of models with other variable
\item Loop over those other matching variable names
\begin{DoxyItemize}
\item Check that one side is In and other side is Out for communication
\item Check if input or output, field name should match on both sides.
\item Check that the bundle size matches in both models for bundled fields
\item Generate field list, multiple field support
\item Add this coupler to list of prism\+\_\+var couplers
\item Copy namcouple settings into this coupler or check that coupler is consistent with prior setting
\item Set prism\+\_\+coupler input and output flags
\item Setup prism\+\_\+coupler router
\item Setup prism\+\_\+coupler mapper
\item Try to reuse mapper already defined, must match mapping file and partition
\item Or get ready to initialize a new mapper
\end{DoxyItemize}
\end{DoxyItemize}
\end{DoxyItemize}
\item Rebuild the fields list based on field bundles as needed
\item Initialize coupling infrastructure based on initial coupler setup above
\item Loop over all couplers
\begin{DoxyItemize}
\item Initialize avect1 which stores the get/put data
\item Compute nflds for this coupling and initialize avcnt and status
\item Initialize the mapper data
\item Read mapper mask and area if not already done
\item Initialize avect1m, the data in avect1 mapped to another grid
\item Initialize router based on rpart\+ID
\end{DoxyItemize}
\item Diagnostics for all couplers 
\end{DoxyItemize}

Definition at line 121 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_ad8c9a74a349ea4420ac38e2da2dc3cd2}\label{namespacemod__oasis__coupler_ad8c9a74a349ea4420ac38e2da2dc3cd2}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!oasis\+\_\+coupler\+\_\+unbldvarname@{oasis\+\_\+coupler\+\_\+unbldvarname}}
\index{oasis\+\_\+coupler\+\_\+unbldvarname@{oasis\+\_\+coupler\+\_\+unbldvarname}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{oasis\+\_\+coupler\+\_\+unbldvarname()}{oasis\_coupler\_unbldvarname()}}
{\footnotesize\ttfamily subroutine, public mod\+\_\+oasis\+\_\+coupler\+::oasis\+\_\+coupler\+\_\+unbldvarname (\begin{DoxyParamCaption}\item[{integer(ip\+\_\+i4\+\_\+p), intent(in)}]{varid,  }\item[{character(len=$\ast$), intent(in)}]{vname,  }\item[{integer(ip\+\_\+i4\+\_\+p), intent(out)}]{varnum }\end{DoxyParamCaption})}



Deconstruct the varname based on oasis\+\_\+coupler\+\_\+bldvarname. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em varid} & variable id\\
\hline
\mbox{\tt in}  & {\em vname} & variable name\\
\hline
\mbox{\tt out}  & {\em varnum} & variable bundle level number \\
\hline
\end{DoxyParams}


Definition at line 2055 of file mod\+\_\+oasis\+\_\+coupler.\+F90.



\subsection{Variable Documentation}
\mbox{\Hypertarget{namespacemod__oasis__coupler_ab494fbbb8065f3a006892828f288e44a}\label{namespacemod__oasis__coupler_ab494fbbb8065f3a006892828f288e44a}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!allow\+\_\+no\+\_\+restart@{allow\+\_\+no\+\_\+restart}}
\index{allow\+\_\+no\+\_\+restart@{allow\+\_\+no\+\_\+restart}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{allow\+\_\+no\+\_\+restart}{allow\_no\_restart}}
{\footnotesize\ttfamily logical, public mod\+\_\+oasis\+\_\+coupler\+::allow\+\_\+no\+\_\+restart}



flag to allow no restart files at startup 



Definition at line 106 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a0cb9b8a96c10385d38fa244d920c7eaf}\label{namespacemod__oasis__coupler_a0cb9b8a96c10385d38fa244d920c7eaf}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!lastseq@{lastseq}}
\index{lastseq@{lastseq}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{lastseq}{lastseq}}
{\footnotesize\ttfamily integer(kind=ip\+\_\+i4\+\_\+p), public mod\+\_\+oasis\+\_\+coupler\+::lastseq}



last coupler sequence 



Definition at line 104 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a47f4727f94719892d837f6a1545d3d08}\label{namespacemod__oasis__coupler_a47f4727f94719892d837f6a1545d3d08}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!lastseqtime@{lastseqtime}}
\index{lastseqtime@{lastseqtime}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{lastseqtime}{lastseqtime}}
{\footnotesize\ttfamily integer(kind=ip\+\_\+i4\+\_\+p), public mod\+\_\+oasis\+\_\+coupler\+::lastseqtime}



last coupler sequence time 



Definition at line 105 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a6f166f099a134dffba97a168d28a3c01}\label{namespacemod__oasis__coupler_a6f166f099a134dffba97a168d28a3c01}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!prism\+\_\+coupler\+\_\+avsmax@{prism\+\_\+coupler\+\_\+avsmax}}
\index{prism\+\_\+coupler\+\_\+avsmax@{prism\+\_\+coupler\+\_\+avsmax}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{prism\+\_\+coupler\+\_\+avsmax}{prism\_coupler\_avsmax}}
{\footnotesize\ttfamily integer(kind=ip\+\_\+i4\+\_\+p), parameter, public mod\+\_\+oasis\+\_\+coupler\+::prism\+\_\+coupler\+\_\+avsmax =5}



maximum number of higher order terms in mapping 



Definition at line 44 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a96df3ef2ec1b53597bb9beca43fe8349}\label{namespacemod__oasis__coupler_a96df3ef2ec1b53597bb9beca43fe8349}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!prism\+\_\+coupler\+\_\+get@{prism\+\_\+coupler\+\_\+get}}
\index{prism\+\_\+coupler\+\_\+get@{prism\+\_\+coupler\+\_\+get}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{prism\+\_\+coupler\+\_\+get}{prism\_coupler\_get}}
{\footnotesize\ttfamily type(\hyperlink{structmod__oasis__coupler_1_1prism__coupler__type}{prism\+\_\+coupler\+\_\+type}), dimension(\+:), pointer, public mod\+\_\+oasis\+\_\+coupler\+::prism\+\_\+coupler\+\_\+get}



prism\+\_\+coupler get array 



Definition at line 102 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_ae59d8823993d9ca8610efd9770393271}\label{namespacemod__oasis__coupler_ae59d8823993d9ca8610efd9770393271}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!prism\+\_\+coupler\+\_\+put@{prism\+\_\+coupler\+\_\+put}}
\index{prism\+\_\+coupler\+\_\+put@{prism\+\_\+coupler\+\_\+put}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{prism\+\_\+coupler\+\_\+put}{prism\_coupler\_put}}
{\footnotesize\ttfamily type(\hyperlink{structmod__oasis__coupler_1_1prism__coupler__type}{prism\+\_\+coupler\+\_\+type}), dimension(\+:), pointer, public mod\+\_\+oasis\+\_\+coupler\+::prism\+\_\+coupler\+\_\+put}



prism\+\_\+coupler put array 



Definition at line 101 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_aaa019c39b0f657e7c37820697ecf354a}\label{namespacemod__oasis__coupler_aaa019c39b0f657e7c37820697ecf354a}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!prism\+\_\+mcoupler@{prism\+\_\+mcoupler}}
\index{prism\+\_\+mcoupler@{prism\+\_\+mcoupler}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{prism\+\_\+mcoupler}{prism\_mcoupler}}
{\footnotesize\ttfamily integer(kind=ip\+\_\+i4\+\_\+p), public mod\+\_\+oasis\+\_\+coupler\+::prism\+\_\+mcoupler}



max couplers 



Definition at line 100 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a6d46883e9df70ab9cdafaf607afacacb}\label{namespacemod__oasis__coupler_a6d46883e9df70ab9cdafaf607afacacb}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!prism\+\_\+mrouter@{prism\+\_\+mrouter}}
\index{prism\+\_\+mrouter@{prism\+\_\+mrouter}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{prism\+\_\+mrouter}{prism\_mrouter}}
{\footnotesize\ttfamily integer(kind=ip\+\_\+i4\+\_\+p) mod\+\_\+oasis\+\_\+coupler\+::prism\+\_\+mrouter\hspace{0.3cm}{\ttfamily [private]}}



max routers 



Definition at line 96 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a2ebdb255598e1b004de2533f16b06e04}\label{namespacemod__oasis__coupler_a2ebdb255598e1b004de2533f16b06e04}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!prism\+\_\+nrouter@{prism\+\_\+nrouter}}
\index{prism\+\_\+nrouter@{prism\+\_\+nrouter}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{prism\+\_\+nrouter}{prism\_nrouter}}
{\footnotesize\ttfamily integer(kind=ip\+\_\+i4\+\_\+p) mod\+\_\+oasis\+\_\+coupler\+::prism\+\_\+nrouter = 0\hspace{0.3cm}{\ttfamily [private]}}



router counter 



Definition at line 97 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

\mbox{\Hypertarget{namespacemod__oasis__coupler_a33dbf692ad73f83f73fe083e252badd8}\label{namespacemod__oasis__coupler_a33dbf692ad73f83f73fe083e252badd8}} 
\index{mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}!prism\+\_\+router@{prism\+\_\+router}}
\index{prism\+\_\+router@{prism\+\_\+router}!mod\+\_\+oasis\+\_\+coupler@{mod\+\_\+oasis\+\_\+coupler}}
\subsubsection{\texorpdfstring{prism\+\_\+router}{prism\_router}}
{\footnotesize\ttfamily type(\hyperlink{structmod__oasis__coupler_1_1prism__router__type}{prism\+\_\+router\+\_\+type}), dimension(\+:), pointer, public mod\+\_\+oasis\+\_\+coupler\+::prism\+\_\+router}



prism\+\_\+router array 



Definition at line 98 of file mod\+\_\+oasis\+\_\+coupler.\+F90.

