<?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.20" xml:lang="en-US">
  <compounddef id="namespacemom__wave__speed" kind="namespace" language="Fortran">
    <compoundname>mom_wave_speed</compoundname>
    <innerclass refid="structmom__wave__speed_1_1wave__speed__cs" prot="public">mom_wave_speed::wave_speed_cs</innerclass>
      <sectiondef kind="func">
      <memberdef kind="function" id="namespacemom__wave__speed_1a936732268d9f4097149adb82b393cf39" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_wave_speed::wave_speed</definition>
        <argsstring>(h, tv, G, GV, US, cg1, CS, full_halos, use_ebt_mode, mono_N2_column_fraction, mono_N2_depth, modal_structure, better_speed_est, min_speed, wave_speed_tol)</argsstring>
        <name>wave_speed</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>tv</type>
          <defname>tv</defname>
        </param>
        <param>
          <type>G</type>
          <defname>G</defname>
        </param>
        <param>
          <type>GV</type>
          <defname>GV</defname>
        </param>
        <param>
          <type>US</type>
          <defname>US</defname>
        </param>
        <param>
          <type>cg1</type>
          <defname>cg1</defname>
        </param>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>full_halos</type>
          <defname>full_halos</defname>
        </param>
        <param>
          <type>use_ebt_mode</type>
          <defname>use_ebt_mode</defname>
        </param>
        <param>
          <type>mono_N2_column_fraction</type>
          <defname>mono_N2_column_fraction</defname>
        </param>
        <param>
          <type>mono_N2_depth</type>
          <defname>mono_N2_depth</defname>
        </param>
        <param>
          <type>modal_structure</type>
          <defname>modal_structure</defname>
        </param>
        <param>
          <type>better_speed_est</type>
          <defname>better_speed_est</defname>
        </param>
        <param>
          <type>min_speed</type>
          <defname>min_speed</defname>
        </param>
        <param>
          <type>wave_speed_tol</type>
          <defname>wave_speed_tol</defname>
        </param>
        <briefdescription>
<para>Calculates the wave speed of the first baroclinic mode. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>Ocean grid structure </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">gv</parametername>
</parameternamelist>
<parameterdescription>
<para>Vertical grid structure </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">us</parametername>
</parameternamelist>
<parameterdescription>
<para>A dimensional unit scaling type </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">tv</parametername>
</parameternamelist>
<parameterdescription>
<para>Thermodynamic variables </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">cg1</parametername>
</parameternamelist>
<parameterdescription>
<para>First mode internal wave speed [L T-1 ~&gt; m s-1] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Control structure for MOM_wave_speed </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">full_halos</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, do the calculation over the entire computational domain. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">use_ebt_mode</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use the equivalent barotropic mode instead of the first baroclinic mode. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">mono_n2_column_fraction</parametername>
</parameternamelist>
<parameterdescription>
<para>The lower fraction of water column over which N2 is limited as monotonic for the purposes of calculating vertical modal structure. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">mono_n2_depth</parametername>
</parameternamelist>
<parameterdescription>
<para>A depth below which N2 is limited as monotonic for the purposes of calculating vertical modal structure [Z ~&gt; m]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">modal_structure</parametername>
</parameternamelist>
<parameterdescription>
<para>Normalized model structure [nondim] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">better_speed_est</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use a more robust estimate of the first mode speed as the starting point for iterations. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">min_speed</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, set a floor in the first mode speed below which 0 is returned [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">wave_speed_tol</parametername>
</parameternamelist>
<parameterdescription>
<para>The fractional tolerance for finding the wave speeds [nondim] </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" line="57" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" bodystart="59" bodyend="586"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespacemom__remapping_1abe4a1d5b1b9f26063a5e4aba5be0b0a5" compoundref="MOM__remapping_8F90" startline="190" endline="262">mom_remapping::remapping_core_h</references>
        <references refid="namespacemom__wave__speed_1a3acab282f654fdcf4a7f48f115f4047b" compoundref="MOM__wave__speed_8F90" startline="593" endline="636">tdma6</references>
        <references refid="namespacemom__wave__speed_1aa07774097409ee65a75722ad690c56e4" compoundref="MOM__wave__speed_8F90" startline="1146" endline="1185">tridiag_det</references>
        <referencedby refid="namespacemom__lateral__mixing__coeffs_1a8652c5651033573cfd6f09b789d64713" compoundref="MOM__lateral__mixing__coeffs_8F90" startline="191" endline="431">mom_lateral_mixing_coeffs::calc_resoln_function</referencedby>
        <referencedby refid="namespacemom__diagnostics_1a6bd689b4d9f660020d8e3960879b4799" compoundref="MOM__diagnostics_8F90" startline="197" endline="758">mom_diagnostics::calculate_diagnostic_fields</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__wave__speed_1a3acab282f654fdcf4a7f48f115f4047b" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_wave_speed::tdma6</definition>
        <argsstring>(n, a, c, lam, y)</argsstring>
        <name>tdma6</name>
        <param>
          <type>n</type>
          <defname>n</defname>
        </param>
        <param>
          <type>a</type>
          <defname>a</defname>
        </param>
        <param>
          <type>c</type>
          <defname>c</defname>
        </param>
        <param>
          <type>lam</type>
          <defname>lam</defname>
        </param>
        <param>
          <type>y</type>
          <defname>y</defname>
        </param>
        <briefdescription>
<para>Solve a non-symmetric tridiagonal problem with the sum of the upper and lower diagnonals minus a scalar contribution as the leading diagonal. This uses the Thomas algorithm rather than the Hallberg algorithm since the matrix is not symmetric. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">n</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of rows of matrix </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">a</parametername>
</parameternamelist>
<parameterdescription>
<para>Lower diagonal [T2 L-2 ~&gt; s2 m-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">c</parametername>
</parameternamelist>
<parameterdescription>
<para>Upper diagonal [T2 L-2 ~&gt; s2 m-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">lam</parametername>
</parameternamelist>
<parameterdescription>
<para>Scalar subtracted from leading diagonal [T2 L-2 ~&gt; s2 m-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">y</parametername>
</parameternamelist>
<parameterdescription>
<para>RHS on entry, result on exit </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" line="592" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" bodystart="593" bodyend="636"/>
        <referencedby refid="namespacemom__wave__speed_1a936732268d9f4097149adb82b393cf39" compoundref="MOM__wave__speed_8F90" startline="59" endline="586">wave_speed</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__wave__speed_1a4e969f10d0cdd765f6804973a74ff479" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_wave_speed::wave_speeds</definition>
        <argsstring>(h, tv, G, GV, US, nmodes, cn, CS, full_halos, better_speed_est, min_speed, wave_speed_tol)</argsstring>
        <name>wave_speeds</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>tv</type>
          <defname>tv</defname>
        </param>
        <param>
          <type>G</type>
          <defname>G</defname>
        </param>
        <param>
          <type>GV</type>
          <defname>GV</defname>
        </param>
        <param>
          <type>US</type>
          <defname>US</defname>
        </param>
        <param>
          <type>nmodes</type>
          <defname>nmodes</defname>
        </param>
        <param>
          <type>cn</type>
          <defname>cn</defname>
        </param>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>full_halos</type>
          <defname>full_halos</defname>
        </param>
        <param>
          <type>better_speed_est</type>
          <defname>better_speed_est</defname>
        </param>
        <param>
          <type>min_speed</type>
          <defname>min_speed</defname>
        </param>
        <param>
          <type>wave_speed_tol</type>
          <defname>wave_speed_tol</defname>
        </param>
        <briefdescription>
<para>Calculates the wave speeds for the first few barolinic modes. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>Ocean grid structure </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">gv</parametername>
</parameternamelist>
<parameterdescription>
<para>Vertical grid structure </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">us</parametername>
</parameternamelist>
<parameterdescription>
<para>A dimensional unit scaling type </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">tv</parametername>
</parameternamelist>
<parameterdescription>
<para>Thermodynamic variables </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">nmodes</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of modes </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">cn</parametername>
</parameternamelist>
<parameterdescription>
<para>Waves speeds [L T-1 ~&gt; m s-1] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Control structure for MOM_wave_speed </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">full_halos</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, do the calculation over the entire computational domain. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">better_speed_est</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use a more robust estimate of the first mode speed as the starting point for iterations. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">min_speed</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, set a floor in the first mode speed below which 0 is returned [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">wave_speed_tol</parametername>
</parameternamelist>
<parameterdescription>
<para>The fractional tolerance for finding the wave speeds [nondim] </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" line="640" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" bodystart="642" bodyend="1138"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespacemom__wave__speed_1aa07774097409ee65a75722ad690c56e4" compoundref="MOM__wave__speed_8F90" startline="1146" endline="1185">tridiag_det</references>
        <referencedby refid="namespacemom__diabatic__driver_1ada12cae1e63c6aa56775f1a235b7db95" compoundref="MOM__diabatic__driver_8F90" startline="263" endline="445">mom_diabatic_driver::diabatic</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__wave__speed_1aa07774097409ee65a75722ad690c56e4" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_wave_speed::tridiag_det</definition>
        <argsstring>(a, c, ks, ke, lam, det, ddet, row_scale)</argsstring>
        <name>tridiag_det</name>
        <param>
          <type>a</type>
          <defname>a</defname>
        </param>
        <param>
          <type>c</type>
          <defname>c</defname>
        </param>
        <param>
          <type>ks</type>
          <defname>ks</defname>
        </param>
        <param>
          <type>ke</type>
          <defname>ke</defname>
        </param>
        <param>
          <type>lam</type>
          <defname>lam</defname>
        </param>
        <param>
          <type>det</type>
          <defname>det</defname>
        </param>
        <param>
          <type>ddet</type>
          <defname>ddet</defname>
        </param>
        <param>
          <type>row_scale</type>
          <defname>row_scale</defname>
        </param>
        <briefdescription>
<para>Calculate the determinant of a tridiagonal matrix with diagonals a,b-lam,c and its derivative with lam, where lam is constant across rows. Only the ratio of det to its derivative and their signs are typically used, so internal rescaling by consistent factors are used to avoid over- or underflow. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">a</parametername>
</parameternamelist>
<parameterdescription>
<para>Lower diagonal of matrix (first entry unused) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">c</parametername>
</parameternamelist>
<parameterdescription>
<para>Upper diagonal of matrix (last entry unused) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ks</parametername>
</parameternamelist>
<parameterdescription>
<para>Starting index to use in determinant </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ke</parametername>
</parameternamelist>
<parameterdescription>
<para>Ending index to use in determinant </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">lam</parametername>
</parameternamelist>
<parameterdescription>
<para>Value subtracted from b </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">det</parametername>
</parameternamelist>
<parameterdescription>
<para>Determinant </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ddet</parametername>
</parameternamelist>
<parameterdescription>
<para>Derivative of determinant with lam </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">row_scale</parametername>
</parameternamelist>
<parameterdescription>
<para>A scaling factor of the rows of the matrix to limit the growth of the determinant </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" line="1145" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" bodystart="1146" bodyend="1185"/>
        <referencedby refid="namespacemom__wave__speed_1a936732268d9f4097149adb82b393cf39" compoundref="MOM__wave__speed_8F90" startline="59" endline="586">wave_speed</referencedby>
        <referencedby refid="namespacemom__wave__speed_1a4e969f10d0cdd765f6804973a74ff479" compoundref="MOM__wave__speed_8F90" startline="642" endline="1138">wave_speeds</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__wave__speed_1afa7284f32921f1e5d31530633cf95022" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_wave_speed::wave_speed_init</definition>
        <argsstring>(CS, use_ebt_mode, mono_N2_column_fraction, mono_N2_depth, remap_answers_2018, better_speed_est, min_speed, wave_speed_tol)</argsstring>
        <name>wave_speed_init</name>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>use_ebt_mode</type>
          <defname>use_ebt_mode</defname>
        </param>
        <param>
          <type>mono_N2_column_fraction</type>
          <defname>mono_N2_column_fraction</defname>
        </param>
        <param>
          <type>mono_N2_depth</type>
          <defname>mono_N2_depth</defname>
        </param>
        <param>
          <type>remap_answers_2018</type>
          <defname>remap_answers_2018</defname>
        </param>
        <param>
          <type>better_speed_est</type>
          <defname>better_speed_est</defname>
        </param>
        <param>
          <type>min_speed</type>
          <defname>min_speed</defname>
        </param>
        <param>
          <type>wave_speed_tol</type>
          <defname>wave_speed_tol</defname>
        </param>
        <briefdescription>
<para>Initialize control structure for MOM_wave_speed. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Control structure for MOM_wave_speed </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">use_ebt_mode</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use the equivalent barotropic mode instead of the first baroclinic mode. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">mono_n2_column_fraction</parametername>
</parameternamelist>
<parameterdescription>
<para>The lower fraction of water column over which N2 is limited as monotonic for the purposes of calculating the vertical modal structure. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">mono_n2_depth</parametername>
</parameternamelist>
<parameterdescription>
<para>The depth below which N2 is limited as monotonic for the purposes of calculating the vertical modal structure [Z ~&gt; m]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">remap_answers_2018</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use the order of arithmetic and expressions that recover the remapping answers from 2018. Otherwise use more robust but mathematically equivalent expressions. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">better_speed_est</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use a more robust estimate of the first mode speed as the starting point for iterations. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">min_speed</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, set a floor in the first mode speed below which 0 is returned [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">wave_speed_tol</parametername>
</parameternamelist>
<parameterdescription>
<para>The fractional tolerance for finding the wave speeds [nondim] </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" line="1189" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" bodystart="1191" bodyend="1228"/>
        <references refid="namespacemom__remapping_1a81211827af45207130d25cae520b55e5" compoundref="MOM__remapping_8F90" startline="1551" endline="1564">mom_remapping::initialize_remapping</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__wave__speed_1a13f3b425b43466d5af43f15d26c25a59" compoundref="MOM__wave__speed_8F90" startline="1234" endline="1263">wave_speed_set_param</references>
        <referencedby refid="namespacemom__diagnostics_1ae8281123dfff124b0a362ea9fd1e0078" compoundref="MOM__diagnostics_8F90" startline="1493" endline="1870">mom_diagnostics::mom_diagnostics_init</referencedby>
        <referencedby refid="namespacemom__lateral__mixing__coeffs_1a1070a864ca570c00f483a8617afca133" compoundref="MOM__lateral__mixing__coeffs_8F90" startline="937" endline="1350">mom_lateral_mixing_coeffs::varmix_init</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__wave__speed_1a13f3b425b43466d5af43f15d26c25a59" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_wave_speed::wave_speed_set_param</definition>
        <argsstring>(CS, use_ebt_mode, mono_N2_column_fraction, mono_N2_depth, remap_answers_2018, better_speed_est, min_speed, wave_speed_tol)</argsstring>
        <name>wave_speed_set_param</name>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>use_ebt_mode</type>
          <defname>use_ebt_mode</defname>
        </param>
        <param>
          <type>mono_N2_column_fraction</type>
          <defname>mono_N2_column_fraction</defname>
        </param>
        <param>
          <type>mono_N2_depth</type>
          <defname>mono_N2_depth</defname>
        </param>
        <param>
          <type>remap_answers_2018</type>
          <defname>remap_answers_2018</defname>
        </param>
        <param>
          <type>better_speed_est</type>
          <defname>better_speed_est</defname>
        </param>
        <param>
          <type>min_speed</type>
          <defname>min_speed</defname>
        </param>
        <param>
          <type>wave_speed_tol</type>
          <defname>wave_speed_tol</defname>
        </param>
        <briefdescription>
<para>Sets internal parameters for MOM_wave_speed. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Control structure for MOM_wave_speed </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">use_ebt_mode</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use the equivalent barotropic mode instead of the first baroclinic mode. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">mono_n2_column_fraction</parametername>
</parameternamelist>
<parameterdescription>
<para>The lower fraction of water column over which N2 is limited as monotonic for the purposes of calculating the vertical modal structure. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">mono_n2_depth</parametername>
</parameternamelist>
<parameterdescription>
<para>The depth below which N2 is limited as monotonic for the purposes of calculating the vertical modal structure [Z ~&gt; m]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">remap_answers_2018</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use the order of arithmetic and expressions that recover the remapping answers from 2018. Otherwise use more robust but mathematically equivalent expressions. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">better_speed_est</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, use a more robust estimate of the first mode speed as the starting point for iterations. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">min_speed</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, set a floor in the first mode speed below which 0 is returned [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">wave_speed_tol</parametername>
</parameternamelist>
<parameterdescription>
<para>The fractional tolerance for finding the wave speeds [nondim] </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" line="1232" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" bodystart="1234" bodyend="1263"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <referencedby refid="namespacemom__wave__speed_1afa7284f32921f1e5d31530633cf95022" compoundref="MOM__wave__speed_8F90" startline="1191" endline="1228">wave_speed_init</referencedby>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Routines for calculating baroclinic wave speeds. </para>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <location file="/home/cermak/src/MOM6.devrob/src/diagnostics/MOM_wave_speed.F90" line="2" column="1"/>
  </compounddef>
</doxygen>
