<?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__horizontal__regridding" kind="namespace" language="Fortran">
    <compoundname>mom_horizontal_regridding</compoundname>
    <innerclass refid="interfacemom__horizontal__regridding_1_1fill__boundaries" prot="private">mom_horizontal_regridding::fill_boundaries</innerclass>
    <innerclass refid="interfacemom__horizontal__regridding_1_1horiz__interp__and__extrap__tracer" prot="private">mom_horizontal_regridding::horiz_interp_and_extrap_tracer</innerclass>
      <sectiondef kind="func">
      <memberdef kind="function" id="namespacemom__horizontal__regridding_1a2eefabc60ef9735714237dd2094963cd" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_horizontal_regridding::mystats</definition>
        <argsstring>(array, missing, is, ie, js, je, k, mesg)</argsstring>
        <name>mystats</name>
        <param>
          <type>array</type>
          <defname>array</defname>
        </param>
        <param>
          <type>missing</type>
          <defname>missing</defname>
        </param>
        <param>
          <type>is</type>
          <defname>is</defname>
        </param>
        <param>
          <type>ie</type>
          <defname>ie</defname>
        </param>
        <param>
          <type>js</type>
          <defname>js</defname>
        </param>
        <param>
          <type>je</type>
          <defname>je</defname>
        </param>
        <param>
          <type>k</type>
          <defname>k</defname>
        </param>
        <param>
          <type>mesg</type>
          <defname>mesg</defname>
        </param>
        <briefdescription>
<para>Write to the terminal some basic statistics about the k-th level of an array. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">array</parametername>
</parameternamelist>
<parameterdescription>
<para>input array (ND) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">missing</parametername>
</parameternamelist>
<parameterdescription>
<para>missing value (ND) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>is</parametername>
</parameternamelist>
<parameterdescription>
<para>Start index in i </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>ie</parametername>
</parameternamelist>
<parameterdescription>
<para>End index in i </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>js</parametername>
</parameternamelist>
<parameterdescription>
<para>Start index in j </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>je</parametername>
</parameternamelist>
<parameterdescription>
<para>End index in j </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>k</parametername>
</parameternamelist>
<parameterdescription>
<para>Level to calculate statistics for </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>mesg</parametername>
</parameternamelist>
<parameterdescription>
<para>Label to use in message </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="61" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" bodystart="62" bodyend="97"/>
        <referencedby refid="namespacemom__horizontal__regridding_1aabf2c2ac43a9bfd897cca10dcb97a3c4" compoundref="MOM__horizontal__regridding_8F90" startline="636" endline="923">horiz_interp_and_extrap_tracer_fms_id</referencedby>
        <referencedby refid="namespacemom__horizontal__regridding_1a1668fd9b402d78a7ececce78fa21696a" compoundref="MOM__horizontal__regridding_8F90" startline="277" endline="629">horiz_interp_and_extrap_tracer_record</referencedby>
        <referencedby refid="namespacemom__tracer__initialization__from__z_1ad1570db6534aa3b22bdc5dffef561458" compoundref="MOM__tracer__initialization__from__Z_8F90" startline="49" endline="203">mom_tracer_initialization_from_z::mom_initialize_tracer_from_z</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__horizontal__regridding_1aed390b9c00196debf5c2ab811c3a4203" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_horizontal_regridding::fill_miss_2d</definition>
        <argsstring>(aout, good, fill, prev, G, smooth, num_pass, relc, crit, debug, answers_2018)</argsstring>
        <name>fill_miss_2d</name>
        <param>
          <type>aout</type>
          <defname>aout</defname>
        </param>
        <param>
          <type>good</type>
          <defname>good</defname>
        </param>
        <param>
          <type>fill</type>
          <defname>fill</defname>
        </param>
        <param>
          <type>prev</type>
          <defname>prev</defname>
        </param>
        <param>
          <type>G</type>
          <defname>G</defname>
        </param>
        <param>
          <type>smooth</type>
          <defname>smooth</defname>
        </param>
        <param>
          <type>num_pass</type>
          <defname>num_pass</defname>
        </param>
        <param>
          <type>relc</type>
          <defname>relc</defname>
        </param>
        <param>
          <type>crit</type>
          <defname>crit</defname>
        </param>
        <param>
          <type>debug</type>
          <defname>debug</defname>
        </param>
        <param>
          <type>answers_2018</type>
          <defname>answers_2018</defname>
        </param>
        <briefdescription>
<para>Use ICE-9 algorithm to populate points (fill=1) with valid data (good=1). If no information is available, Then use a previous guess (prev). Optionally (smooth) blend the filled points to achieve a more desirable result. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s grid structure. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">aout</parametername>
</parameternamelist>
<parameterdescription>
<para>The array with missing values to fill </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">good</parametername>
</parameternamelist>
<parameterdescription>
<para>Valid data mask for incoming array </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">fill</parametername>
</parameternamelist>
<parameterdescription>
<para>Same shape array of points which need </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">prev</parametername>
</parameternamelist>
<parameterdescription>
<para>First guess where isolated holes exist. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">smooth</parametername>
</parameternamelist>
<parameterdescription>
<para>If present and true, apply a number of Laplacian iterations to the interpolated data </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">num_pass</parametername>
</parameternamelist>
<parameterdescription>
<para>The maximum number of iterations </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">relc</parametername>
</parameternamelist>
<parameterdescription>
<para>A relaxation coefficient for Laplacian (ND) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">crit</parametername>
</parameternamelist>
<parameterdescription>
<para>A minimal value for deltas between iterations. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">debug</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, write verbose debugging messages. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">answers_2018</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use expressions that give the same answers as the code did in late 2018. Otherwise add parentheses for rotational symmetry. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="104" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" bodystart="105" bodyend="270"/>
        <referencedby refid="namespacemom__horizontal__regridding_1aabf2c2ac43a9bfd897cca10dcb97a3c4" compoundref="MOM__horizontal__regridding_8F90" startline="636" endline="923">horiz_interp_and_extrap_tracer_fms_id</referencedby>
        <referencedby refid="namespacemom__horizontal__regridding_1a1668fd9b402d78a7ececce78fa21696a" compoundref="MOM__horizontal__regridding_8F90" startline="277" endline="629">horiz_interp_and_extrap_tracer_record</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__horizontal__regridding_1a1668fd9b402d78a7ececce78fa21696a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_horizontal_regridding::horiz_interp_and_extrap_tracer_record</definition>
        <argsstring>(filename, varnam, conversion, recnum, G, tr_z, mask_z, z_in, z_edges_in, missing_value, reentrant_x, tripolar_n, homogenize, m_to_Z, answers_2018, ongrid)</argsstring>
        <name>horiz_interp_and_extrap_tracer_record</name>
        <param>
          <type>filename</type>
          <defname>filename</defname>
        </param>
        <param>
          <type>varnam</type>
          <defname>varnam</defname>
        </param>
        <param>
          <type>conversion</type>
          <defname>conversion</defname>
        </param>
        <param>
          <type>recnum</type>
          <defname>recnum</defname>
        </param>
        <param>
          <type>G</type>
          <defname>G</defname>
        </param>
        <param>
          <type>tr_z</type>
          <defname>tr_z</defname>
        </param>
        <param>
          <type>mask_z</type>
          <defname>mask_z</defname>
        </param>
        <param>
          <type>z_in</type>
          <defname>z_in</defname>
        </param>
        <param>
          <type>z_edges_in</type>
          <defname>z_edges_in</defname>
        </param>
        <param>
          <type>missing_value</type>
          <defname>missing_value</defname>
        </param>
        <param>
          <type>reentrant_x</type>
          <defname>reentrant_x</defname>
        </param>
        <param>
          <type>tripolar_n</type>
          <defname>tripolar_n</defname>
        </param>
        <param>
          <type>homogenize</type>
          <defname>homogenize</defname>
        </param>
        <param>
          <type>m_to_Z</type>
          <defname>m_to_Z</defname>
        </param>
        <param>
          <type>answers_2018</type>
          <defname>answers_2018</defname>
        </param>
        <param>
          <type>ongrid</type>
          <defname>ongrid</defname>
        </param>
        <briefdescription>
<para>Extrapolate and interpolate from a file record. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">filename</parametername>
</parameternamelist>
<parameterdescription>
<para>Path to file containing tracer to be interpolated. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">varnam</parametername>
</parameternamelist>
<parameterdescription>
<para>Name of tracer in filee. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">conversion</parametername>
</parameternamelist>
<parameterdescription>
<para>Conversion factor for tracer. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">recnum</parametername>
</parameternamelist>
<parameterdescription>
<para>Record number of tracer to be read. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">g</parametername>
</parameternamelist>
<parameterdescription>
<para>Grid object </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>tr_z</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to allocatable tracer array on local model grid and input-file vertical levels. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>mask_z</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to allocatable tracer mask array on local model grid and input-file vertical levels. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>z_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Cell grid values for input data. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>z_edges_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Cell grid edge values for input data. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">missing_value</parametername>
</parameternamelist>
<parameterdescription>
<para>The missing value in the returned array. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">reentrant_x</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, this grid is reentrant in the x-direction </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">tripolar_n</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, this is a northern tripolar grid </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">homogenize</parametername>
</parameternamelist>
<parameterdescription>
<para>If present and true, horizontally homogenize data to produce perfectly &quot;flat&quot; initial conditions </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">m_to_z</parametername>
</parameternamelist>
<parameterdescription>
<para>A conversion factor from meters to the units of depth. If missing, GbathyT must be in m. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">answers_2018</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use expressions that give the same answers as the code did in late 2018. Otherwise add parentheses for rotational symmetry. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ongrid</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, then data are assumed to have been interpolated to the model horizontal grid. In this case, only extrapolation is performed by this routine </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="274" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" bodystart="277" bodyend="629"/>
        <references refid="namespacemom__horizontal__regridding_1aed390b9c00196debf5c2ab811c3a4203" compoundref="MOM__horizontal__regridding_8F90" startline="105" endline="270">fill_miss_2d</references>
        <references refid="namespacemom__horizontal__regridding_1a4612a182a8630f102a29e0cce1bd7a77" compoundref="MOM__horizontal__regridding_8F90" startline="928" endline="944">meshgrid</references>
        <references refid="namespacemom__horizontal__regridding_1a2eefabc60ef9735714237dd2094963cd" compoundref="MOM__horizontal__regridding_8F90" startline="62" endline="97">mystats</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__horizontal__regridding_1aabf2c2ac43a9bfd897cca10dcb97a3c4" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_horizontal_regridding::horiz_interp_and_extrap_tracer_fms_id</definition>
        <argsstring>(fms_id, Time, conversion, G, tr_z, mask_z, z_in, z_edges_in, missing_value, reentrant_x, tripolar_n, homogenize, spongeOngrid, m_to_Z, answers_2018)</argsstring>
        <name>horiz_interp_and_extrap_tracer_fms_id</name>
        <param>
          <type>fms_id</type>
          <defname>fms_id</defname>
        </param>
        <param>
          <type>Time</type>
          <defname>Time</defname>
        </param>
        <param>
          <type>conversion</type>
          <defname>conversion</defname>
        </param>
        <param>
          <type>G</type>
          <defname>G</defname>
        </param>
        <param>
          <type>tr_z</type>
          <defname>tr_z</defname>
        </param>
        <param>
          <type>mask_z</type>
          <defname>mask_z</defname>
        </param>
        <param>
          <type>z_in</type>
          <defname>z_in</defname>
        </param>
        <param>
          <type>z_edges_in</type>
          <defname>z_edges_in</defname>
        </param>
        <param>
          <type>missing_value</type>
          <defname>missing_value</defname>
        </param>
        <param>
          <type>reentrant_x</type>
          <defname>reentrant_x</defname>
        </param>
        <param>
          <type>tripolar_n</type>
          <defname>tripolar_n</defname>
        </param>
        <param>
          <type>homogenize</type>
          <defname>homogenize</defname>
        </param>
        <param>
          <type>spongeOngrid</type>
          <defname>spongeOngrid</defname>
        </param>
        <param>
          <type>m_to_Z</type>
          <defname>m_to_Z</defname>
        </param>
        <param>
          <type>answers_2018</type>
          <defname>answers_2018</defname>
        </param>
        <briefdescription>
<para>Extrapolate and interpolate using a FMS time interpolation handle. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">fms_id</parametername>
</parameternamelist>
<parameterdescription>
<para>A unique id used by the FMS time interpolator </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">time</parametername>
</parameternamelist>
<parameterdescription>
<para>A FMS time type </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">conversion</parametername>
</parameternamelist>
<parameterdescription>
<para>Conversion factor for tracer. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">g</parametername>
</parameternamelist>
<parameterdescription>
<para>Grid object </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>tr_z</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to allocatable tracer array on local model grid and native vertical levels. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>mask_z</parametername>
</parameternamelist>
<parameterdescription>
<para>pointer to allocatable tracer mask array on local model grid and native vertical levels. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>z_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Cell grid values for input data. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>z_edges_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Cell grid edge values for input data. (Intent out) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">missing_value</parametername>
</parameternamelist>
<parameterdescription>
<para>The missing value in the returned array. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">reentrant_x</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, this grid is reentrant in the x-direction </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">tripolar_n</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, this is a northern tripolar grid </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">homogenize</parametername>
</parameternamelist>
<parameterdescription>
<para>If present and true, horizontally homogenize data to produce perfectly &quot;flat&quot; initial conditions </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">spongeongrid</parametername>
</parameternamelist>
<parameterdescription>
<para>If present and true, the sponge data are on the model grid </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">m_to_z</parametername>
</parameternamelist>
<parameterdescription>
<para>A conversion factor from meters to the units of depth. If missing, GbathyT must be in m. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">answers_2018</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use expressions that give the same answers as the code did in late 2018. Otherwise add parentheses for rotational symmetry. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="633" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" bodystart="636" bodyend="923"/>
        <references refid="namespacemom__horizontal__regridding_1aed390b9c00196debf5c2ab811c3a4203" compoundref="MOM__horizontal__regridding_8F90" startline="105" endline="270">fill_miss_2d</references>
        <references refid="namespacemom__horizontal__regridding_1a4612a182a8630f102a29e0cce1bd7a77" compoundref="MOM__horizontal__regridding_8F90" startline="928" endline="944">meshgrid</references>
        <references refid="namespacemom__horizontal__regridding_1a2eefabc60ef9735714237dd2094963cd" compoundref="MOM__horizontal__regridding_8F90" startline="62" endline="97">mystats</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__horizontal__regridding_1a4612a182a8630f102a29e0cce1bd7a77" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_horizontal_regridding::meshgrid</definition>
        <argsstring>(x, y, x_T, y_T)</argsstring>
        <name>meshgrid</name>
        <param>
          <type>x</type>
          <defname>x</defname>
        </param>
        <param>
          <type>y</type>
          <defname>y</defname>
        </param>
        <param>
          <type>x_T</type>
          <defname>x_T</defname>
        </param>
        <param>
          <type>y_T</type>
          <defname>y_T</defname>
        </param>
        <briefdescription>
<para>Create a 2d-mesh of grid coordinates from 1-d arrays. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">x</parametername>
</parameternamelist>
<parameterdescription>
<para>input 1-dimensional vector </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">y</parametername>
</parameternamelist>
<parameterdescription>
<para>input 1-dimensional vector </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">x_t</parametername>
</parameternamelist>
<parameterdescription>
<para>output 2-dimensional array </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">y_t</parametername>
</parameternamelist>
<parameterdescription>
<para>output 2-dimensional array </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="927" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" bodystart="928" bodyend="944"/>
        <referencedby refid="namespacemom__horizontal__regridding_1aabf2c2ac43a9bfd897cca10dcb97a3c4" compoundref="MOM__horizontal__regridding_8F90" startline="636" endline="923">horiz_interp_and_extrap_tracer_fms_id</referencedby>
        <referencedby refid="namespacemom__horizontal__regridding_1a1668fd9b402d78a7ececce78fa21696a" compoundref="MOM__horizontal__regridding_8F90" startline="277" endline="629">horiz_interp_and_extrap_tracer_record</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__horizontal__regridding_1a97e2579ce7c653f73557eb51fd632757" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>integer function, dimension(0:size(m, 1)+1, 0:size(m, 2)+1)</type>
        <definition>integer function, dimension(0:size(m,1)+1,0:size(m,2)+1) mom_horizontal_regridding::fill_boundaries_int</definition>
        <argsstring>(m, cyclic_x, tripolar_n)</argsstring>
        <name>fill_boundaries_int</name>
        <param>
          <type>m</type>
          <defname>m</defname>
        </param>
        <param>
          <type>cyclic_x</type>
          <defname>cyclic_x</defname>
        </param>
        <param>
          <type>tripolar_n</type>
          <defname>tripolar_n</defname>
        </param>
        <briefdescription>
<para>Fill grid edges for integer data. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">m</parametername>
</parameternamelist>
<parameterdescription>
<para>input array (ND) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">cyclic_x</parametername>
</parameternamelist>
<parameterdescription>
<para>True if domain is zonally re-entrant </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">tripolar_n</parametername>
</parameternamelist>
<parameterdescription>
<para>True if domain has an Arctic fold </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="950" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" bodystart="951" bodyend="964"/>
        <references refid="namespacemom__horizontal__regridding_1ae5756b21f0db3264f0981e27ecb75b17" compoundref="MOM__horizontal__regridding_8F90" startline="969" endline="996">fill_boundaries_real</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__horizontal__regridding_1ae5756b21f0db3264f0981e27ecb75b17" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>real function, dimension(0:size(m, 1)+1, 0:size(m, 2)+1)</type>
        <definition>real function, dimension(0:size(m,1)+1,0:size(m,2)+1) mom_horizontal_regridding::fill_boundaries_real</definition>
        <argsstring>(m, cyclic_x, tripolar_n)</argsstring>
        <name>fill_boundaries_real</name>
        <param>
          <type>m</type>
          <defname>m</defname>
        </param>
        <param>
          <type>cyclic_x</type>
          <defname>cyclic_x</defname>
        </param>
        <param>
          <type>tripolar_n</type>
          <defname>tripolar_n</defname>
        </param>
        <briefdescription>
<para>Fill grid edges for real data. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">m</parametername>
</parameternamelist>
<parameterdescription>
<para>input array (ND) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">cyclic_x</parametername>
</parameternamelist>
<parameterdescription>
<para>True if domain is zonally re-entrant </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">tripolar_n</parametername>
</parameternamelist>
<parameterdescription>
<para>True if domain has an Arctic fold </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="968" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" bodystart="969" bodyend="996"/>
        <referencedby refid="namespacemom__horizontal__regridding_1a97e2579ce7c653f73557eb51fd632757" compoundref="MOM__horizontal__regridding_8F90" startline="951" endline="964">fill_boundaries_int</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__horizontal__regridding_1a333ea43962d49ea6730eeb7bff8923f6" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_horizontal_regridding::smooth_heights</definition>
        <argsstring>(zi, fill, bad, sor, niter, cyclic_x, tripolar_n)</argsstring>
        <name>smooth_heights</name>
        <param>
          <type>zi</type>
          <defname>zi</defname>
        </param>
        <param>
          <type>fill</type>
          <defname>fill</defname>
        </param>
        <param>
          <type>bad</type>
          <defname>bad</defname>
        </param>
        <param>
          <type>sor</type>
          <defname>sor</defname>
        </param>
        <param>
          <type>niter</type>
          <defname>niter</defname>
        </param>
        <param>
          <type>cyclic_x</type>
          <defname>cyclic_x</defname>
        </param>
        <param>
          <type>tripolar_n</type>
          <defname>tripolar_n</defname>
        </param>
        <briefdescription>
<para>Solve del2 (zi) = 0 using successive iterations with a 5 point stencil. Only points fill==1 are modified. Except where bad==1, information propagates isotropically in index space. The resulting solution in each region is an approximation to del2(zi)=0 subject to boundary conditions along the valid points curve bounding this region. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">zi</parametername>
</parameternamelist>
<parameterdescription>
<para>input and output array (ND) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">fill</parametername>
</parameternamelist>
<parameterdescription>
<para>same shape as zi, 1=fill </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">bad</parametername>
</parameternamelist>
<parameterdescription>
<para>same shape as zi, 1=bad data </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">sor</parametername>
</parameternamelist>
<parameterdescription>
<para>relaxation coefficient (ND) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">niter</parametername>
</parameternamelist>
<parameterdescription>
<para>maximum number of iterations </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">cyclic_x</parametername>
</parameternamelist>
<parameterdescription>
<para>true if domain is zonally reentrant </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">tripolar_n</parametername>
</parameternamelist>
<parameterdescription>
<para>true if domain has an Arctic fold </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="1005" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" bodystart="1006" bodyend="1062"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Horizontal interpolation. </para>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_horizontal_regridding.F90" line="2" column="1"/>
  </compounddef>
</doxygen>
