<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.8.15">
  <compounddef id="namespacemom__domains" kind="namespace" language="Fortran">
    <compoundname>mom_domains</compoundname>
    <innerclass refid="interfacemom__domains_1_1clone__mom__domain" prot="private">mom_domains::clone_mom_domain</innerclass>
    <innerclass refid="interfacemom__domains_1_1create__group__pass" prot="private">mom_domains::create_group_pass</innerclass>
    <innerclass refid="interfacemom__domains_1_1fill__symmetric__edges" prot="private">mom_domains::fill_symmetric_edges</innerclass>
    <innerclass refid="structmom__domains_1_1mom__domain__type" prot="public">mom_domains::mom_domain_type</innerclass>
    <innerclass refid="interfacemom__domains_1_1pass__var" prot="private">mom_domains::pass_var</innerclass>
    <innerclass refid="interfacemom__domains_1_1pass__var__complete" prot="private">mom_domains::pass_var_complete</innerclass>
    <innerclass refid="interfacemom__domains_1_1pass__var__start" prot="private">mom_domains::pass_var_start</innerclass>
    <innerclass refid="interfacemom__domains_1_1pass__vector" prot="private">mom_domains::pass_vector</innerclass>
    <innerclass refid="interfacemom__domains_1_1pass__vector__complete" prot="private">mom_domains::pass_vector_complete</innerclass>
    <innerclass refid="interfacemom__domains_1_1pass__vector__start" prot="private">mom_domains::pass_vector_start</innerclass>
      <sectiondef kind="var">
      <memberdef kind="variable" id="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" prot="public" static="no" mutable="no">
        <type>integer, parameter, public</type>
        <definition>integer, parameter, public mom_domains::to_all</definition>
        <argsstring></argsstring>
        <name>to_all</name>
        <initializer>= To_East + To_West + To_North + To_South</initializer>
        <briefdescription>
<para>A flag for passing in all directions. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="137" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="137" bodyend="137"/>
        <referencedby refid="namespacemom__ice__shelf_1a0274b25df07d5fa712d038c31f921cbc" compoundref="MOM__ice__shelf_8F90" startline="776" endline="851">mom_ice_shelf::add_shelf_forces</referencedby>
        <referencedby refid="namespacemom__debugging_1a30f0883aa7a65b8e39b0da6de34afb59" compoundref="MOM__debugging_8F90" startline="236" endline="289">mom_debugging::check_redundant_sb2d</referencedby>
        <referencedby refid="namespacemom__debugging_1a8a9901e010cdb264dbd8f8b3513eba1d" compoundref="MOM__debugging_8F90" startline="699" endline="721">mom_debugging::chksum_vec_a2d</referencedby>
        <referencedby refid="namespacemom__debugging_1aab19ba6d8d509d831102929dc636ea4e" compoundref="MOM__debugging_8F90" startline="672" endline="694">mom_debugging::chksum_vec_a3d</referencedby>
        <referencedby refid="namespacemom__debugging_1ab480752dac4d519fb8b37438c7a696da" compoundref="MOM__debugging_8F90" startline="643" endline="667">mom_debugging::chksum_vec_b2d</referencedby>
        <referencedby refid="namespacemom__debugging_1ad66ab7451d216eb9f8136e10142d9b22" compoundref="MOM__debugging_8F90" startline="616" endline="638">mom_debugging::chksum_vec_b3d</referencedby>
        <referencedby refid="namespacemom__debugging_1a0ec85b9298cb751749a46c33a5415a69" compoundref="MOM__debugging_8F90" startline="590" endline="611">mom_debugging::chksum_vec_c2d</referencedby>
        <referencedby refid="namespacemom__debugging_1a6ff3e4eeb933a992d78dbc771d62bfc1" compoundref="MOM__debugging_8F90" startline="564" endline="585">mom_debugging::chksum_vec_c3d</referencedby>
        <referencedby refid="namespacemom__transcribe__grid_1abe8bd4f6f75bf431d0b53ef702a91d8d" compoundref="MOM__transcribe__grid_8F90" startline="25" endline="162">mom_transcribe_grid::copy_dyngrid_to_mom_grid</referencedby>
        <referencedby refid="namespacemom__transcribe__grid_1afe3cc701e19603d664699db7fe8d72a8" compoundref="MOM__transcribe__grid_8F90" startline="169" endline="307">mom_transcribe_grid::copy_mom_grid_to_dyngrid</referencedby>
        <referencedby refid="namespacemom__domains_1ae8983ffd009810e38975f32cb34a0f65" compoundref="MOM__domains_8F90" startline="911" endline="950">create_var_group_pass_2d</referencedby>
        <referencedby refid="namespacemom__domains_1a98e7ddef6138d57f457f05e6ebc326b0" compoundref="MOM__domains_8F90" startline="956" endline="995">create_var_group_pass_3d</referencedby>
        <referencedby refid="namespacemom__domains_1a71883f8a7b981797b20b83ca277d32dd" compoundref="MOM__domains_8F90" startline="1001" endline="1051">create_vector_group_pass_2d</referencedby>
        <referencedby refid="namespacemom__domains_1aa224a5c2409ffe99157e4cc51e979cf4" compoundref="MOM__domains_8F90" startline="1057" endline="1108">create_vector_group_pass_3d</referencedby>
        <referencedby refid="namespacemom__domains_1a3ad88dc636a6d2d6092332235f99f9b8" compoundref="MOM__domains_8F90" startline="548" endline="626">fill_vector_symmetric_edges_2d</referencedby>
        <referencedby refid="namespacemom__ice__shelf__dynamics_1af0560b5ebc88617568bd5d580dec7822" compoundref="MOM__ice__shelf__dynamics_8F90" startline="1003" endline="1296">mom_ice_shelf_dynamics::ice_shelf_solve_inner</referencedby>
        <referencedby refid="namespacemom__marine__ice_1af84733e6afc851704bbfd1051aea0487" compoundref="MOM__marine__ice_8F90" startline="46" endline="96">mom_marine_ice::iceberg_forces</referencedby>
        <referencedby refid="namespacemom__ice__shelf__dynamics_1a214304391d90b046fd3756249be46afb" compoundref="MOM__ice__shelf__dynamics_8F90" startline="274" endline="559">mom_ice_shelf_dynamics::initialize_ice_shelf_dyn</referencedby>
        <referencedby refid="namespacemom__open__boundary_1a53dc87c231fcaf1c99fe818956fb111e" compoundref="MOM__open__boundary_8F90" startline="1792" endline="1867">mom_open_boundary::open_boundary_init</referencedby>
        <referencedby refid="namespacemom__domains_1a98ff318d433bfde36936967df2f5187a" compoundref="MOM__domains_8F90" startline="190" endline="304">pass_var_2d</referencedby>
        <referencedby refid="namespacemom__domains_1a999a002240cf83d613c2c792c1a55a3e" compoundref="MOM__domains_8F90" startline="144" endline="185">pass_var_3d</referencedby>
        <referencedby refid="namespacemom__domains_1ab7f3448204f6b2b959174c7458299efd" compoundref="MOM__domains_8F90" startline="400" endline="437">pass_var_complete_2d</referencedby>
        <referencedby refid="namespacemom__domains_1aaf84cb739a4915a17a12898a0bd33ace" compoundref="MOM__domains_8F90" startline="443" endline="480">pass_var_complete_3d</referencedby>
        <referencedby refid="namespacemom__domains_1a12e2e78eaf5b2d63da34a190052881e2" compoundref="MOM__domains_8F90" startline="310" endline="349">pass_var_start_2d</referencedby>
        <referencedby refid="namespacemom__domains_1ae69b74b11620d559736ee87e644fcd7f" compoundref="MOM__domains_8F90" startline="355" endline="394">pass_var_start_3d</referencedby>
        <referencedby refid="namespacemom__domains_1af0e7230b07b8bdce96b89475a87c0622" compoundref="MOM__domains_8F90" startline="487" endline="538">pass_vector_2d</referencedby>
        <referencedby refid="namespacemom__domains_1ad6af3f884cc89a6239f0fe240bfd3580" compoundref="MOM__domains_8F90" startline="633" endline="684">pass_vector_3d</referencedby>
        <referencedby refid="namespacemom__domains_1a1fe9c30fcc37098454d5bb11c6925116" compoundref="MOM__domains_8F90" startline="804" endline="851">pass_vector_complete_2d</referencedby>
        <referencedby refid="namespacemom__domains_1ae5cd6e7c49fc4f9a631753f25c30683b" compoundref="MOM__domains_8F90" startline="858" endline="905">pass_vector_complete_3d</referencedby>
        <referencedby refid="namespacemom__domains_1a30e9d0831d2c44339c2891e9250ca683" compoundref="MOM__domains_8F90" startline="691" endline="741">pass_vector_start_2d</referencedby>
        <referencedby refid="namespacemom__domains_1a873cbcdb86ae700c1d1aaf340b28d8f8" compoundref="MOM__domains_8F90" startline="748" endline="797">pass_vector_start_3d</referencedby>
        <referencedby refid="namespacemom__shared__initialization_1a27bab8da74b45855db4466ce4942456f" compoundref="MOM__shared__initialization_8F90" startline="750" endline="812">mom_shared_initialization::reset_face_lengths_file</referencedby>
        <referencedby refid="namespacescm__cvmix__tests_1aac23f24159bc5eb342bcfe1643e516fd" compoundref="SCM__CVMix__tests_8F90" startline="204" endline="232">scm_cvmix_tests::scm_cvmix_tests_wind_forcing</referencedby>
        <referencedby refid="namespacemom__ice__shelf_1a21a2a3ddec5ea25c7bca246419e4dcfe" compoundref="MOM__ice__shelf_8F90" startline="195" endline="723">mom_ice_shelf::shelf_calc_flux</referencedby>
        <referencedby refid="namespacemom__wave__interface_1a01dd0c089dab89934450a7a699255658" compoundref="MOM__wave__interface_8F90" startline="710" endline="870">mom_wave_interface::surface_bands_by_data_override</referencedby>
        <referencedby refid="namespacemom__ice__shelf__dynamics_1a4f87da4ad4dafef238d6f55a4c0d9d8d" compoundref="MOM__ice__shelf__dynamics_8F90" startline="2755" endline="2905">mom_ice_shelf_dynamics::update_velocity_masks</referencedby>
      </memberdef>
      </sectiondef>
      <sectiondef kind="func">
      <memberdef kind="function" id="namespacemom__domains_1a999a002240cf83d613c2c792c1a55a3e" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::pass_var_3d</definition>
        <argsstring>(array, MOM_dom, sideflag, complete, position, halo, clock)</argsstring>
        <name>pass_var_3d</name>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>sideflag</type>
          <defname>sideflag</defname>
        </param>
        <param>
          <type>complete</type>
          <defname>complete</defname>
        </param>
        <param>
          <type>position</type>
          <defname>position</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_var_3d does a halo update for a three-dimensional array. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">array</parametername>
</parameternamelist>
<parameterdescription>
<para>The array which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sideflag</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH. For example, TO_EAST sends the data to the processor to the east, sothe halos on the western side are filled. TO_ALL is the default if sideflag is omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">complete</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether the halo updates should be completed before progress resumes. Omitting complete is the same as setting complete to .true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">position</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating the position. This is CENTER by default and is often CORNER, but could also be EAST_FACE or NORTH_FACE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="142" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="144" bodyend="185"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a98ff318d433bfde36936967df2f5187a" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::pass_var_2d</definition>
        <argsstring>(array, MOM_dom, sideflag, complete, position, halo, inner_halo, clock)</argsstring>
        <name>pass_var_2d</name>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>sideflag</type>
          <defname>sideflag</defname>
        </param>
        <param>
          <type>complete</type>
          <defname>complete</defname>
        </param>
        <param>
          <type>position</type>
          <defname>position</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>inner_halo</type>
          <defname>inner_halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_var_2d does a halo update for a two-dimensional array. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">array</parametername>
</parameternamelist>
<parameterdescription>
<para>The array which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sideflag</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if sideflag is omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">complete</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether the halo updates should be completed before progress resumes. Omitting complete is the same as setting complete to .true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">position</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating the position. This is CENTER by default and is often CORNER, but could also be EAST_FACE or NORTH_FACE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">inner_halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of an inner halo to avoid updating, or 0 to avoid updating symmetric memory computational domain points. Setting this &gt;=0 also enforces that complete=.true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="189" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="190" bodyend="304"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a12e2e78eaf5b2d63da34a190052881e2" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>integer function</type>
        <definition>integer function mom_domains::pass_var_start_2d</definition>
        <argsstring>(array, MOM_dom, sideflag, position, complete, halo, clock)</argsstring>
        <name>pass_var_start_2d</name>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>sideflag</type>
          <defname>sideflag</defname>
        </param>
        <param>
          <type>position</type>
          <defname>position</defname>
        </param>
        <param>
          <type>complete</type>
          <defname>complete</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_var_start_2d starts a halo update for a two-dimensional array. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">array</parametername>
</parameternamelist>
<parameterdescription>
<para>The array which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sideflag</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if sideflag is omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">position</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating the position. This is CENTER by default and is often CORNER, but could also be EAST_FACE or NORTH_FACE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">complete</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether the halo updates should be completed before progress resumes. Omitting complete is the same as setting complete to .true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The integer index for this update. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="308" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="310" bodyend="349"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1ae69b74b11620d559736ee87e644fcd7f" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>integer function</type>
        <definition>integer function mom_domains::pass_var_start_3d</definition>
        <argsstring>(array, MOM_dom, sideflag, position, complete, halo, clock)</argsstring>
        <name>pass_var_start_3d</name>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>sideflag</type>
          <defname>sideflag</defname>
        </param>
        <param>
          <type>position</type>
          <defname>position</defname>
        </param>
        <param>
          <type>complete</type>
          <defname>complete</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_var_start_3d starts a halo update for a three-dimensional array. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">array</parametername>
</parameternamelist>
<parameterdescription>
<para>The array which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sideflag</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if sideflag is omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">position</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating the position. This is CENTER by default and is often CORNER, but could also be EAST_FACE or NORTH_FACE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">complete</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether the halo updates should be completed before progress resumes. Omitting complete is the same as setting complete to .true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The integer index for this update. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="353" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="355" bodyend="394"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1ab7f3448204f6b2b959174c7458299efd" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::pass_var_complete_2d</definition>
        <argsstring>(id_update, array, MOM_dom, sideflag, position, halo, clock)</argsstring>
        <name>pass_var_complete_2d</name>
        <param>
          <type>id_update</type>
          <defname>id_update</defname>
        </param>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>sideflag</type>
          <defname>sideflag</defname>
        </param>
        <param>
          <type>position</type>
          <defname>position</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_var_complete_2d completes a halo update for a two-dimensional array. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">id_update</parametername>
</parameternamelist>
<parameterdescription>
<para>The integer id of this update which has been returned from a previous call to <ref refid="interfacemom__domains_1_1pass__var__start" kindref="compound">pass_var_start</ref>. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">array</parametername>
</parameternamelist>
<parameterdescription>
<para>The array which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sideflag</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if sideflag is omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">position</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating the position. This is CENTER by default and is often CORNER, but could also be EAST_FACE or NORTH_FACE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="398" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="400" bodyend="437"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1aaf84cb739a4915a17a12898a0bd33ace" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::pass_var_complete_3d</definition>
        <argsstring>(id_update, array, MOM_dom, sideflag, position, halo, clock)</argsstring>
        <name>pass_var_complete_3d</name>
        <param>
          <type>id_update</type>
          <defname>id_update</defname>
        </param>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>sideflag</type>
          <defname>sideflag</defname>
        </param>
        <param>
          <type>position</type>
          <defname>position</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_var_complete_3d completes a halo update for a three-dimensional array. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">id_update</parametername>
</parameternamelist>
<parameterdescription>
<para>The integer id of this update which has been returned from a previous call to <ref refid="interfacemom__domains_1_1pass__var__start" kindref="compound">pass_var_start</ref>. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">array</parametername>
</parameternamelist>
<parameterdescription>
<para>The array which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sideflag</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if sideflag is omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">position</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating the position. This is CENTER by default and is often CORNER, but could also be EAST_FACE or NORTH_FACE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="441" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="443" bodyend="480"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1af0e7230b07b8bdce96b89475a87c0622" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::pass_vector_2d</definition>
        <argsstring>(u_cmpt, v_cmpt, MOM_dom, direction, stagger, complete, halo, clock)</argsstring>
        <name>pass_vector_2d</name>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>direction</type>
          <defname>direction</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>complete</type>
          <defname>complete</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_vector_2d does a halo update for a pair of two-dimensional arrays representing the compontents of a two-dimensional horizontal vector. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">direction</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">complete</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether the halo updates should be completed before progress resumes. Omitting complete is the same as setting complete to .true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="485" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="487" bodyend="538"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a3ad88dc636a6d2d6092332235f99f9b8" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::fill_vector_symmetric_edges_2d</definition>
        <argsstring>(u_cmpt, v_cmpt, MOM_dom, stagger, scalar, clock)</argsstring>
        <name>fill_vector_symmetric_edges_2d</name>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>scalar</type>
          <defname>scalar</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>fill_vector_symmetric_edges_2d does an usual set of halo updates that only fill in the values at the edge of a pair of symmetric memory two-dimensional arrays representing the compontents of a two-dimensional horizontal vector. If symmetric memory is not being used, this subroutine does nothing except to possibly turn optional cpu clocks on or off. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">scalar</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="546" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="548" bodyend="626"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1ad6af3f884cc89a6239f0fe240bfd3580" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::pass_vector_3d</definition>
        <argsstring>(u_cmpt, v_cmpt, MOM_dom, direction, stagger, complete, halo, clock)</argsstring>
        <name>pass_vector_3d</name>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>direction</type>
          <defname>direction</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>complete</type>
          <defname>complete</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_vector_3d does a halo update for a pair of three-dimensional arrays representing the compontents of a three-dimensional horizontal vector. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">direction</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">complete</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether the halo updates should be completed before progress resumes. Omitting complete is the same as setting complete to .true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="631" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="633" bodyend="684"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a30e9d0831d2c44339c2891e9250ca683" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>integer function</type>
        <definition>integer function mom_domains::pass_vector_start_2d</definition>
        <argsstring>(u_cmpt, v_cmpt, MOM_dom, direction, stagger, complete, halo, clock)</argsstring>
        <name>pass_vector_start_2d</name>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>direction</type>
          <defname>direction</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>complete</type>
          <defname>complete</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_vector_start_2d starts a halo update for a pair of two-dimensional arrays representing the compontents of a two-dimensional horizontal vector. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">direction</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">complete</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether the halo updates should be completed before progress resumes. Omitting complete is the same as setting complete to .true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The integer index for this update. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="689" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="691" bodyend="741"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a873cbcdb86ae700c1d1aaf340b28d8f8" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>integer function</type>
        <definition>integer function mom_domains::pass_vector_start_3d</definition>
        <argsstring>(u_cmpt, v_cmpt, MOM_dom, direction, stagger, complete, halo, clock)</argsstring>
        <name>pass_vector_start_3d</name>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>direction</type>
          <defname>direction</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>complete</type>
          <defname>complete</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_vector_start_3d starts a halo update for a pair of three-dimensional arrays representing the compontents of a three-dimensional horizontal vector. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">direction</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">complete</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating whether the halo updates should be completed before progress resumes. Omitting complete is the same as setting complete to .true. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The integer index for this update. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="746" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="748" bodyend="797"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a1fe9c30fcc37098454d5bb11c6925116" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::pass_vector_complete_2d</definition>
        <argsstring>(id_update, u_cmpt, v_cmpt, MOM_dom, direction, stagger, halo, clock)</argsstring>
        <name>pass_vector_complete_2d</name>
        <param>
          <type>id_update</type>
          <defname>id_update</defname>
        </param>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>direction</type>
          <defname>direction</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_vector_complete_2d completes a halo update for a pair of two-dimensional arrays representing the compontents of a two-dimensional horizontal vector. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">id_update</parametername>
</parameternamelist>
<parameterdescription>
<para>The integer id of this update which has been returned from a previous call to <ref refid="interfacemom__domains_1_1pass__var__start" kindref="compound">pass_var_start</ref>. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">direction</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="802" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="804" bodyend="851"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1ae5cd6e7c49fc4f9a631753f25c30683b" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::pass_vector_complete_3d</definition>
        <argsstring>(id_update, u_cmpt, v_cmpt, MOM_dom, direction, stagger, halo, clock)</argsstring>
        <name>pass_vector_complete_3d</name>
        <param>
          <type>id_update</type>
          <defname>id_update</defname>
        </param>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>direction</type>
          <defname>direction</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>pass_vector_complete_3d completes a halo update for a pair of three-dimensional arrays representing the compontents of a three-dimensional horizontal vector. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">id_update</parametername>
</parameternamelist>
<parameterdescription>
<para>The integer id of this update which has been returned from a previous call to <ref refid="interfacemom__domains_1_1pass__var__start" kindref="compound">pass_var_start</ref>. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">direction</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="856" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="858" bodyend="905"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1ae8983ffd009810e38975f32cb34a0f65" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::create_var_group_pass_2d</definition>
        <argsstring>(group, array, MOM_dom, sideflag, position, halo, clock)</argsstring>
        <name>create_var_group_pass_2d</name>
        <param>
          <type>group</type>
          <defname>group</defname>
        </param>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>sideflag</type>
          <defname>sideflag</defname>
        </param>
        <param>
          <type>position</type>
          <defname>position</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>create_var_group_pass_2d sets up a group of two-dimensional array halo updates. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">group</parametername>
</parameternamelist>
<parameterdescription>
<para>The data type that store information for group update. This data will be used in do_group_pass. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">array</parametername>
</parameternamelist>
<parameterdescription>
<para>The array which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sideflag</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if sideflag is omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">position</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating the position. This is CENTER by default and is often CORNER, but could also be EAST_FACE or NORTH_FACE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="909" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="911" bodyend="950"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a98e7ddef6138d57f457f05e6ebc326b0" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::create_var_group_pass_3d</definition>
        <argsstring>(group, array, MOM_dom, sideflag, position, halo, clock)</argsstring>
        <name>create_var_group_pass_3d</name>
        <param>
          <type>group</type>
          <defname>group</defname>
        </param>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>sideflag</type>
          <defname>sideflag</defname>
        </param>
        <param>
          <type>position</type>
          <defname>position</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>create_var_group_pass_3d sets up a group of three-dimensional array halo updates. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">group</parametername>
</parameternamelist>
<parameterdescription>
<para>The data type that store information for group update. This data will be used in do_group_pass. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">array</parametername>
</parameternamelist>
<parameterdescription>
<para>The array which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sideflag</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if sideflag is omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">position</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional argument indicating the position. This is CENTER by default and is often CORNER, but could also be EAST_FACE or NORTH_FACE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="954" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="956" bodyend="995"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a71883f8a7b981797b20b83ca277d32dd" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::create_vector_group_pass_2d</definition>
        <argsstring>(group, u_cmpt, v_cmpt, MOM_dom, direction, stagger, halo, clock)</argsstring>
        <name>create_vector_group_pass_2d</name>
        <param>
          <type>group</type>
          <defname>group</defname>
        </param>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>direction</type>
          <defname>direction</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>create_vector_group_pass_2d sets up a group of two-dimensional vector halo updates. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">group</parametername>
</parameternamelist>
<parameterdescription>
<para>The data type that store information for group update. This data will be used in do_group_pass. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">direction</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="999" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1001" bodyend="1051"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1aa224a5c2409ffe99157e4cc51e979cf4" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::create_vector_group_pass_3d</definition>
        <argsstring>(group, u_cmpt, v_cmpt, MOM_dom, direction, stagger, halo, clock)</argsstring>
        <name>create_vector_group_pass_3d</name>
        <param>
          <type>group</type>
          <defname>group</defname>
        </param>
        <param>
          <type>u_cmpt</type>
          <defname>u_cmpt</defname>
        </param>
        <param>
          <type>v_cmpt</type>
          <defname>v_cmpt</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>direction</type>
          <defname>direction</defname>
        </param>
        <param>
          <type>stagger</type>
          <defname>stagger</defname>
        </param>
        <param>
          <type>halo</type>
          <defname>halo</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>create_vector_group_pass_3d sets up a group of three-dimensional vector halo updates. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">group</parametername>
</parameternamelist>
<parameterdescription>
<para>The data type that store information for group update. This data will be used in do_group_pass. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">u_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal zonal (u) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v_cmpt</parametername>
</parameternamelist>
<parameterdescription>
<para>The nominal meridional (v) component of the vector pair which is having its halos points exchanged. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">direction</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">stagger</parametername>
</parameternamelist>
<parameterdescription>
<para>An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo</parametername>
</parameternamelist>
<parameterdescription>
<para>The size of the halo to update - the full halo by default. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1055" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1057" bodyend="1108"/>
        <references refid="namespacemom__domains_1aa7d2122aa278771209b860dbd6788097" compoundref="MOM__domains_8F90" startline="137" endline="137">to_all</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1aac3bc012a8c214cbd73bb00668ff165e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::do_group_pass</definition>
        <argsstring>(group, MOM_dom, clock)</argsstring>
        <name>do_group_pass</name>
        <param>
          <type>group</type>
          <defname>group</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>do_group_pass carries out a group halo update. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">group</parametername>
</parameternamelist>
<parameterdescription>
<para>The data type that store information for group update. This data will be used in do_group_pass. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1112" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1113" bodyend="1128"/>
        <referencedby refid="namespacemom__tracer__advect_1a28a6e28170a8d4f34337a1a202e0d902" compoundref="MOM__tracer__advect_8F90" startline="52" endline="331">mom_tracer_advect::advect_tracer</referencedby>
        <referencedby refid="namespacemom__ale_1a93a3be63e89c22d40356a656790f821f" compoundref="MOM__ALE_8F90" startline="660" endline="735">mom_ale::ale_regrid_accelerated</referencedby>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">mom_bulk_mixed_layer::bulkmixedlayer</referencedby>
        <referencedby refid="namespacemom__diabatic__driver_1ae57c48925de75712384e859a851c8c40" compoundref="MOM__diabatic__driver_8F90" startline="1173" endline="1848">mom_diabatic_driver::diabatic_ale</referencedby>
        <referencedby refid="namespacemom__diabatic__driver_1a71d8d849db16be4b87c2650b49f01c82" compoundref="MOM__diabatic__driver_8F90" startline="1855" endline="2812">mom_diabatic_driver::layered_diabatic</referencedby>
        <referencedby refid="namespacemom__meke_1a099f1cfad37430ef1bd60972a92b1be4" compoundref="MOM__MEKE_8F90" startline="984" endline="1342">mom_meke::meke_init</referencedby>
        <referencedby refid="namespacemom__meke_1a5f752f097ddeba7071e1703110e51bc2" compoundref="MOM__MEKE_8F90" startline="112" endline="637">mom_meke::step_forward_meke</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1ab27e1cc5953c88e733e0f9f55e4fd446" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::start_group_pass</definition>
        <argsstring>(group, MOM_dom, clock)</argsstring>
        <name>start_group_pass</name>
        <param>
          <type>group</type>
          <defname>group</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>start_group_pass starts out a group halo update. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">group</parametername>
</parameternamelist>
<parameterdescription>
<para>The data type that store information for group update. This data will be used in do_group_pass. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1132" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1133" bodyend="1149"/>
        <referencedby refid="namespacemom__barotropic_1ac60353f002de5980317d117a3db1a075" compoundref="MOM__barotropic_8F90" startline="411" endline="2638">mom_barotropic::btstep</referencedby>
        <referencedby refid="namespacemom__internal__tides_1aeeeea20ff7fe971846b7539d377f4389" compoundref="MOM__internal__tides_8F90" startline="154" endline="589">mom_internal_tides::propagate_int_tide</referencedby>
        <referencedby refid="namespacemom_1adf54a4e3a72611aa2088f46076e56e53" compoundref="MOM_8F90" startline="422" endline="940">mom::step_mom</referencedby>
        <referencedby refid="namespacemom__dynamics__split__rk2_1a976e700971f232fc11bc69b31d611c32" compoundref="MOM__dynamics__split__RK2_8F90" startline="245" endline="994">mom_dynamics_split_rk2::step_mom_dyn_split_rk2</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a242daf83cdf6041f5023f7da49d6da37" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::complete_group_pass</definition>
        <argsstring>(group, MOM_dom, clock)</argsstring>
        <name>complete_group_pass</name>
        <param>
          <type>group</type>
          <defname>group</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>clock</type>
          <defname>clock</defname>
        </param>
        <briefdescription>
<para>complete_group_pass completes a group halo update. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">group</parametername>
</parameternamelist>
<parameterdescription>
<para>The data type that store information for group update. This data will be used in do_group_pass. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">clock</parametername>
</parameternamelist>
<parameterdescription>
<para>The handle for a cpu time clock that should be started then stopped to time this routine. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1153" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1154" bodyend="1169"/>
        <referencedby refid="namespacemom__barotropic_1ac60353f002de5980317d117a3db1a075" compoundref="MOM__barotropic_8F90" startline="411" endline="2638">mom_barotropic::btstep</referencedby>
        <referencedby refid="namespacemom__internal__tides_1aeeeea20ff7fe971846b7539d377f4389" compoundref="MOM__internal__tides_8F90" startline="154" endline="589">mom_internal_tides::propagate_int_tide</referencedby>
        <referencedby refid="namespacemom_1adf54a4e3a72611aa2088f46076e56e53" compoundref="MOM_8F90" startline="422" endline="940">mom::step_mom</referencedby>
        <referencedby refid="namespacemom__dynamics__split__rk2_1a976e700971f232fc11bc69b31d611c32" compoundref="MOM__dynamics__split__RK2_8F90" startline="245" endline="994">mom_dynamics_split_rk2::step_mom_dyn_split_rk2</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a1f46e6c3ac2f2728924617edfa6f22b5" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::mom_domains_init</definition>
        <argsstring>(MOM_dom, param_file, symmetric, static_memory, NIHALO, NJHALO, NIGLOBAL, NJGLOBAL, NIPROC, NJPROC, min_halo, domain_name, include_name, param_suffix)</argsstring>
        <name>mom_domains_init</name>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>param_file</type>
          <defname>param_file</defname>
        </param>
        <param>
          <type>symmetric</type>
          <defname>symmetric</defname>
        </param>
        <param>
          <type>static_memory</type>
          <defname>static_memory</defname>
        </param>
        <param>
          <type>NIHALO</type>
          <defname>NIHALO</defname>
        </param>
        <param>
          <type>NJHALO</type>
          <defname>NJHALO</defname>
        </param>
        <param>
          <type>NIGLOBAL</type>
          <defname>NIGLOBAL</defname>
        </param>
        <param>
          <type>NJGLOBAL</type>
          <defname>NJGLOBAL</defname>
        </param>
        <param>
          <type>NIPROC</type>
          <defname>NIPROC</defname>
        </param>
        <param>
          <type>NJPROC</type>
          <defname>NJPROC</defname>
        </param>
        <param>
          <type>min_halo</type>
          <defname>min_halo</defname>
        </param>
        <param>
          <type>domain_name</type>
          <defname>domain_name</defname>
        </param>
        <param>
          <type>include_name</type>
          <defname>include_name</defname>
        </param>
        <param>
          <type>param_suffix</type>
          <defname>param_suffix</defname>
        </param>
        <briefdescription>
<para>MOM_domains_init initalizes a MOM_domain_type variable, based on the information read in from a param_file_type, and optionally returns data describing various&apos; properties of the domain type. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>A pointer to the MOM_domain_type being defined here. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">param_file</parametername>
</parameternamelist>
<parameterdescription>
<para>A structure to parse for run-time parameters </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">symmetric</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, this specifies whether this domain is symmetric, regardless of whether the macro SYMMETRIC_MEMORY_ is defined. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">static_memory</parametername>
</parameternamelist>
<parameterdescription>
<para>If present and true, this domain type is set up for static memory and error checking of various input values is performed against those in the input file. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">nihalo</parametername>
</parameternamelist>
<parameterdescription>
<para>Default halo sizes, required with static memory. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">njhalo</parametername>
</parameternamelist>
<parameterdescription>
<para>Default halo sizes, required with static memory. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">niglobal</parametername>
</parameternamelist>
<parameterdescription>
<para>Total domain sizes, required with static memory. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">njglobal</parametername>
</parameternamelist>
<parameterdescription>
<para>Total domain sizes, required with static memory. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">niproc</parametername>
</parameternamelist>
<parameterdescription>
<para>Processor counts, required with static memory. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">njproc</parametername>
</parameternamelist>
<parameterdescription>
<para>Processor counts, required with static memory. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">min_halo</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, this sets the minimum halo size for this domain in the i- and j- directions, and returns the actual halo size used. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">domain_name</parametername>
</parameternamelist>
<parameterdescription>
<para>A name for this domain, &quot;MOM&quot; if missing. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">include_name</parametername>
</parameternamelist>
<parameterdescription>
<para>A name for model&apos;s include file, &quot;MOM_memory.h&quot; if missing. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">param_suffix</parametername>
</parameternamelist>
<parameterdescription>
<para>A suffix to apply to layout-specific parameters. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1175" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1178" bodyend="1600"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespacemom__error__handler_1a1c462df7b61f1296407b4af51dfeceab" compoundref="MOM__error__handler_8F90" startline="53" endline="66">mom_error_handler::mom_mesg</references>
        <references refid="namespacemom__string__functions_1af18b819f6c6a917c57b9690d0580f642" compoundref="MOM__string__functions_8F90" startline="409" endline="419">mom_string_functions::slasher</references>
        <referencedby refid="namespacemom__oda__driver__mod_1aaaf67b8d0e0db3ba3dfe09e24d2b8b24" compoundref="MOM__oda__driver_8F90" startline="115" endline="303">mom_oda_driver_mod::init_oda</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a5491fcd88dc84d1a0daf6f5dff140174" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::clone_md_to_md</definition>
        <argsstring>(MD_in, MOM_dom, min_halo, halo_size, symmetric, domain_name, turns)</argsstring>
        <name>clone_md_to_md</name>
        <param>
          <type>MD_in</type>
          <defname>MD_in</defname>
        </param>
        <param>
          <type>MOM_dom</type>
          <defname>MOM_dom</defname>
        </param>
        <param>
          <type>min_halo</type>
          <defname>min_halo</defname>
        </param>
        <param>
          <type>halo_size</type>
          <defname>halo_size</defname>
        </param>
        <param>
          <type>symmetric</type>
          <defname>symmetric</defname>
        </param>
        <param>
          <type>domain_name</type>
          <defname>domain_name</defname>
        </param>
        <param>
          <type>turns</type>
          <defname>turns</defname>
        </param>
        <briefdescription>
<para>clone_MD_to_MD copies one MOM_domain_type into another, while allowing some properties of the new type to differ from the original one. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">md_in</parametername>
</parameternamelist>
<parameterdescription>
<para>An existing MOM_domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>mom_dom</parametername>
</parameternamelist>
<parameterdescription>
<para>A pointer to a MOM_domain that will be allocated if it is unassociated, and will have data copied from MD_in </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">min_halo</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, this sets the </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo_size</parametername>
</parameternamelist>
<parameterdescription>
<para>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. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">symmetric</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, this specifies whether the new domain is symmetric, regardless of whether the macro SYMMETRIC_MEMORY_ is defined. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">domain_name</parametername>
</parameternamelist>
<parameterdescription>
<para>A name for the new domain, &quot;MOM&quot; </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">turns</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of quarter turns </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1605" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1607" bodyend="1729"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a3f432e94ab08c826f07c64df5b0762f5" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_domains::clone_md_to_d2d</definition>
        <argsstring>(MD_in, mpp_domain, min_halo, halo_size, symmetric, domain_name, turns)</argsstring>
        <name>clone_md_to_d2d</name>
        <param>
          <type>MD_in</type>
          <defname>MD_in</defname>
        </param>
        <param>
          <type>mpp_domain</type>
          <defname>mpp_domain</defname>
        </param>
        <param>
          <type>min_halo</type>
          <defname>min_halo</defname>
        </param>
        <param>
          <type>halo_size</type>
          <defname>halo_size</defname>
        </param>
        <param>
          <type>symmetric</type>
          <defname>symmetric</defname>
        </param>
        <param>
          <type>domain_name</type>
          <defname>domain_name</defname>
        </param>
        <param>
          <type>turns</type>
          <defname>turns</defname>
        </param>
        <briefdescription>
<para>clone_MD_to_d2D uses information from a MOM_domain_type to create a new domain2d type, while allowing some properties of the new type to differ from the original one. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">md_in</parametername>
</parameternamelist>
<parameterdescription>
<para>An existing MOM_domain to be cloned </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">mpp_domain</parametername>
</parameternamelist>
<parameterdescription>
<para>The new mpp_domain to be set up </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">min_halo</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, this sets the </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">halo_size</parametername>
</parameternamelist>
<parameterdescription>
<para>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. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">symmetric</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, this specifies whether the new domain is symmetric, regardless of whether the macro SYMMETRIC_MEMORY_ is defined. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">domain_name</parametername>
</parameternamelist>
<parameterdescription>
<para>A name for the new domain, &quot;MOM&quot; </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">turns</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, swap X and Y axes </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1735" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1737" bodyend="1808"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a1f1063ac5a049926d4ad00b43752aee6" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::get_domain_extent</definition>
        <argsstring>(Domain, isc, iec, jsc, jec, isd, ied, jsd, jed, isg, ieg, jsg, jeg, idg_offset, jdg_offset, symmetric, local_indexing, index_offset)</argsstring>
        <name>get_domain_extent</name>
        <param>
          <type>Domain</type>
          <defname>Domain</defname>
        </param>
        <param>
          <type>isc</type>
          <defname>isc</defname>
        </param>
        <param>
          <type>iec</type>
          <defname>iec</defname>
        </param>
        <param>
          <type>jsc</type>
          <defname>jsc</defname>
        </param>
        <param>
          <type>jec</type>
          <defname>jec</defname>
        </param>
        <param>
          <type>isd</type>
          <defname>isd</defname>
        </param>
        <param>
          <type>ied</type>
          <defname>ied</defname>
        </param>
        <param>
          <type>jsd</type>
          <defname>jsd</defname>
        </param>
        <param>
          <type>jed</type>
          <defname>jed</defname>
        </param>
        <param>
          <type>isg</type>
          <defname>isg</defname>
        </param>
        <param>
          <type>ieg</type>
          <defname>ieg</defname>
        </param>
        <param>
          <type>jsg</type>
          <defname>jsg</defname>
        </param>
        <param>
          <type>jeg</type>
          <defname>jeg</defname>
        </param>
        <param>
          <type>idg_offset</type>
          <defname>idg_offset</defname>
        </param>
        <param>
          <type>jdg_offset</type>
          <defname>jdg_offset</defname>
        </param>
        <param>
          <type>symmetric</type>
          <defname>symmetric</defname>
        </param>
        <param>
          <type>local_indexing</type>
          <defname>local_indexing</defname>
        </param>
        <param>
          <type>index_offset</type>
          <defname>index_offset</defname>
        </param>
        <briefdescription>
<para>Returns various data that has been stored in a MOM_domain_type. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">domain</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM domain from which to extract information </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">isc</parametername>
</parameternamelist>
<parameterdescription>
<para>The start i-index of the computational domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">iec</parametername>
</parameternamelist>
<parameterdescription>
<para>The end i-index of the computational domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jsc</parametername>
</parameternamelist>
<parameterdescription>
<para>The start j-index of the computational domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jec</parametername>
</parameternamelist>
<parameterdescription>
<para>The end j-index of the computational domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">isd</parametername>
</parameternamelist>
<parameterdescription>
<para>The start i-index of the data domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ied</parametername>
</parameternamelist>
<parameterdescription>
<para>The end i-index of the data domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jsd</parametername>
</parameternamelist>
<parameterdescription>
<para>The start j-index of the data domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jed</parametername>
</parameternamelist>
<parameterdescription>
<para>The end j-index of the data domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">isg</parametername>
</parameternamelist>
<parameterdescription>
<para>The start i-index of the global domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ieg</parametername>
</parameternamelist>
<parameterdescription>
<para>The end i-index of the global domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jsg</parametername>
</parameternamelist>
<parameterdescription>
<para>The start j-index of the global domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jeg</parametername>
</parameternamelist>
<parameterdescription>
<para>The end j-index of the global domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">idg_offset</parametername>
</parameternamelist>
<parameterdescription>
<para>The offset between the corresponding global and data i-index spaces. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jdg_offset</parametername>
</parameternamelist>
<parameterdescription>
<para>The offset between the corresponding global and data j-index spaces. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">symmetric</parametername>
</parameternamelist>
<parameterdescription>
<para>True if symmetric memory is used. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">local_indexing</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, local tracer array indices start at 1, as in most MOM6 code. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">index_offset</parametername>
</parameternamelist>
<parameterdescription>
<para>A fixed additional offset to all indices. This can be useful for some types of debugging with dynamic memory allocation. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1812" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1815" bodyend="1867"/>
        <referencedby refid="namespacemom__hor__index_1a8e3912351dbf2be2659f3561de341f49" compoundref="MOM__hor__index_8F90" startline="64" endline="98">mom_hor_index::hor_index_init</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1a15fdef1c434c81da4d1f5ab3d9234290" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::get_domain_extent_dsamp2</definition>
        <argsstring>(Domain, isc_d2, iec_d2, jsc_d2, jec_d2, isd_d2, ied_d2, jsd_d2, jed_d2, isg_d2, ieg_d2, jsg_d2, jeg_d2)</argsstring>
        <name>get_domain_extent_dsamp2</name>
        <param>
          <type>Domain</type>
          <defname>Domain</defname>
        </param>
        <param>
          <type>isc_d2</type>
          <defname>isc_d2</defname>
        </param>
        <param>
          <type>iec_d2</type>
          <defname>iec_d2</defname>
        </param>
        <param>
          <type>jsc_d2</type>
          <defname>jsc_d2</defname>
        </param>
        <param>
          <type>jec_d2</type>
          <defname>jec_d2</defname>
        </param>
        <param>
          <type>isd_d2</type>
          <defname>isd_d2</defname>
        </param>
        <param>
          <type>ied_d2</type>
          <defname>ied_d2</defname>
        </param>
        <param>
          <type>jsd_d2</type>
          <defname>jsd_d2</defname>
        </param>
        <param>
          <type>jed_d2</type>
          <defname>jed_d2</defname>
        </param>
        <param>
          <type>isg_d2</type>
          <defname>isg_d2</defname>
        </param>
        <param>
          <type>ieg_d2</type>
          <defname>ieg_d2</defname>
        </param>
        <param>
          <type>jsg_d2</type>
          <defname>jsg_d2</defname>
        </param>
        <param>
          <type>jeg_d2</type>
          <defname>jeg_d2</defname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">domain</parametername>
</parameternamelist>
<parameterdescription>
<para>The MOM domain from which to extract information</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">isc_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The start i-index of the computational domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">iec_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The end i-index of the computational domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jsc_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The start j-index of the computational domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jec_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The end j-index of the computational domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">isd_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The start i-index of the data domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ied_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The end i-index of the data domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jsd_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The start j-index of the data domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jed_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The end j-index of the data domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">isg_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The start i-index of the global domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ieg_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The end i-index of the global domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jsg_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The start j-index of the global domain</para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">jeg_d2</parametername>
</parameternamelist>
<parameterdescription>
<para>The end j-index of the global domain </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1870" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1873" bodyend="1895"/>
        <referencedby refid="namespacemom__grid_1a1de9705f83b687ad9a711630a95fe52c" compoundref="MOM__grid_8F90" startline="184" endline="382">mom_grid::mom_grid_init</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1af34281b52f789238cc85cf2ff1d20d3b" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::get_simple_array_i_ind</definition>
        <argsstring>(domain, size, is, ie, symmetric)</argsstring>
        <name>get_simple_array_i_ind</name>
        <param>
          <type>domain</type>
          <defname>domain</defname>
        </param>
        <param>
          <type>size</type>
          <defname>size</defname>
        </param>
        <param>
          <type>is</type>
          <defname>is</defname>
        </param>
        <param>
          <type>ie</type>
          <defname>ie</defname>
        </param>
        <param>
          <type>symmetric</type>
          <defname>symmetric</defname>
        </param>
        <briefdescription>
<para>Return the (potentially symmetric) computational domain i-bounds for an array passed without index specifications (i.e. indices start at 1) based on an array size. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">domain</parametername>
</parameternamelist>
<parameterdescription>
<para>MOM domain from which to extract information </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">size</parametername>
</parameternamelist>
<parameterdescription>
<para>The i-array size </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">is</parametername>
</parameternamelist>
<parameterdescription>
<para>The computational domain starting i-index. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ie</parametername>
</parameternamelist>
<parameterdescription>
<para>The computational domain ending i-index. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">symmetric</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, indicates whether symmetric sizes can be considered. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1900" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1901" bodyend="1931"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <referencedby refid="namespacemom__io_1a4a26da14aed075eb784a5b82f2c6d978" compoundref="MOM__io_8F90" startline="870" endline="890">mom_io::mom_read_data_2d</referencedby>
        <referencedby refid="namespacemom__io_1ae4d85b211226c10f44328e1c544a6087" compoundref="MOM__io_8F90" startline="898" endline="918">mom_io::mom_read_data_3d</referencedby>
        <referencedby refid="namespacemom__io_1ae52771cd57953bb7e5f9d38ee9142fca" compoundref="MOM__io_8F90" startline="926" endline="946">mom_io::mom_read_data_4d</referencedby>
        <referencedby refid="namespacemom__io_1a5164130471f3bf80cc8657e17b5c08eb" compoundref="MOM__io_8F90" startline="955" endline="991">mom_io::mom_read_vector_2d</referencedby>
        <referencedby refid="namespacemom__io_1ac5eac11ba2b78f5d1146f4541d50abd5" compoundref="MOM__io_8F90" startline="1000" endline="1037">mom_io::mom_read_vector_3d</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1ae301b36598e7b9c3f3e087b75147d8d4" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::get_simple_array_j_ind</definition>
        <argsstring>(domain, size, js, je, symmetric)</argsstring>
        <name>get_simple_array_j_ind</name>
        <param>
          <type>domain</type>
          <defname>domain</defname>
        </param>
        <param>
          <type>size</type>
          <defname>size</defname>
        </param>
        <param>
          <type>js</type>
          <defname>js</defname>
        </param>
        <param>
          <type>je</type>
          <defname>je</defname>
        </param>
        <param>
          <type>symmetric</type>
          <defname>symmetric</defname>
        </param>
        <briefdescription>
<para>Return the (potentially symmetric) computational domain j-bounds for an array passed without index specifications (i.e. indices start at 1) based on an array size. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">domain</parametername>
</parameternamelist>
<parameterdescription>
<para>MOM domain from which to extract information </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">size</parametername>
</parameternamelist>
<parameterdescription>
<para>The j-array size </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">js</parametername>
</parameternamelist>
<parameterdescription>
<para>The computational domain starting j-index. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">je</parametername>
</parameternamelist>
<parameterdescription>
<para>The computational domain ending j-index. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">symmetric</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, indicates whether symmetric sizes can be considered. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1937" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1938" bodyend="1968"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <referencedby refid="namespacemom__io_1a4a26da14aed075eb784a5b82f2c6d978" compoundref="MOM__io_8F90" startline="870" endline="890">mom_io::mom_read_data_2d</referencedby>
        <referencedby refid="namespacemom__io_1ae4d85b211226c10f44328e1c544a6087" compoundref="MOM__io_8F90" startline="898" endline="918">mom_io::mom_read_data_3d</referencedby>
        <referencedby refid="namespacemom__io_1ae52771cd57953bb7e5f9d38ee9142fca" compoundref="MOM__io_8F90" startline="926" endline="946">mom_io::mom_read_data_4d</referencedby>
        <referencedby refid="namespacemom__io_1a5164130471f3bf80cc8657e17b5c08eb" compoundref="MOM__io_8F90" startline="955" endline="991">mom_io::mom_read_vector_2d</referencedby>
        <referencedby refid="namespacemom__io_1ac5eac11ba2b78f5d1146f4541d50abd5" compoundref="MOM__io_8F90" startline="1000" endline="1037">mom_io::mom_read_vector_3d</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__domains_1abc0b09896aa9f5b4c795f85c813aa59f" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_domains::get_global_shape</definition>
        <argsstring>(domain, niglobal, njglobal)</argsstring>
        <name>get_global_shape</name>
        <param>
          <type>domain</type>
          <defname>domain</defname>
        </param>
        <param>
          <type>niglobal</type>
          <defname>niglobal</defname>
        </param>
        <param>
          <type>njglobal</type>
          <defname>njglobal</defname>
        </param>
        <briefdescription>
<para>Returns the global shape of h-point arrays. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">domain</parametername>
</parameternamelist>
<parameterdescription>
<para>MOM domain </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">niglobal</parametername>
</parameternamelist>
<parameterdescription>
<para>i-index global size of h-point arrays </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">njglobal</parametername>
</parameternamelist>
<parameterdescription>
<para>j-index global size of h-point arrays </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="1972" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" bodystart="1973" bodyend="1979"/>
        <referencedby refid="namespacemom__grid_1a1cee4daea572d4efd1565b24ca652a2d" compoundref="MOM__grid_8F90" startline="517" endline="522">mom_grid::get_global_grid_size</referencedby>
        <referencedby refid="namespacemom__hor__index_1a8e3912351dbf2be2659f3561de341f49" compoundref="MOM__hor__index_8F90" startline="64" endline="98">mom_hor_index::hor_index_init</referencedby>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Describes the decomposed MOM domain and has routines for communications across PEs. </para>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_domains.F90" line="2" column="1"/>
  </compounddef>
</doxygen>
