\hypertarget{interfacemom__domains_1_1clone__mom__domain}{}\section{mom\+\_\+domains\+:\+:clone\+\_\+mom\+\_\+domain Interface Reference}
\label{interfacemom__domains_1_1clone__mom__domain}\index{mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain@{mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain}}


\subsection{Detailed Description}
Copy one M\+O\+M\+\_\+domain\+\_\+type into another. 

Definition at line 99 of file M\+O\+M\+\_\+domains.\+F90.

\subsection*{Private functions}
\begin{DoxyCompactItemize}
\item 
subroutine \mbox{\hyperlink{interfacemom__domains_1_1clone__mom__domain_a9f286af6f32524491ecbd17bf35aedab}{clone\+\_\+md\+\_\+to\+\_\+md}} (M\+D\+\_\+in, M\+O\+M\+\_\+dom, min\+\_\+halo, halo\+\_\+size, symmetric, domain\+\_\+name, turns)
\begin{DoxyCompactList}\small\item\em clone\+\_\+\+M\+D\+\_\+to\+\_\+\+MD copies one M\+O\+M\+\_\+domain\+\_\+type into another, while allowing some properties of the new type to differ from the original one. \end{DoxyCompactList}\item 
subroutine \mbox{\hyperlink{interfacemom__domains_1_1clone__mom__domain_a4bb6b013ea5dc28d1423d9117826f775}{clone\+\_\+md\+\_\+to\+\_\+d2d}} (M\+D\+\_\+in, mpp\+\_\+domain, min\+\_\+halo, halo\+\_\+size, symmetric, domain\+\_\+name, turns)
\begin{DoxyCompactList}\small\item\em clone\+\_\+\+M\+D\+\_\+to\+\_\+d2D uses information from a M\+O\+M\+\_\+domain\+\_\+type to create a new domain2d type, while allowing some properties of the new type to differ from the original one. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Copy one M\+O\+M\+\_\+domain\+\_\+type into another. 

Definition at line 99 of file M\+O\+M\+\_\+domains.\+F90.



\subsection{Functions and subroutines}
\mbox{\Hypertarget{interfacemom__domains_1_1clone__mom__domain_a4bb6b013ea5dc28d1423d9117826f775}\label{interfacemom__domains_1_1clone__mom__domain_a4bb6b013ea5dc28d1423d9117826f775}} 
\index{mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain@{mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain}!clone\+\_\+md\+\_\+to\+\_\+d2d@{clone\+\_\+md\+\_\+to\+\_\+d2d}}
\index{clone\+\_\+md\+\_\+to\+\_\+d2d@{clone\+\_\+md\+\_\+to\+\_\+d2d}!mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain@{mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain}}
\subsubsection{\texorpdfstring{clone\+\_\+md\+\_\+to\+\_\+d2d()}{clone\_md\_to\_d2d()}}
{\footnotesize\ttfamily subroutine mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain\+::clone\+\_\+md\+\_\+to\+\_\+d2d (\begin{DoxyParamCaption}\item[{type(\mbox{\hyperlink{structmom__domains_1_1mom__domain__type}{mom\+\_\+domain\+\_\+type}}), intent(in)}]{M\+D\+\_\+in,  }\item[{type(domain2d), intent(inout)}]{mpp\+\_\+domain,  }\item[{integer, dimension(2), intent(inout), optional}]{min\+\_\+halo,  }\item[{integer, intent(in), optional}]{halo\+\_\+size,  }\item[{logical, intent(in), optional}]{symmetric,  }\item[{character(len=$\ast$), intent(in), optional}]{domain\+\_\+name,  }\item[{integer, intent(in), optional}]{turns }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



clone\+\_\+\+M\+D\+\_\+to\+\_\+d2D uses information from a M\+O\+M\+\_\+domain\+\_\+type to create a new domain2d type, while allowing some properties of the new type to differ from the original one. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em md\+\_\+in} & An existing M\+O\+M\+\_\+domain to be cloned\\
\hline
\mbox{\tt in,out}  & {\em mpp\+\_\+domain} & The new mpp\+\_\+domain to be set up\\
\hline
\mbox{\tt in,out}  & {\em min\+\_\+halo} & If present, this sets the\\
\hline
\mbox{\tt in}  & {\em halo\+\_\+size} & If present, this sets the halo size for the domain in the i-\/ and j-\/directions. min\+\_\+halo and halo\+\_\+size can not both be present.\\
\hline
\mbox{\tt in}  & {\em symmetric} & If present, this specifies whether the new domain is symmetric, regardless of whether the macro S\+Y\+M\+M\+E\+T\+R\+I\+C\+\_\+\+M\+E\+M\+O\+R\+Y\+\_\+ is defined.\\
\hline
\mbox{\tt in}  & {\em domain\+\_\+name} & A name for the new domain, \char`\"{}\+M\+O\+M\char`\"{}\\
\hline
\mbox{\tt in}  & {\em turns} & If true, swap X and Y axes \\
\hline
\end{DoxyParams}


Definition at line 1737 of file M\+O\+M\+\_\+domains.\+F90.


\begin{DoxyCode}
1737   \textcolor{keywordtype}{type}(MOM\_domain\_type), \textcolor{keywordtype}{intent(in)}    :: MD\_in\textcolor{comment}{ !< An existing MOM\_domain to be cloned}
1738   \textcolor{keywordtype}{type}(domain2d),        \textcolor{keywordtype}{intent(inout)} :: mpp\_domain\textcolor{comment}{ !< The new mpp\_domain to be set up}
1739   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(2)}, &
1740                \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(inout)} :: min\_halo\textcolor{comment}{ !< If present, this sets the}
1741 \textcolor{comment}{                                  !! minimum halo size for this domain in the i- and j-}
1742 \textcolor{comment}{                                  !! directions, and returns the actual halo size used.}
1743   \textcolor{keywordtype}{integer},     \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(in)}    :: halo\_size\textcolor{comment}{ !< If present, this sets the halo}
1744 \textcolor{comment}{                                  !! size for the domain in the i- and j-directions.}
1745 \textcolor{comment}{                                  !! min\_halo and halo\_size can not both be present.}
1746   \textcolor{keywordtype}{logical},     \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(in)}    :: symmetric\textcolor{comment}{ !< If present, this specifies}
1747 \textcolor{comment}{                                  !! whether the new domain is symmetric, regardless of}
1748 \textcolor{comment}{                                  !! whether the macro SYMMETRIC\_MEMORY\_ is defined.}
1749   \textcolor{keywordtype}{character(len=*)}, &
1750                \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(in)}    :: domain\_name\textcolor{comment}{ !< A name for the new domain, "MOM"}
1751 \textcolor{comment}{                                  !! if missing.}
1752   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(in)} :: turns\textcolor{comment}{   !< If true, swap X and Y axes}
1753 
1754   \textcolor{keywordtype}{integer} :: global\_indices(4), layout(2), io\_layout(2)
1755   \textcolor{keywordtype}{integer} :: X\_FLAGS, Y\_FLAGS, niglobal, njglobal, nihalo, njhalo
1756   \textcolor{keywordtype}{logical} :: symmetric\_dom
1757   \textcolor{keywordtype}{character(len=64)} :: dom\_name
1758 
1759   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(turns)) &
1760     \textcolor{keyword}{call }mom\_error(fatal, \textcolor{stringliteral}{"Rotation not supported for MOM\_domain to domain2d"})
1761 
1762 \textcolor{comment}{! Save the extra data for creating other domains of different resolution that overlay this domain}
1763   niglobal = md\_in%niglobal ; njglobal = md\_in%njglobal
1764   nihalo = md\_in%nihalo ; njhalo = md\_in%njhalo
1765 
1766   symmetric\_dom = md\_in%symmetric
1767 
1768   x\_flags = md\_in%X\_FLAGS ; y\_flags = md\_in%Y\_FLAGS
1769   layout(:) = md\_in%layout(:) ; io\_layout(:) = md\_in%io\_layout(:)
1770 
1771   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(halo\_size) .and. \textcolor{keyword}{present}(min\_halo)) \textcolor{keyword}{call }mom\_error(fatal, &
1772       \textcolor{stringliteral}{"clone\_MOM\_domain can not have both halo\_size and min\_halo present."})
1773 
1774   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(min\_halo)) \textcolor{keywordflow}{then}
1775     nihalo = max(nihalo, min\_halo(1))
1776     njhalo = max(njhalo, min\_halo(2))
1777     min\_halo(1) = nihalo ; min\_halo(2) = njhalo
1778 \textcolor{keywordflow}{  endif}
1779 
1780   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(halo\_size)) \textcolor{keywordflow}{then}
1781     nihalo = halo\_size ; njhalo = halo\_size
1782 \textcolor{keywordflow}{  endif}
1783 
1784   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(symmetric)) \textcolor{keywordflow}{then} ; symmetric\_dom = symmetric ;\textcolor{keywordflow}{ endif}
1785 
1786   dom\_name = \textcolor{stringliteral}{"MOM"}
1787   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(domain\_name)) dom\_name = trim(domain\_name)
1788 
1789   global\_indices(1) = 1 ; global\_indices(2) = niglobal
1790   global\_indices(3) = 1 ; global\_indices(4) = njglobal
1791   \textcolor{keywordflow}{if} (\textcolor{keyword}{associated}(md\_in%maskmap)) \textcolor{keywordflow}{then}
1792     \textcolor{keyword}{call }mom\_define\_domain( global\_indices, layout, mpp\_domain, &
1793                 xflags=x\_flags, yflags=y\_flags, &
1794                 xhalo=nihalo, yhalo=njhalo, &
1795                 symmetry = symmetric, name=dom\_name, &
1796                 maskmap=md\_in%maskmap )
1797   \textcolor{keywordflow}{else}
1798     \textcolor{keyword}{call }mom\_define\_domain( global\_indices, layout, mpp\_domain, &
1799                 xflags=x\_flags, yflags=y\_flags, &
1800                 xhalo=nihalo, yhalo=njhalo, &
1801                 symmetry = symmetric, name=dom\_name)
1802 \textcolor{keywordflow}{  endif}
1803 
1804   \textcolor{keywordflow}{if} ((io\_layout(1) + io\_layout(2) > 0) .and. &
1805       (layout(1)*layout(2) > 1)) \textcolor{keywordflow}{then}
1806     \textcolor{keyword}{call }mom\_define\_io\_domain(mpp\_domain, io\_layout)
1807 \textcolor{keywordflow}{  endif}
1808 
\end{DoxyCode}
\mbox{\Hypertarget{interfacemom__domains_1_1clone__mom__domain_a9f286af6f32524491ecbd17bf35aedab}\label{interfacemom__domains_1_1clone__mom__domain_a9f286af6f32524491ecbd17bf35aedab}} 
\index{mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain@{mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain}!clone\+\_\+md\+\_\+to\+\_\+md@{clone\+\_\+md\+\_\+to\+\_\+md}}
\index{clone\+\_\+md\+\_\+to\+\_\+md@{clone\+\_\+md\+\_\+to\+\_\+md}!mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain@{mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain}}
\subsubsection{\texorpdfstring{clone\+\_\+md\+\_\+to\+\_\+md()}{clone\_md\_to\_md()}}
{\footnotesize\ttfamily subroutine mom\+\_\+domains\+::clone\+\_\+mom\+\_\+domain\+::clone\+\_\+md\+\_\+to\+\_\+md (\begin{DoxyParamCaption}\item[{type(\mbox{\hyperlink{structmom__domains_1_1mom__domain__type}{mom\+\_\+domain\+\_\+type}}), intent(in)}]{M\+D\+\_\+in,  }\item[{type(\mbox{\hyperlink{structmom__domains_1_1mom__domain__type}{mom\+\_\+domain\+\_\+type}}), pointer}]{M\+O\+M\+\_\+dom,  }\item[{integer, dimension(2), intent(inout), optional}]{min\+\_\+halo,  }\item[{integer, intent(in), optional}]{halo\+\_\+size,  }\item[{logical, intent(in), optional}]{symmetric,  }\item[{character(len=$\ast$), intent(in), optional}]{domain\+\_\+name,  }\item[{integer, intent(in), optional}]{turns }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



clone\+\_\+\+M\+D\+\_\+to\+\_\+\+MD copies one M\+O\+M\+\_\+domain\+\_\+type into another, while allowing some properties of the new type to differ from the original one. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em md\+\_\+in} & An existing M\+O\+M\+\_\+domain\\
\hline
 & {\em mom\+\_\+dom} & A pointer to a M\+O\+M\+\_\+domain that will be allocated if it is unassociated, and will have data copied from M\+D\+\_\+in\\
\hline
\mbox{\tt in,out}  & {\em min\+\_\+halo} & If present, this sets the\\
\hline
\mbox{\tt in}  & {\em halo\+\_\+size} & If present, this sets the halo size for the domain in the i-\/ and j-\/directions. min\+\_\+halo and halo\+\_\+size can not both be present.\\
\hline
\mbox{\tt in}  & {\em symmetric} & If present, this specifies whether the new domain is symmetric, regardless of whether the macro S\+Y\+M\+M\+E\+T\+R\+I\+C\+\_\+\+M\+E\+M\+O\+R\+Y\+\_\+ is defined.\\
\hline
\mbox{\tt in}  & {\em domain\+\_\+name} & A name for the new domain, \char`\"{}\+M\+O\+M\char`\"{}\\
\hline
\mbox{\tt in}  & {\em turns} & Number of quarter turns \\
\hline
\end{DoxyParams}


Definition at line 1607 of file M\+O\+M\+\_\+domains.\+F90.


\begin{DoxyCode}
1607   \textcolor{keywordtype}{type}(MOM\_domain\_type), \textcolor{keywordtype}{intent(in)}    :: MD\_in\textcolor{comment}{  !< An existing MOM\_domain}
1608   \textcolor{keywordtype}{type}(MOM\_domain\_type), \textcolor{keywordtype}{pointer}       :: MOM\_dom\textcolor{comment}{ !< A pointer to a MOM\_domain that will be}
1609 \textcolor{comment}{                                  !! allocated if it is unassociated, and will have data}
1610 \textcolor{comment}{                                  !! copied from MD\_in}
1611   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{dimension(2)}, &
1612                \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(inout)} :: min\_halo\textcolor{comment}{ !< If present, this sets the}
1613 \textcolor{comment}{                                  !! minimum halo size for this domain in the i- and j-}
1614 \textcolor{comment}{                                  !! directions, and returns the actual halo size used.}
1615   \textcolor{keywordtype}{integer},     \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(in)}    :: halo\_size\textcolor{comment}{ !< If present, this sets the halo}
1616 \textcolor{comment}{                                  !! size for the domain in the i- and j-directions.}
1617 \textcolor{comment}{                                  !! min\_halo and halo\_size can not both be present.}
1618   \textcolor{keywordtype}{logical},     \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(in)}    :: symmetric\textcolor{comment}{ !< If present, this specifies}
1619 \textcolor{comment}{                                  !! whether the new domain is symmetric, regardless of}
1620 \textcolor{comment}{                                  !! whether the macro SYMMETRIC\_MEMORY\_ is defined.}
1621   \textcolor{keywordtype}{character(len=*)}, &
1622                \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(in)}    :: domain\_name\textcolor{comment}{ !< A name for the new domain, "MOM"}
1623 \textcolor{comment}{                                  !! if missing.}
1624   \textcolor{keywordtype}{integer}, \textcolor{keywordtype}{optional}, \textcolor{keywordtype}{intent(in)} :: turns\textcolor{comment}{   !< Number of quarter turns}
1625 
1626   \textcolor{keywordtype}{integer} :: global\_indices(4)
1627   \textcolor{keywordtype}{logical} :: mask\_table\_exists
1628   \textcolor{keywordtype}{character(len=64)} :: dom\_name
1629   \textcolor{keywordtype}{integer} :: qturns
1630 
1631   qturns = 0
1632   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(turns)) qturns = turns
1633 
1634   \textcolor{keywordflow}{if} (.not.\textcolor{keyword}{associated}(mom\_dom)) \textcolor{keywordflow}{then}
1635     \textcolor{keyword}{allocate}(mom\_dom)
1636     \textcolor{keyword}{allocate}(mom\_dom%mpp\_domain)
1637     \textcolor{keyword}{allocate}(mom\_dom%mpp\_domain\_d2)
1638 \textcolor{keywordflow}{  endif}
1639 
1640 \textcolor{comment}{! Save the extra data for creating other domains of different resolution that overlay this domain}
1641   mom\_dom%symmetric = md\_in%symmetric
1642   mom\_dom%nonblocking\_updates = md\_in%nonblocking\_updates
1643   mom\_dom%thin\_halo\_updates = md\_in%thin\_halo\_updates
1644 
1645   \textcolor{keywordflow}{if} (modulo(qturns, 2) /= 0) \textcolor{keywordflow}{then}
1646     mom\_dom%niglobal = md\_in%njglobal ; mom\_dom%njglobal = md\_in%niglobal
1647     mom\_dom%nihalo = md\_in%njhalo ; mom\_dom%njhalo = md\_in%nihalo
1648 
1649     mom\_dom%X\_FLAGS = md\_in%Y\_FLAGS ; mom\_dom%Y\_FLAGS = md\_in%X\_FLAGS
1650     mom\_dom%layout(:) = md\_in%layout(2:1:-1)
1651     mom\_dom%io\_layout(:) = md\_in%io\_layout(2:1:-1)
1652   \textcolor{keywordflow}{else}
1653     mom\_dom%niglobal = md\_in%niglobal ; mom\_dom%njglobal = md\_in%njglobal
1654     mom\_dom%nihalo = md\_in%nihalo ; mom\_dom%njhalo = md\_in%njhalo
1655 
1656     mom\_dom%X\_FLAGS = md\_in%X\_FLAGS ; mom\_dom%Y\_FLAGS = md\_in%Y\_FLAGS
1657     mom\_dom%layout(:) = md\_in%layout(:)
1658     mom\_dom%io\_layout(:) = md\_in%io\_layout(:)
1659 \textcolor{keywordflow}{  endif}
1660 
1661   global\_indices(1) = 1 ; global\_indices(2) = mom\_dom%niglobal
1662   global\_indices(3) = 1 ; global\_indices(4) = mom\_dom%njglobal
1663 
1664   \textcolor{keywordflow}{if} (\textcolor{keyword}{associated}(md\_in%maskmap)) \textcolor{keywordflow}{then}
1665     mask\_table\_exists = .true.
1666     \textcolor{keyword}{allocate}(mom\_dom%maskmap(mom\_dom%layout(1), mom\_dom%layout(2)))
1667     \textcolor{keywordflow}{if} (qturns /= 0) \textcolor{keywordflow}{then}
1668       \textcolor{keyword}{call }rotate\_array(md\_in%maskmap(:,:), qturns, mom\_dom%maskmap(:,:))
1669     \textcolor{keywordflow}{else}
1670       mom\_dom%maskmap(:,:) = md\_in%maskmap(:,:)
1671 \textcolor{keywordflow}{    endif}
1672   \textcolor{keywordflow}{else}
1673     mask\_table\_exists = .false.
1674 \textcolor{keywordflow}{  endif}
1675 
1676   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(halo\_size) .and. \textcolor{keyword}{present}(min\_halo)) \textcolor{keyword}{call }mom\_error(fatal, &
1677       \textcolor{stringliteral}{"clone\_MOM\_domain can not have both halo\_size and min\_halo present."})
1678 
1679   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(min\_halo)) \textcolor{keywordflow}{then}
1680     mom\_dom%nihalo = max(mom\_dom%nihalo, min\_halo(1))
1681     min\_halo(1) = mom\_dom%nihalo
1682     mom\_dom%njhalo = max(mom\_dom%njhalo, min\_halo(2))
1683     min\_halo(2) = mom\_dom%njhalo
1684 \textcolor{keywordflow}{  endif}
1685 
1686   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(halo\_size)) \textcolor{keywordflow}{then}
1687     mom\_dom%nihalo = halo\_size ; mom\_dom%njhalo = halo\_size
1688 \textcolor{keywordflow}{  endif}
1689 
1690   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(symmetric)) \textcolor{keywordflow}{then} ; mom\_dom%symmetric = symmetric ;\textcolor{keywordflow}{ endif}
1691 
1692   dom\_name = \textcolor{stringliteral}{"MOM"}
1693   \textcolor{keywordflow}{if} (\textcolor{keyword}{present}(domain\_name)) dom\_name = trim(domain\_name)
1694 
1695   \textcolor{keywordflow}{if} (mask\_table\_exists) \textcolor{keywordflow}{then}
1696     \textcolor{keyword}{call }mom\_define\_domain(global\_indices, mom\_dom%layout, mom\_dom%mpp\_domain, &
1697                 xflags=mom\_dom%X\_FLAGS, yflags=mom\_dom%Y\_FLAGS, &
1698                 xhalo=mom\_dom%nihalo, yhalo=mom\_dom%njhalo, &
1699                 symmetry=mom\_dom%symmetric, name=dom\_name, &
1700                 maskmap=mom\_dom%maskmap)
1701 
1702     global\_indices(2) = global\_indices(2) / 2
1703     global\_indices(4) = global\_indices(4) / 2
1704     \textcolor{keyword}{call }mom\_define\_domain(global\_indices, mom\_dom%layout, &
1705                 mom\_dom%mpp\_domain\_d2, &
1706                 xflags=mom\_dom%X\_FLAGS, yflags=mom\_dom%Y\_FLAGS, &
1707                 xhalo=(mom\_dom%nihalo/2), yhalo=(mom\_dom%njhalo/2), &
1708                 symmetry=mom\_dom%symmetric, name=dom\_name, &
1709                 maskmap=mom\_dom%maskmap)
1710   \textcolor{keywordflow}{else}
1711     \textcolor{keyword}{call }mom\_define\_domain(global\_indices, mom\_dom%layout, mom\_dom%mpp\_domain, &
1712                 xflags=mom\_dom%X\_FLAGS, yflags=mom\_dom%Y\_FLAGS, &
1713                 xhalo=mom\_dom%nihalo, yhalo=mom\_dom%njhalo, &
1714                 symmetry=mom\_dom%symmetric, name=dom\_name)
1715 
1716     global\_indices(2) = global\_indices(2) / 2
1717     global\_indices(4) = global\_indices(4) / 2
1718     \textcolor{keyword}{call }mom\_define\_domain(global\_indices, mom\_dom%layout, &
1719                 mom\_dom%mpp\_domain\_d2, &
1720                 xflags=mom\_dom%X\_FLAGS, yflags=mom\_dom%Y\_FLAGS, &
1721                 xhalo=(mom\_dom%nihalo/2), yhalo=(mom\_dom%njhalo/2), &
1722                 symmetry=mom\_dom%symmetric, name=dom\_name)
1723 \textcolor{keywordflow}{  endif}
1724 
1725   \textcolor{keywordflow}{if} ((mom\_dom%io\_layout(1) + mom\_dom%io\_layout(2) > 0) .and. &
1726       (mom\_dom%layout(1)*mom\_dom%layout(2) > 1)) \textcolor{keywordflow}{then}
1727     \textcolor{keyword}{call }mom\_define\_io\_domain(mom\_dom%mpp\_domain, mom\_dom%io\_layout)
1728 \textcolor{keywordflow}{  endif}
1729 
\end{DoxyCode}


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