<?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__lateral__mixing__coeffs" kind="namespace" language="Fortran">
    <compoundname>mom_lateral_mixing_coeffs</compoundname>
    <innerclass refid="structmom__lateral__mixing__coeffs_1_1varmix__cs" prot="public">mom_lateral_mixing_coeffs::varmix_cs</innerclass>
      <sectiondef kind="func">
      <memberdef kind="function" id="namespacemom__lateral__mixing__coeffs_1a6e09cc5b57817576a6ba61b9c630f608" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_lateral_mixing_coeffs::calc_depth_function</definition>
        <argsstring>(G, CS)</argsstring>
        <name>calc_depth_function</name>
        <param>
          <type>G</type>
          <defname>G</defname>
        </param>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <briefdescription>
<para>Calculates the non-dimensional depth functions. </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>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Variable mixing coefficients </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" line="156" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" bodystart="157" bodyend="186"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <referencedby refid="namespacemom_1adf54a4e3a72611aa2088f46076e56e53" compoundref="MOM_8F90" startline="422" endline="940">mom::step_mom</referencedby>
        <referencedby refid="namespacemom_1ade4f7557fcda73ffc12284d3cecf4182" compoundref="MOM_8F90" startline="1405" endline="1596">mom::step_offline</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__lateral__mixing__coeffs_1a8652c5651033573cfd6f09b789d64713" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_lateral_mixing_coeffs::calc_resoln_function</definition>
        <argsstring>(h, tv, G, GV, US, CS)</argsstring>
        <name>calc_resoln_function</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>CS</type>
          <defname>CS</defname>
        </param>
        <briefdescription>
<para>Calculates and stores the non-dimensional resolution functions. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">g</parametername>
</parameternamelist>
<parameterdescription>
<para>Ocean grid structure </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">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>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Variable mixing coefficients </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" line="190" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" bodystart="191" bodyend="431"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespacemom__diag__mediator_1a0be5d1cbc6c6f8f63950ce7d9bc6455a" compoundref="MOM__diag__mediator_8F90" startline="1916" endline="1923">mom_diag_mediator::query_averaging_enabled</references>
        <references refid="namespacemom__wave__speed_1a936732268d9f4097149adb82b393cf39" compoundref="MOM__wave__speed_8F90" startline="59" endline="586">mom_wave_speed::wave_speed</references>
        <referencedby refid="namespacemom_1adf54a4e3a72611aa2088f46076e56e53" compoundref="MOM_8F90" startline="422" endline="940">mom::step_mom</referencedby>
        <referencedby refid="namespacemom_1ade4f7557fcda73ffc12284d3cecf4182" compoundref="MOM_8F90" startline="1405" endline="1596">mom::step_offline</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__lateral__mixing__coeffs_1a1afa768a2df4c937842247cea00d184a" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_lateral_mixing_coeffs::calc_slope_functions</definition>
        <argsstring>(h, tv, dt, G, GV, US, CS, OBC)</argsstring>
        <name>calc_slope_functions</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>tv</type>
          <defname>tv</defname>
        </param>
        <param>
          <type>dt</type>
          <defname>dt</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>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>OBC</type>
          <defname>OBC</defname>
        </param>
        <briefdescription>
<para>Calculates and stores functions of isopycnal slopes, e.g. Sx, Sy, S*N, mostly used in the Visbeck et al. style scaling of diffusivity. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">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="inout">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">dt</parametername>
</parameternamelist>
<parameterdescription>
<para>Time increment [T ~&gt; s] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Variable mixing coefficients </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>obc</parametername>
</parameternamelist>
<parameterdescription>
<para>Open boundaries control structure. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" line="436" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" bodystart="437" bodyend="477"/>
        <references refid="namespacemom__isopycnal__slopes_1a9a4cbf819be46d9babab62f7f09734c8" compoundref="MOM__isopycnal__slopes_8F90" startline="30" endline="385">mom_isopycnal_slopes::calc_isoneutral_slopes</references>
        <references refid="namespacemom__lateral__mixing__coeffs_1a9947860318104ed1662ff4f9d671f92d" compoundref="MOM__lateral__mixing__coeffs_8F90" startline="647" endline="803">calc_slope_functions_using_just_e</references>
        <references refid="namespacemom__lateral__mixing__coeffs_1ac7307f59d005a7b45a642f94eee7c8be" compoundref="MOM__lateral__mixing__coeffs_8F90" startline="482" endline="641">calc_visbeck_coeffs</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__diag__mediator_1a0be5d1cbc6c6f8f63950ce7d9bc6455a" compoundref="MOM__diag__mediator_8F90" startline="1916" endline="1923">mom_diag_mediator::query_averaging_enabled</references>
      </memberdef>
      <memberdef kind="function" id="namespacemom__lateral__mixing__coeffs_1ac7307f59d005a7b45a642f94eee7c8be" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_lateral_mixing_coeffs::calc_visbeck_coeffs</definition>
        <argsstring>(h, slope_x, slope_y, N2_u, N2_v, G, GV, US, CS, OBC)</argsstring>
        <name>calc_visbeck_coeffs</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>slope_x</type>
          <defname>slope_x</defname>
        </param>
        <param>
          <type>slope_y</type>
          <defname>slope_y</defname>
        </param>
        <param>
          <type>N2_u</type>
          <defname>N2_u</defname>
        </param>
        <param>
          <type>N2_v</type>
          <defname>N2_v</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>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>OBC</type>
          <defname>OBC</defname>
        </param>
        <briefdescription>
<para>Calculates factors used when setting diffusivity coefficients similar to Visbeck et al. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">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">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">slope_x</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal isoneutral slope </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">n2_u</parametername>
</parameternamelist>
<parameterdescription>
<para>Buoyancy (Brunt-Vaisala) frequency at u-points [T-2 ~&gt; s-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">slope_y</parametername>
</parameternamelist>
<parameterdescription>
<para>Meridional isoneutral slope </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">n2_v</parametername>
</parameternamelist>
<parameterdescription>
<para>Buoyancy (Brunt-Vaisala) frequency at v-points [T-2 ~&gt; s-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">us</parametername>
</parameternamelist>
<parameterdescription>
<para>A dimensional unit scaling type </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Variable mixing coefficients </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>obc</parametername>
</parameternamelist>
<parameterdescription>
<para>Open boundaries control structure. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" line="481" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" bodystart="482" bodyend="641"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespacemom__open__boundary_1a1dd4294ac05ea337431a26395003325f" compoundref="MOM__open__boundary_8F90" startline="68" endline="68">mom_open_boundary::obc_none</references>
        <references refid="namespacemom__diag__mediator_1a0be5d1cbc6c6f8f63950ce7d9bc6455a" compoundref="MOM__diag__mediator_8F90" startline="1916" endline="1923">mom_diag_mediator::query_averaging_enabled</references>
        <referencedby refid="namespacemom__lateral__mixing__coeffs_1a1afa768a2df4c937842247cea00d184a" compoundref="MOM__lateral__mixing__coeffs_8F90" startline="437" endline="477">calc_slope_functions</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__lateral__mixing__coeffs_1a9947860318104ed1662ff4f9d671f92d" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_lateral_mixing_coeffs::calc_slope_functions_using_just_e</definition>
        <argsstring>(h, G, GV, US, CS, e, calculate_slopes, OBC)</argsstring>
        <name>calc_slope_functions_using_just_e</name>
        <param>
          <type>h</type>
          <defname>h</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>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>e</type>
          <defname>e</defname>
        </param>
        <param>
          <type>calculate_slopes</type>
          <defname>calculate_slopes</defname>
        </param>
        <param>
          <type>OBC</type>
          <defname>OBC</defname>
        </param>
        <briefdescription>
<para>The original calc_slope_function() that calculated slopes using interface positions only, not accounting for density variations. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">g</parametername>
</parameternamelist>
<parameterdescription>
<para>Ocean grid structure </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2] </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>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Variable mixing coefficients </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">e</parametername>
</parameternamelist>
<parameterdescription>
<para>Interface position [Z ~&gt; m] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">calculate_slopes</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, calculate slopes internally otherwise use slopes stored in CS </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>obc</parametername>
</parameternamelist>
<parameterdescription>
<para>Open boundaries control structure. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" line="646" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" bodystart="647" bodyend="803"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <references refid="namespacemom__open__boundary_1a1dd4294ac05ea337431a26395003325f" compoundref="MOM__open__boundary_8F90" startline="68" endline="68">mom_open_boundary::obc_none</references>
        <referencedby refid="namespacemom__lateral__mixing__coeffs_1a1afa768a2df4c937842247cea00d184a" compoundref="MOM__lateral__mixing__coeffs_8F90" startline="437" endline="477">calc_slope_functions</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__lateral__mixing__coeffs_1a212e9e850d4db8f321e0398f4090fee0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_lateral_mixing_coeffs::calc_qg_leith_viscosity</definition>
        <argsstring>(CS, G, GV, US, h, k, div_xx_dx, div_xx_dy, vort_xy_dx, vort_xy_dy)</argsstring>
        <name>calc_qg_leith_viscosity</name>
        <param>
          <type>CS</type>
          <defname>CS</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>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>k</type>
          <defname>k</defname>
        </param>
        <param>
          <type>div_xx_dx</type>
          <defname>div_xx_dx</defname>
        </param>
        <param>
          <type>div_xx_dy</type>
          <defname>div_xx_dy</defname>
        </param>
        <param>
          <type>vort_xy_dx</type>
          <defname>vort_xy_dx</defname>
        </param>
        <param>
          <type>vort_xy_dy</type>
          <defname>vort_xy_dy</defname>
        </param>
        <briefdescription>
<para>Calculates the Leith Laplacian and bi-harmonic viscosity coefficients. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Variable mixing coefficients </para>
</parameterdescription>
</parameteritem>
<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>The ocean&apos;s 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="inout">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">k</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer for which to calculate vorticity magnitude </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">div_xx_dx</parametername>
</parameternamelist>
<parameterdescription>
<para>x-derivative of horizontal divergence (d/dx(du/dx + dv/dy)) [L-1 T-1 ~&gt; m-1 s-1] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">div_xx_dy</parametername>
</parameternamelist>
<parameterdescription>
<para>y-derivative of horizontal divergence (d/dy(du/dx + dv/dy)) [L-1 T-1 ~&gt; m-1 s-1] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">vort_xy_dx</parametername>
</parameternamelist>
<parameterdescription>
<para>x-derivative of vertical vorticity (d/dx(dv/dx - du/dy)) [L-1 T-1 ~&gt; m-1 s-1] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">vort_xy_dy</parametername>
</parameternamelist>
<parameterdescription>
<para>y-derivative of vertical vorticity (d/dy(dv/dx - du/dy)) [L-1 T-1 ~&gt; m-1 s-1] </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" line="807" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" bodystart="808" bodyend="932"/>
        <referencedby refid="namespacemom__hor__visc_1ab3a26095634db15095b980e45137e1f1" compoundref="MOM__hor__visc_8F90" startline="217" endline="1411">mom_hor_visc::horizontal_viscosity</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__lateral__mixing__coeffs_1a1070a864ca570c00f483a8617afca133" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_lateral_mixing_coeffs::varmix_init</definition>
        <argsstring>(Time, G, GV, US, param_file, diag, CS)</argsstring>
        <name>varmix_init</name>
        <param>
          <type>Time</type>
          <defname>Time</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>param_file</type>
          <defname>param_file</defname>
        </param>
        <param>
          <type>diag</type>
          <defname>diag</defname>
        </param>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <briefdescription>
<para>Initializes the variables mixing coefficients container. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">time</parametername>
</parameternamelist>
<parameterdescription>
<para>Current model time </para>
</parameterdescription>
</parameteritem>
<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>The ocean&apos;s 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">param_file</parametername>
</parameternamelist>
<parameterdescription>
<para>Parameter file handles </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">diag</parametername>
</parameternamelist>
<parameterdescription>
<para>Diagnostics control structure </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>Variable mixing coefficients </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" line="936" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" bodystart="937" bodyend="1350"/>
        <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_1afa7284f32921f1e5d31530633cf95022" compoundref="MOM__wave__speed_8F90" startline="1191" endline="1228">mom_wave_speed::wave_speed_init</references>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Variable mixing coefficients. </para>
    </briefdescription>
    <detaileddescription>
<para>This module provides a container for various factors used in prescribing diffusivities, that are a function of the state (in particular the stratification and isoneutral slopes).</para>
<sect1 id="namespacemom__lateral__mixing__coeffs_1section_Resolution_Function">
<title>The resolution function</title>
<para>The resolution function is expressed in terms of the ratio of grid-spacing to deformation radius. The square of the resolution parameter is</para>
<para><formula id="293">\[ R^2 = \frac{L_d^2}{\Delta^2} = \frac{ c_g^2 }{ f^2 \Delta^2 + c_g \beta \Delta^2 } \]</formula></para>
<para>where the grid spacing is calculated as</para>
<para><formula id="294">\[ \Delta^2 = \Delta x^2 + \Delta y^2 . \]</formula></para>
<para><xrefsect id="todo_1_todo000002"><xreftitle>Todo</xreftitle><xrefdescription><para>Check this reference to Bob on/off paper. The resolution function used in scaling diffusivities (Hallberg, 2010) is</para>
</xrefdescription></xrefsect></para>
<para><formula id="295">\[ r(\Delta,L_d) = \frac{1}{1+(\alpha R)^p} \]</formula></para>
<para>The resolution function can be applied independently to thickness diffusion (module <ref refid="namespacemom__thickness__diffuse" kindref="compound">mom_thickness_diffuse</ref>), tracer diffusion (mom_tracer_hordiff) lateral viscosity (<ref refid="namespacemom__hor__visc" kindref="compound">mom_hor_visc</ref>).</para>
<para>Robert Hallberg, 2013: Using a resolution function to regulate parameterizations of oceanic mesoscale eddy effects. Ocean Modelling, 71, pp 92-103. <ulink url="http://dx.doi.org/10.1016/j.ocemod.2013.08.007">http://dx.doi.org/10.1016/j.ocemod.2013.08.007</ulink></para>
<para><table rows="10" cols="2"><row>
<entry thead="yes"><para>Symbol  </para>
</entry><entry thead="yes"><para>Module parameter   </para>
</entry></row>
<row>
<entry thead="no"><para>-  </para>
</entry><entry thead="no"><para><computeroutput>USE_VARIABLE_MIXING</computeroutput>   </para>
</entry></row>
<row>
<entry thead="no"><para>-  </para>
</entry><entry thead="no"><para><computeroutput>RESOLN_SCALED_KH</computeroutput>   </para>
</entry></row>
<row>
<entry thead="no"><para>-  </para>
</entry><entry thead="no"><para><computeroutput>RESOLN_SCALED_KHTH</computeroutput>   </para>
</entry></row>
<row>
<entry thead="no"><para>-  </para>
</entry><entry thead="no"><para><computeroutput>RESOLN_SCALED_KHTR</computeroutput>   </para>
</entry></row>
<row>
<entry thead="no"><para><formula id="296">$ \alpha $</formula>  </para>
</entry><entry thead="no"><para><computeroutput>KH_RES_SCALE_COEF</computeroutput> (for thickness and tracer diffusivity)   </para>
</entry></row>
<row>
<entry thead="no"><para><formula id="297">$ p $</formula>  </para>
</entry><entry thead="no"><para><computeroutput>KH_RES_FN_POWER</computeroutput> (for thickness and tracer diffusivity)   </para>
</entry></row>
<row>
<entry thead="no"><para><formula id="296">$ \alpha $</formula>  </para>
</entry><entry thead="no"><para><computeroutput>VISC_RES_SCALE_COEF</computeroutput> (for lateral viscosity)   </para>
</entry></row>
<row>
<entry thead="no"><para><formula id="297">$ p $</formula>  </para>
</entry><entry thead="no"><para><computeroutput>VISC_RES_FN_POWER</computeroutput> (for lateral viscosity)   </para>
</entry></row>
<row>
<entry thead="no"><para>-  </para>
</entry><entry thead="no"><para><computeroutput>GILL_EQUATORIAL_LD</computeroutput>   </para>
</entry></row>
</table>
</para>
</sect1>
<sect1 id="namespacemom__lateral__mixing__coeffs_1section_Vicbeck">
<title>Visbeck diffusivity</title>
<para>This module also calculates factors used in setting the thickness diffusivity similar to a Visbeck et al., 1997, scheme. The factors are combined in <ref refid="namespacemom__thickness__diffuse_1a8a538b778a567f489bfd9c5eadeeebef" kindref="member">mom_thickness_diffuse::thickness_diffuse()</ref> but calculated in this module.</para>
<para><formula id="298">\[ \kappa_h = \alpha_s L_s^2 S N \]</formula></para>
<para>where <formula id="163">$S$</formula> is the magnitude of the isoneutral slope and <formula id="299">$N$</formula> is the Brunt-Vaisala frequency.</para>
<para>Visbeck, Marshall, Haine and Spall, 1997: Specification of Eddy Transfer Coefficients in Coarse-Resolution Ocean Circulation Models. J. Phys. Oceanogr. <ulink url="http://dx.doi.org/10.1175/1520-0485(1997)027%3C0381:SOETCI%3E2.0.CO;2">http://dx.doi.org/10.1175/1520-0485(1997)027%3C0381:SOETCI%3E2.0.CO;2</ulink></para>
<para><table rows="6" cols="2"><row>
<entry thead="yes"><para>Symbol  </para>
</entry><entry thead="yes"><para>Module parameter   </para>
</entry></row>
<row>
<entry thead="no"><para>-  </para>
</entry><entry thead="no"><para><computeroutput>USE_VARIABLE_MIXING</computeroutput>   </para>
</entry></row>
<row>
<entry thead="no"><para><formula id="300">$ \alpha_s $</formula>  </para>
</entry><entry thead="no"><para><computeroutput>KHTH_SLOPE_CFF</computeroutput> (for <ref refid="namespacemom__thickness__diffuse" kindref="compound">mom_thickness_diffuse</ref> module)   </para>
</entry></row>
<row>
<entry thead="no"><para><formula id="300">$ \alpha_s $</formula>  </para>
</entry><entry thead="no"><para><computeroutput>KHTR_SLOPE_CFF</computeroutput> (for mom_tracer_hordiff module)   </para>
</entry></row>
<row>
<entry thead="no"><para><formula id="301">$ L_{s} $</formula>  </para>
</entry><entry thead="no"><para><computeroutput>VISBECK_L_SCALE</computeroutput>   </para>
</entry></row>
<row>
<entry thead="no"><para><formula id="302">$ S_{max} $</formula>  </para>
</entry><entry thead="no"><para><computeroutput>VISBECK_MAX_SLOPE</computeroutput>   </para>
</entry></row>
</table>
</para>
</sect1>
<sect1 id="namespacemom__lateral__mixing__coeffs_1section_vertical_structure_khth">
<title>Vertical structure function for KhTh</title>
<para>The thickness diffusivity can be prescribed a vertical distribution with the shape of the equivalent barotropic velocity mode. The structure function is stored in the control structure for thie module (<ref refid="structmom__lateral__mixing__coeffs_1_1varmix__cs" kindref="compound">varmix_cs</ref>) but is calculated using subroutines in <ref refid="namespacemom__wave__speed" kindref="compound">mom_wave_speed</ref>.</para>
<para><table rows="2" cols="2"><row>
<entry thead="yes"><para>Symbol  </para>
</entry><entry thead="yes"><para>Module parameter   </para>
</entry></row>
<row>
<entry thead="no"><para>-  </para>
</entry><entry thead="no"><para><computeroutput>KHTH_USE_EBT_STRUCT</computeroutput>   </para>
</entry></row>
</table>
</para>
</sect1>
    </detaileddescription>
    <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/lateral/MOM_lateral_mixing_coeffs.F90" line="2" column="1"/>
  </compounddef>
</doxygen>
