<?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.14">
  <compounddef id="namespaceregrid__interp" kind="namespace" language="Fortran">
    <compoundname>regrid_interp</compoundname>
    <innerclass refid="structregrid__interp_1_1interp__cs__type" prot="public">regrid_interp::interp_cs_type</innerclass>
      <sectiondef kind="user-defined">
      <memberdef kind="variable" id="namespaceregrid__interp_1a3ef8c1375e14fdf87fcd6997f54808eb" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::degree_1</definition>
        <argsstring></argsstring>
        <name>degree_1</name>
        <initializer>= 1</initializer>
        <briefdescription>
<para>Interpolant degrees. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="55" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="55" bodyend="55"/>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1ae60a96eeb669ff4dfa45f8518742a454" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::degree_2</definition>
        <argsstring></argsstring>
        <name>degree_2</name>
        <initializer>= 2</initializer>
        <briefdescription>
<para>Interpolant degrees. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="55" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="55" bodyend="-1"/>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1a3c0fdeca3856901e56168587dfa1ae9f" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::degree_3</definition>
        <argsstring></argsstring>
        <name>degree_3</name>
        <initializer>= 3</initializer>
        <briefdescription>
<para>Interpolant degrees. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="55" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="55" bodyend="-1"/>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1af4b7a5ee9f8833f1defeb74cf10ae79d" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::degree_4</definition>
        <argsstring></argsstring>
        <name>degree_4</name>
        <initializer>= 4</initializer>
        <briefdescription>
<para>Interpolant degrees. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="55" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="55" bodyend="-1"/>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1af4013d842f389abc724a0d2f34366eda" prot="public" static="no" mutable="no">
        <type>integer, parameter, public</type>
        <definition>integer, parameter, public regrid_interp::degree_max</definition>
        <argsstring></argsstring>
        <name>degree_max</name>
        <initializer>= 5</initializer>
        <briefdescription>
<para>Interpolant degrees. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="56" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="56" bodyend="56"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="var">
      <memberdef kind="variable" id="namespaceregrid__interp_1a0ec76d7fa1b5308e54bc44a25dca551c" prot="public" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_p1m_h2</definition>
        <argsstring></argsstring>
        <name>interpolation_p1m_h2</name>
        <initializer>= 0</initializer>
        <briefdescription>
<para>O(h^2) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="43" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="43" bodyend="43"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1a490ec10b45d4eb0055fd09d5bc787570" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_p1m_h4</definition>
        <argsstring></argsstring>
        <name>interpolation_p1m_h4</name>
        <initializer>= 1</initializer>
        <briefdescription>
<para>O(h^2) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="44" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="44" bodyend="44"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1ad0e6beb11f02b409e4c203c4847a949e" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_p1m_ih4</definition>
        <argsstring></argsstring>
        <name>interpolation_p1m_ih4</name>
        <initializer>= 2</initializer>
        <briefdescription>
<para>O(h^2) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="45" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="45" bodyend="45"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1a5854f2a813d5b963987d298ca770a7e7" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_plm</definition>
        <argsstring></argsstring>
        <name>interpolation_plm</name>
        <initializer>= 3</initializer>
        <briefdescription>
<para>O(h^2) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="46" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="46" bodyend="46"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1a06cc3d7cc7ce4321646cc5599a83544d" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_ppm_h4</definition>
        <argsstring></argsstring>
        <name>interpolation_ppm_h4</name>
        <initializer>= 4</initializer>
        <briefdescription>
<para>O(h^3) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="47" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="47" bodyend="47"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1a35916399421e799d1ad987663817350e" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_ppm_ih4</definition>
        <argsstring></argsstring>
        <name>interpolation_ppm_ih4</name>
        <initializer>= 5</initializer>
        <briefdescription>
<para>O(h^3) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="48" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="48" bodyend="48"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1a201c2e2dd8cc9581406f2e1066caa50b" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_p3m_ih4ih3</definition>
        <argsstring></argsstring>
        <name>interpolation_p3m_ih4ih3</name>
        <initializer>= 6</initializer>
        <briefdescription>
<para>O(h^4) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="49" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="49" bodyend="49"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1ae72fa5caf83881dda1ec2c4130bcb261" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_p3m_ih6ih5</definition>
        <argsstring></argsstring>
        <name>interpolation_p3m_ih6ih5</name>
        <initializer>= 7</initializer>
        <briefdescription>
<para>O(h^4) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="50" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="50" bodyend="50"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1a18c34dfd8e5582e94c76fa0dee5c8390" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_pqm_ih4ih3</definition>
        <argsstring></argsstring>
        <name>interpolation_pqm_ih4ih3</name>
        <initializer>= 8</initializer>
        <briefdescription>
<para>O(h^4) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="51" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="51" bodyend="51"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1acd2d0f29f9e3383c6f97969c028a46cc" prot="private" static="no" mutable="no">
        <type>integer, parameter</type>
        <definition>integer, parameter regrid_interp::interpolation_pqm_ih6ih5</definition>
        <argsstring></argsstring>
        <name>interpolation_pqm_ih6ih5</name>
        <initializer>= 9</initializer>
        <briefdescription>
<para>O(h^5) </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="52" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="52" bodyend="52"/>
        <referencedby refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</referencedby>
        <referencedby refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1ab5894f4be17b065c3939294014200a32" prot="public" static="no" mutable="no">
        <type>real, parameter, public</type>
        <definition>real, parameter, public regrid_interp::nr_offset</definition>
        <argsstring></argsstring>
        <name>nr_offset</name>
        <initializer>= 1e-6</initializer>
        <briefdescription>
<para>When the N-R algorithm produces an estimate that lies outside [0,1], the estimate is set to be equal to the boundary location, 0 or 1, plus or minus an offset, respectively, when the derivative is zero at the boundary [nondim]. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="62" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="62" bodyend="62"/>
        <referencedby refid="namespaceregrid__interp_1a30dfad0833745d069498db25c1538238" compoundref="regrid__interp_8F90" startline="354" endline="483">get_polynomial_coordinate</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1a6543421d37edc724a8a7928ccf54a21c" prot="public" static="no" mutable="no">
        <type>integer, parameter, public</type>
        <definition>integer, parameter, public regrid_interp::nr_iterations</definition>
        <argsstring></argsstring>
        <name>nr_iterations</name>
        <initializer>= 8</initializer>
        <briefdescription>
<para>Maximum number of Newton-Raphson iterations. Newton-Raphson iterations are used to build the new grid by finding the coordinates associated with target densities and interpolations of degree larger than 1. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="66" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="66" bodyend="66"/>
        <referencedby refid="namespaceregrid__interp_1a30dfad0833745d069498db25c1538238" compoundref="regrid__interp_8F90" startline="354" endline="483">get_polynomial_coordinate</referencedby>
        <referencedby refid="namespacecoord__slight_1a20af96022abf0d0f4ecb17dde027b2d1" compoundref="coord__slight_8F90" startline="489" endline="732">coord_slight::rho_interfaces_col</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespaceregrid__interp_1aa85701b7a23c13c6ac8b19916b13bb3e" prot="public" static="no" mutable="no">
        <type>real, parameter, public</type>
        <definition>real, parameter, public regrid_interp::nr_tolerance</definition>
        <argsstring></argsstring>
        <name>nr_tolerance</name>
        <initializer>= 1e-12</initializer>
        <briefdescription>
<para>Tolerance for Newton-Raphson iterations (stop when increment falls below this) [nondim]. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="68" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="68" bodyend="68"/>
        <referencedby refid="namespaceregrid__interp_1a30dfad0833745d069498db25c1538238" compoundref="regrid__interp_8F90" startline="354" endline="483">get_polynomial_coordinate</referencedby>
        <referencedby refid="namespacecoord__slight_1a20af96022abf0d0f4ecb17dde027b2d1" compoundref="coord__slight_8F90" startline="489" endline="732">coord_slight::rho_interfaces_col</referencedby>
      </memberdef>
      </sectiondef>
      <sectiondef kind="func">
      <memberdef kind="function" id="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public regrid_interp::regridding_set_ppolys</definition>
        <argsstring>(CS, densities, n0, h0, ppoly0_E, ppoly0_S, ppoly0_coefs, degree, h_neglect, h_neglect_edge)</argsstring>
        <name>regridding_set_ppolys</name>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>densities</type>
          <defname>densities</defname>
        </param>
        <param>
          <type>n0</type>
          <defname>n0</defname>
        </param>
        <param>
          <type>h0</type>
          <defname>h0</defname>
        </param>
        <param>
          <type>ppoly0_E</type>
          <defname>ppoly0_E</defname>
        </param>
        <param>
          <type>ppoly0_S</type>
          <defname>ppoly0_S</defname>
        </param>
        <param>
          <type>ppoly0_coefs</type>
          <defname>ppoly0_coefs</defname>
        </param>
        <param>
          <type>degree</type>
          <defname>degree</defname>
        </param>
        <param>
          <type>h_neglect</type>
          <defname>h_neglect</defname>
        </param>
        <param>
          <type>h_neglect_edge</type>
          <defname>h_neglect_edge</defname>
        </param>
        <briefdescription>
<para>Builds an interpolated profile for the densities within each grid cell. </para>        </briefdescription>
        <detaileddescription>
<para>It may happen that, given a high-order interpolator, the number of available layers is insufficient (e.g., there are two available layers for a third-order PPM ih4 scheme). In these cases, we resort to the simplest continuous linear scheme (P1M h2).</para><para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Interpolation control structure</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">n0</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of cells on source grid</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">densities</parametername>
</parameternamelist>
<parameterdescription>
<para>Actual cell densities [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h0</parametername>
</parameternamelist>
<parameterdescription>
<para>cell widths on source grid [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">ppoly0_e</parametername>
</parameternamelist>
<parameterdescription>
<para>Edge value of polynomial [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">ppoly0_s</parametername>
</parameternamelist>
<parameterdescription>
<para>Edge slope of polynomial [A H-1]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">ppoly0_coefs</parametername>
</parameternamelist>
<parameterdescription>
<para>Coefficients of polynomial [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">degree</parametername>
</parameternamelist>
<parameterdescription>
<para>The degree of the polynomials</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h_neglect</parametername>
</parameternamelist>
<parameterdescription>
<para>A negligibly small width for the purpose of cell reconstructions [H] in the same units as h0.</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h_neglect_edge</parametername>
</parameternamelist>
<parameterdescription>
<para>A negligibly small width for the purpose of edge value calculations [H] in the same units as h0. </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="78" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="80" bodyend="262"/>
        <references refid="namespaceregrid__interp_1a3ef8c1375e14fdf87fcd6997f54808eb" compoundref="regrid__interp_8F90" startline="55" endline="55">degree_1</references>
        <references refid="namespaceregrid__interp_1ae60a96eeb669ff4dfa45f8518742a454" compoundref="regrid__interp_8F90" startline="55">degree_2</references>
        <references refid="namespaceregrid__interp_1a3c0fdeca3856901e56168587dfa1ae9f" compoundref="regrid__interp_8F90" startline="55">degree_3</references>
        <references refid="namespaceregrid__interp_1af4b7a5ee9f8833f1defeb74cf10ae79d" compoundref="regrid__interp_8F90" startline="55">degree_4</references>
        <references refid="namespaceregrid__edge__values_1ac33bba0097d34e462abda17e78847862" compoundref="regrid__edge__values_8F90" startline="697" endline="860">regrid_edge_values::edge_slopes_implicit_h3</references>
        <references refid="namespaceregrid__edge__values_1a7c3fb27d99df9e3594ff32d1d03e1b34" compoundref="regrid__edge__values_8F90" startline="867" endline="1097">regrid_edge_values::edge_slopes_implicit_h5</references>
        <references refid="namespaceregrid__interp_1a0ec76d7fa1b5308e54bc44a25dca551c" compoundref="regrid__interp_8F90" startline="43" endline="43">interpolation_p1m_h2</references>
        <references refid="namespaceregrid__interp_1a490ec10b45d4eb0055fd09d5bc787570" compoundref="regrid__interp_8F90" startline="44" endline="44">interpolation_p1m_h4</references>
        <references refid="namespaceregrid__interp_1ad0e6beb11f02b409e4c203c4847a949e" compoundref="regrid__interp_8F90" startline="45" endline="45">interpolation_p1m_ih4</references>
        <references refid="namespaceregrid__interp_1a201c2e2dd8cc9581406f2e1066caa50b" compoundref="regrid__interp_8F90" startline="49" endline="49">interpolation_p3m_ih4ih3</references>
        <references refid="namespaceregrid__interp_1ae72fa5caf83881dda1ec2c4130bcb261" compoundref="regrid__interp_8F90" startline="50" endline="50">interpolation_p3m_ih6ih5</references>
        <references refid="namespaceregrid__interp_1a5854f2a813d5b963987d298ca770a7e7" compoundref="regrid__interp_8F90" startline="46" endline="46">interpolation_plm</references>
        <references refid="namespaceregrid__interp_1a06cc3d7cc7ce4321646cc5599a83544d" compoundref="regrid__interp_8F90" startline="47" endline="47">interpolation_ppm_h4</references>
        <references refid="namespaceregrid__interp_1a35916399421e799d1ad987663817350e" compoundref="regrid__interp_8F90" startline="48" endline="48">interpolation_ppm_ih4</references>
        <references refid="namespaceregrid__interp_1a18c34dfd8e5582e94c76fa0dee5c8390" compoundref="regrid__interp_8F90" startline="51" endline="51">interpolation_pqm_ih4ih3</references>
        <references refid="namespaceregrid__interp_1acd2d0f29f9e3383c6f97969c028a46cc" compoundref="regrid__interp_8F90" startline="52" endline="52">interpolation_pqm_ih6ih5</references>
        <references refid="namespacep1m__functions_1a1a45cb8f3f794172d2a19b53e10416c6" compoundref="P1M__functions_8F90" startline="69" endline="142">p1m_functions::p1m_boundary_extrapolation</references>
        <references refid="namespacep1m__functions_1a233a7aff25cf6581421f76bba053d758" compoundref="P1M__functions_8F90" startline="28" endline="58">p1m_functions::p1m_interpolation</references>
        <references refid="namespacep3m__functions_1ab70eb9e69fc6586e1d6a371d2eeb44d1" compoundref="P3M__functions_8F90" startline="193" endline="333">p3m_functions::p3m_boundary_extrapolation</references>
        <references refid="namespacep3m__functions_1a685d3ef292536dae810b2059ccaa5819" compoundref="P3M__functions_8F90" startline="29" endline="45">p3m_functions::p3m_interpolation</references>
        <references refid="namespaceplm__functions_1a85e83fd8ad314548d861d5048dad8f72" compoundref="PLM__functions_8F90" startline="269" endline="302">plm_functions::plm_boundary_extrapolation</references>
        <references refid="namespaceplm__functions_1a0e3a6bedfb3064ed8fae8c8449649054" compoundref="PLM__functions_8F90" startline="187" endline="255">plm_functions::plm_reconstruction</references>
        <references refid="namespaceppm__functions_1ac8f382eb9d1f0df80aab9e07eb2ceebe" compoundref="PPM__functions_8F90" startline="134" endline="284">ppm_functions::ppm_boundary_extrapolation</references>
        <references refid="namespaceppm__functions_1a5c4e47be75ad413904902582b3d0d4a4" compoundref="PPM__functions_8F90" startline="29" endline="56">ppm_functions::ppm_reconstruction</references>
        <references refid="namespacepqm__functions_1a1e0e86d8470dd334b9cd676f511f6720" compoundref="PQM__functions_8F90" startline="502" endline="828">pqm_functions::pqm_boundary_extrapolation_v1</references>
        <references refid="namespacepqm__functions_1afa6f7b5430011f03c428b329c5f42fae" compoundref="PQM__functions_8F90" startline="21" endline="66">pqm_functions::pqm_reconstruction</references>
        <referencedby refid="namespaceregrid__interp_1abaef8cc7e1258b61710adbd6fb742122" compoundref="regrid__interp_8F90" startline="309" endline="333">build_and_interpolate_grid</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespaceregrid__interp_1a52b8ce5b52f9d45f8180c6fd75388174" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public regrid_interp::interpolate_grid</definition>
        <argsstring>(n0, h0, x0, ppoly0_E, ppoly0_coefs, target_values, degree, n1, h1, x1, answers_2018)</argsstring>
        <name>interpolate_grid</name>
        <param>
          <type>n0</type>
          <defname>n0</defname>
        </param>
        <param>
          <type>h0</type>
          <defname>h0</defname>
        </param>
        <param>
          <type>x0</type>
          <defname>x0</defname>
        </param>
        <param>
          <type>ppoly0_E</type>
          <defname>ppoly0_E</defname>
        </param>
        <param>
          <type>ppoly0_coefs</type>
          <defname>ppoly0_coefs</defname>
        </param>
        <param>
          <type>target_values</type>
          <defname>target_values</defname>
        </param>
        <param>
          <type>degree</type>
          <defname>degree</defname>
        </param>
        <param>
          <type>n1</type>
          <defname>n1</defname>
        </param>
        <param>
          <type>h1</type>
          <defname>h1</defname>
        </param>
        <param>
          <type>x1</type>
          <defname>x1</defname>
        </param>
        <param>
          <type>answers_2018</type>
          <defname>answers_2018</defname>
        </param>
        <briefdescription>
<para>Given target values (e.g., density), build new grid based on polynomial. </para>        </briefdescription>
        <detaileddescription>
<para>Given the grid &apos;grid0&apos; and the piecewise polynomial interpolant &apos;ppoly0&apos; (possibly discontinuous), the coordinates of the new grid &apos;grid1&apos; are determined by finding the corresponding target interface densities.</para><para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">n0</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of points on source grid</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">n1</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of points on target grid</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h0</parametername>
</parameternamelist>
<parameterdescription>
<para>Thicknesses of source grid cells [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">x0</parametername>
</parameternamelist>
<parameterdescription>
<para>Source interface positions [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ppoly0_e</parametername>
</parameternamelist>
<parameterdescription>
<para>Edge values of interpolating polynomials [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ppoly0_coefs</parametername>
</parameternamelist>
<parameterdescription>
<para>Coefficients of interpolating polynomials [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">target_values</parametername>
</parameternamelist>
<parameterdescription>
<para>Target values of interfaces [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">degree</parametername>
</parameternamelist>
<parameterdescription>
<para>Degree of interpolating polynomials</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">h1</parametername>
</parameternamelist>
<parameterdescription>
<para>Thicknesses of target grid cells [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">x1</parametername>
</parameternamelist>
<parameterdescription>
<para>Target interface positions [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">answers_2018</parametername>
</parameternamelist>
<parameterdescription>
<para>If true use older, less acccurate expressions. </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="270" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="272" bodyend="303"/>
        <references refid="namespaceregrid__interp_1a30dfad0833745d069498db25c1538238" compoundref="regrid__interp_8F90" startline="354" endline="483">get_polynomial_coordinate</references>
        <referencedby refid="namespaceregrid__interp_1abaef8cc7e1258b61710adbd6fb742122" compoundref="regrid__interp_8F90" startline="309" endline="333">build_and_interpolate_grid</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespaceregrid__interp_1abaef8cc7e1258b61710adbd6fb742122" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public regrid_interp::build_and_interpolate_grid</definition>
        <argsstring>(CS, densities, n0, h0, x0, target_values, n1, h1, x1, h_neglect, h_neglect_edge)</argsstring>
        <name>build_and_interpolate_grid</name>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>densities</type>
          <defname>densities</defname>
        </param>
        <param>
          <type>n0</type>
          <defname>n0</defname>
        </param>
        <param>
          <type>h0</type>
          <defname>h0</defname>
        </param>
        <param>
          <type>x0</type>
          <defname>x0</defname>
        </param>
        <param>
          <type>target_values</type>
          <defname>target_values</defname>
        </param>
        <param>
          <type>n1</type>
          <defname>n1</defname>
        </param>
        <param>
          <type>h1</type>
          <defname>h1</defname>
        </param>
        <param>
          <type>x1</type>
          <defname>x1</defname>
        </param>
        <param>
          <type>h_neglect</type>
          <defname>h_neglect</defname>
        </param>
        <param>
          <type>h_neglect_edge</type>
          <defname>h_neglect_edge</defname>
        </param>
        <briefdescription>
<para>Build a grid by interpolating for target values. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">cs</parametername>
</parameternamelist>
<parameterdescription>
<para>A control structure for <ref refid="namespaceregrid__interp" kindref="compound">regrid_interp</ref></para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">n0</parametername>
</parameternamelist>
<parameterdescription>
<para>The number of points on the input grid</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">n1</parametername>
</parameternamelist>
<parameterdescription>
<para>The number of points on the output grid</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">densities</parametername>
</parameternamelist>
<parameterdescription>
<para>Input cell densities [R ~&gt; kg m-3]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">target_values</parametername>
</parameternamelist>
<parameterdescription>
<para>Target values of interfaces [R ~&gt; kg m-3]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h0</parametername>
</parameternamelist>
<parameterdescription>
<para>Initial cell widths [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">x0</parametername>
</parameternamelist>
<parameterdescription>
<para>Source interface positions [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">h1</parametername>
</parameternamelist>
<parameterdescription>
<para>Output cell widths [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">x1</parametername>
</parameternamelist>
<parameterdescription>
<para>Target interface positions [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h_neglect</parametername>
</parameternamelist>
<parameterdescription>
<para>A negligibly small width for the purpose of cell reconstructions [H] in the same units as h0.</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h_neglect_edge</parametername>
</parameternamelist>
<parameterdescription>
<para>A negligibly small width for the purpose of edge value calculations [H] in the same units as h0. </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="307" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="309" bodyend="333"/>
        <references refid="namespaceregrid__interp_1a52b8ce5b52f9d45f8180c6fd75388174" compoundref="regrid__interp_8F90" startline="272" endline="303">interpolate_grid</references>
        <references refid="namespaceregrid__interp_1a3d1406836d089b4553421776277e1339" compoundref="regrid__interp_8F90" startline="80" endline="262">regridding_set_ppolys</references>
        <referencedby refid="namespacecoord__hycom_1aec801ef9df8a887e77b7c1ecf459bd5a" compoundref="coord__hycom_8F90" startline="100" endline="165">coord_hycom::build_hycom1_column</referencedby>
        <referencedby refid="namespacecoord__rho_1ac3f19bfa0e6b622cdf045c348ec4d183" compoundref="coord__rho_8F90" startline="92" endline="169">coord_rho::build_rho_column</referencedby>
        <referencedby refid="namespacecoord__rho_1ad79c2a471c8de0b16f0478813be7c29f" compoundref="coord__rho_8F90" startline="188" endline="308">coord_rho::build_rho_column_iteratively</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespaceregrid__interp_1a30dfad0833745d069498db25c1538238" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>real function</type>
        <definition>real function regrid_interp::get_polynomial_coordinate</definition>
        <argsstring>(N, h, x_g, edge_values, ppoly_coefs, target_value, degree, answers_2018)</argsstring>
        <name>get_polynomial_coordinate</name>
        <param>
          <type>N</type>
          <defname>N</defname>
        </param>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>x_g</type>
          <defname>x_g</defname>
        </param>
        <param>
          <type>edge_values</type>
          <defname>edge_values</defname>
        </param>
        <param>
          <type>ppoly_coefs</type>
          <defname>ppoly_coefs</defname>
        </param>
        <param>
          <type>target_value</type>
          <defname>target_value</defname>
        </param>
        <param>
          <type>degree</type>
          <defname>degree</defname>
        </param>
        <param>
          <type>answers_2018</type>
          <defname>answers_2018</defname>
        </param>
        <briefdescription>
<para>Given a target value, find corresponding coordinate for given polynomial. </para>        </briefdescription>
        <detaileddescription>
<para>Here, &apos;ppoly&apos; is assumed to be a piecewise discontinuous polynomial of degree &apos;degree&apos; throughout the domain defined by &apos;grid&apos;. A target value is given and we need to determine the corresponding grid coordinate to define the new grid.</para><para>If the target value is out of range, the grid coordinate is simply set to be equal to one of the boundary coordinates, which results in vanished layers near the boundaries.</para><para>IT IS ASSUMED THAT THE PIECEWISE POLYNOMIAL IS MONOTONICALLY INCREASING. IF THIS IS NOT THE CASE, THE NEW GRID MAY BE ILL-DEFINED.</para><para>It is assumed that the number of cells defining &apos;grid&apos; and &apos;ppoly&apos; are the same.</para><para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">n</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of grid cells</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Grid cell thicknesses [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">x_g</parametername>
</parameternamelist>
<parameterdescription>
<para>Grid interface locations [H]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">edge_values</parametername>
</parameternamelist>
<parameterdescription>
<para>Edge values of interpolating polynomials [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ppoly_coefs</parametername>
</parameternamelist>
<parameterdescription>
<para>Coefficients of interpolating polynomials [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">target_value</parametername>
</parameternamelist>
<parameterdescription>
<para>Target value to find position for [A]</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">degree</parametername>
</parameternamelist>
<parameterdescription>
<para>Degree of the interpolating polynomials</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">answers_2018</parametername>
</parameternamelist>
<parameterdescription>
<para>If true use older, less acccurate expressions.</para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The position of x_g at which target_value is found [H] </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="352" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="354" bodyend="483"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespaceregrid__interp_1a6543421d37edc724a8a7928ccf54a21c" compoundref="regrid__interp_8F90" startline="66" endline="66">nr_iterations</references>
        <references refid="namespaceregrid__interp_1ab5894f4be17b065c3939294014200a32" compoundref="regrid__interp_8F90" startline="62" endline="62">nr_offset</references>
        <references refid="namespaceregrid__interp_1aa85701b7a23c13c6ac8b19916b13bb3e" compoundref="regrid__interp_8F90" startline="68" endline="68">nr_tolerance</references>
        <referencedby refid="namespaceregrid__interp_1a52b8ce5b52f9d45f8180c6fd75388174" compoundref="regrid__interp_8F90" startline="272" endline="303">interpolate_grid</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>integer function</type>
        <definition>integer function regrid_interp::interpolation_scheme</definition>
        <argsstring>(interp_scheme)</argsstring>
        <name>interpolation_scheme</name>
        <param>
          <type>interp_scheme</type>
          <defname>interp_scheme</defname>
        </param>
        <briefdescription>
<para>Numeric value of interpolation_scheme corresponding to scheme name. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">interp_scheme</parametername>
</parameternamelist>
<parameterdescription>
<para>Name of the interpolation scheme Valid values include &quot;P1M_H2&quot;, &quot;P1M_H4&quot;, &quot;P1M_IH2&quot;, &quot;PLM&quot;, &quot;PPM_H4&quot;, &quot;PPM_IH4&quot;, &quot;P3M_IH4IH3&quot;, &quot;P3M_IH6IH5&quot;, &quot;PQM_IH4IH3&quot;, and &quot;PQM_IH6IH5&quot; </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="487" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="488" bodyend="505"/>
        <references refid="namespaceregrid__interp_1a0ec76d7fa1b5308e54bc44a25dca551c" compoundref="regrid__interp_8F90" startline="43" endline="43">interpolation_p1m_h2</references>
        <references refid="namespaceregrid__interp_1a490ec10b45d4eb0055fd09d5bc787570" compoundref="regrid__interp_8F90" startline="44" endline="44">interpolation_p1m_h4</references>
        <references refid="namespaceregrid__interp_1ad0e6beb11f02b409e4c203c4847a949e" compoundref="regrid__interp_8F90" startline="45" endline="45">interpolation_p1m_ih4</references>
        <references refid="namespaceregrid__interp_1a201c2e2dd8cc9581406f2e1066caa50b" compoundref="regrid__interp_8F90" startline="49" endline="49">interpolation_p3m_ih4ih3</references>
        <references refid="namespaceregrid__interp_1ae72fa5caf83881dda1ec2c4130bcb261" compoundref="regrid__interp_8F90" startline="50" endline="50">interpolation_p3m_ih6ih5</references>
        <references refid="namespaceregrid__interp_1a5854f2a813d5b963987d298ca770a7e7" compoundref="regrid__interp_8F90" startline="46" endline="46">interpolation_plm</references>
        <references refid="namespaceregrid__interp_1a06cc3d7cc7ce4321646cc5599a83544d" compoundref="regrid__interp_8F90" startline="47" endline="47">interpolation_ppm_h4</references>
        <references refid="namespaceregrid__interp_1a35916399421e799d1ad987663817350e" compoundref="regrid__interp_8F90" startline="48" endline="48">interpolation_ppm_ih4</references>
        <references refid="namespaceregrid__interp_1a18c34dfd8e5582e94c76fa0dee5c8390" compoundref="regrid__interp_8F90" startline="51" endline="51">interpolation_pqm_ih4ih3</references>
        <references refid="namespaceregrid__interp_1acd2d0f29f9e3383c6f97969c028a46cc" compoundref="regrid__interp_8F90" startline="52" endline="52">interpolation_pqm_ih6ih5</references>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespacemom__string__functions_1aca148baf726de2f028b7e7baad3c85d4" compoundref="MOM__string__functions_8F90" startline="44" endline="56">mom_string_functions::uppercase</references>
        <referencedby refid="namespaceregrid__interp_1ae77f3027ed51829db5d4ed6dbc744550" compoundref="regrid__interp_8F90" startline="510" endline="515">set_interp_scheme</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespaceregrid__interp_1ae77f3027ed51829db5d4ed6dbc744550" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public regrid_interp::set_interp_scheme</definition>
        <argsstring>(CS, interp_scheme)</argsstring>
        <name>set_interp_scheme</name>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>interp_scheme</type>
          <defname>interp_scheme</defname>
        </param>
        <briefdescription>
<para>Store the interpolation_scheme value in the interp_CS based on the input string. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">cs</parametername>
</parameternamelist>
<parameterdescription>
<para>A control structure for <ref refid="namespaceregrid__interp" kindref="compound">regrid_interp</ref></para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">interp_scheme</parametername>
</parameternamelist>
<parameterdescription>
<para>Name of the interpolation scheme Valid values include &quot;P1M_H2&quot;, &quot;P1M_H4&quot;, &quot;P1M_IH2&quot;, &quot;PLM&quot;, &quot;PPM_H4&quot;, &quot;PPM_IH4&quot;, &quot;P3M_IH4IH3&quot;, &quot;P3M_IH6IH5&quot;, &quot;PQM_IH4IH3&quot;, and &quot;PQM_IH6IH5&quot; </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="509" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="510" bodyend="515"/>
        <references refid="namespaceregrid__interp_1ab4d21d91c26022a3e79268be4fe14d44" compoundref="regrid__interp_8F90" startline="488" endline="505">interpolation_scheme</references>
        <referencedby refid="namespacemom__regridding_1a88398318fb996137b3f0d79b7fc8c4e9" compoundref="MOM__regridding_8F90" startline="2246" endline="2343">mom_regridding::set_regrid_params</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespaceregrid__interp_1a9ed8b5720d74090e95ca0074240a0d8a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public regrid_interp::set_interp_extrap</definition>
        <argsstring>(CS, extrap)</argsstring>
        <name>set_interp_extrap</name>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>extrap</type>
          <defname>extrap</defname>
        </param>
        <briefdescription>
<para>Store the boundary_extrapolation value in the interp_CS. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">cs</parametername>
</parameternamelist>
<parameterdescription>
<para>A control structure for <ref refid="namespaceregrid__interp" kindref="compound">regrid_interp</ref></para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">extrap</parametername>
</parameternamelist>
<parameterdescription>
<para>Indicate whether high-order boundary extrapolation should be used in boundary cells </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="519" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" bodystart="520" bodyend="524"/>
        <referencedby refid="namespacemom__regridding_1a88398318fb996137b3f0d79b7fc8c4e9" compoundref="MOM__regridding_8F90" startline="2246" endline="2343">mom_regridding::set_regrid_params</referencedby>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Vertical interpolation for regridding. </para>    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <location file="/home/cermak/src/MOM6.devrob/src/ALE/regrid_interp.F90" line="2" column="1"/>
  </compounddef>
</doxygen>
