<?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.19" xml:lang="en-US">
  <compounddef id="namespacemom__bulk__mixed__layer" kind="namespace" language="Fortran">
    <compoundname>mom_bulk_mixed_layer</compoundname>
    <innerclass refid="structmom__bulk__mixed__layer_1_1bulkmixedlayer__cs" prot="public">mom_bulk_mixed_layer::bulkmixedlayer_cs</innerclass>
      <sectiondef kind="user-defined">
      <memberdef kind="variable" id="namespacemom__bulk__mixed__layer_1a834f8c8f259f53f30654ad9273eee648" prot="public" static="no" mutable="no">
        <type>integer</type>
        <definition>integer mom_bulk_mixed_layer::id_clock_detrain</definition>
        <argsstring></argsstring>
        <name>id_clock_detrain</name>
        <initializer>=0</initializer>
        <briefdescription>
<para>CPU clock IDs. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="152" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="152" bodyend="152"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
        <referencedby refid="namespacemom__bulk__mixed__layer_1a14f3b36851c81d60fb31ff86870a7d54" compoundref="MOM__bulk__mixed__layer_8F90" startline="3390" endline="3685">bulkmixedlayer_init</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespacemom__bulk__mixed__layer_1afadd63132ed4d2785d2771dfe33e64d8" prot="private" static="no" mutable="no">
        <type>integer</type>
        <definition>integer mom_bulk_mixed_layer::id_clock_mech</definition>
        <argsstring></argsstring>
        <name>id_clock_mech</name>
        <initializer>=0</initializer>
        <briefdescription>
<para>CPU clock IDs. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="152" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="152" bodyend="-1"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
        <referencedby refid="namespacemom__bulk__mixed__layer_1a14f3b36851c81d60fb31ff86870a7d54" compoundref="MOM__bulk__mixed__layer_8F90" startline="3390" endline="3685">bulkmixedlayer_init</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespacemom__bulk__mixed__layer_1aaeabff634c035ff4b91e5ea695123a34" prot="private" static="no" mutable="no">
        <type>integer</type>
        <definition>integer mom_bulk_mixed_layer::id_clock_conv</definition>
        <argsstring></argsstring>
        <name>id_clock_conv</name>
        <initializer>=0</initializer>
        <briefdescription>
<para>CPU clock IDs. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="152" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="152" bodyend="-1"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
        <referencedby refid="namespacemom__bulk__mixed__layer_1a14f3b36851c81d60fb31ff86870a7d54" compoundref="MOM__bulk__mixed__layer_8F90" startline="3390" endline="3685">bulkmixedlayer_init</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespacemom__bulk__mixed__layer_1a8e92dc75114e33498ee9318edbb784d4" prot="private" static="no" mutable="no">
        <type>integer</type>
        <definition>integer mom_bulk_mixed_layer::id_clock_adjustment</definition>
        <argsstring></argsstring>
        <name>id_clock_adjustment</name>
        <initializer>=0</initializer>
        <briefdescription>
<para>CPU clock IDs. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="152" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="152" bodyend="-1"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
        <referencedby refid="namespacemom__bulk__mixed__layer_1a14f3b36851c81d60fb31ff86870a7d54" compoundref="MOM__bulk__mixed__layer_8F90" startline="3390" endline="3685">bulkmixedlayer_init</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespacemom__bulk__mixed__layer_1a238ec53eac28b48ba8ab226296b363f0" prot="private" static="no" mutable="no">
        <type>integer</type>
        <definition>integer mom_bulk_mixed_layer::id_clock_eos</definition>
        <argsstring></argsstring>
        <name>id_clock_eos</name>
        <initializer>=0</initializer>
        <briefdescription>
<para>CPU clock IDs. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="153" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="153" bodyend="153"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
        <referencedby refid="namespacemom__bulk__mixed__layer_1a14f3b36851c81d60fb31ff86870a7d54" compoundref="MOM__bulk__mixed__layer_8F90" startline="3390" endline="3685">bulkmixedlayer_init</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespacemom__bulk__mixed__layer_1aa27ed6a6317d7f8031d7c0207fe42c52" prot="private" static="no" mutable="no">
        <type>integer</type>
        <definition>integer mom_bulk_mixed_layer::id_clock_resort</definition>
        <argsstring></argsstring>
        <name>id_clock_resort</name>
        <initializer>=0</initializer>
        <briefdescription>
<para>CPU clock IDs. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="153" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="153" bodyend="-1"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
        <referencedby refid="namespacemom__bulk__mixed__layer_1a14f3b36851c81d60fb31ff86870a7d54" compoundref="MOM__bulk__mixed__layer_8F90" startline="3390" endline="3685">bulkmixedlayer_init</referencedby>
      </memberdef>
      <memberdef kind="variable" id="namespacemom__bulk__mixed__layer_1af833f821fed6dc29921f131d80a27b6e" prot="private" static="no" mutable="no">
        <type>integer</type>
        <definition>integer mom_bulk_mixed_layer::id_clock_pass</definition>
        <argsstring></argsstring>
        <name>id_clock_pass</name>
        <initializer>=0</initializer>
        <briefdescription>
<para>CPU clock IDs. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="153" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="153" bodyend="-1"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
        <referencedby refid="namespacemom__bulk__mixed__layer_1a14f3b36851c81d60fb31ff86870a7d54" compoundref="MOM__bulk__mixed__layer_8F90" startline="3390" endline="3685">bulkmixedlayer_init</referencedby>
      </memberdef>
      </sectiondef>
      <sectiondef kind="func">
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_bulk_mixed_layer::bulkmixedlayer</definition>
        <argsstring>(h_3d, u_3d, v_3d, tv, fluxes, dt, ea, eb, G, GV, US, CS, optics, Hml, aggregate_FW_forcing, dt_diag, last_call)</argsstring>
        <name>bulkmixedlayer</name>
        <param>
          <type>h_3d</type>
          <defname>h_3d</defname>
        </param>
        <param>
          <type>u_3d</type>
          <defname>u_3d</defname>
        </param>
        <param>
          <type>v_3d</type>
          <defname>v_3d</defname>
        </param>
        <param>
          <type>tv</type>
          <defname>tv</defname>
        </param>
        <param>
          <type>fluxes</type>
          <defname>fluxes</defname>
        </param>
        <param>
          <type>dt</type>
          <defname>dt</defname>
        </param>
        <param>
          <type>ea</type>
          <defname>ea</defname>
        </param>
        <param>
          <type>eb</type>
          <defname>eb</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>optics</type>
          <defname>optics</defname>
        </param>
        <param>
          <type>Hml</type>
          <defname>Hml</defname>
        </param>
        <param>
          <type>aggregate_FW_forcing</type>
          <defname>aggregate_FW_forcing</defname>
        </param>
        <param>
          <type>dt_diag</type>
          <defname>dt_diag</defname>
        </param>
        <param>
          <type>last_call</type>
          <defname>last_call</defname>
        </param>
        <briefdescription>
<para>This subroutine partially steps the bulk mixed layer model. The following processes are executed, in the order listed. </para>
        </briefdescription>
        <detaileddescription>
<para><orderedlist>
<listitem><para>Undergo convective adjustment into mixed layer.</para>
</listitem><listitem><para>Apply surface heating and cooling.</para>
</listitem><listitem><para>Starting from the top, entrain whatever fluid the TKE budget permits. Penetrating shortwave radiation is also applied at this point.</para>
</listitem><listitem><para>If there is any unentrained fluid that was formerly in the mixed layer, detrain this fluid into the buffer layer. This is equivalent to the mixed layer detraining to the Monin- Obukhov depth.</para>
</listitem><listitem><para>Divide the fluid in the mixed layer evenly into CSnkml pieces.</para>
</listitem><listitem><para>Split the buffer layer if appropriate. Layers 1 to nkml are the mixed layer, nkml+1 to nkml+nkbl are the buffer layers. The results of this subroutine are mathematically identical if there are multiple pieces of the mixed layer with the same density or if there is just a single layer. There is no stability limit on the time step.</para>
</listitem></orderedlist>
</para>
<para>The key parameters for the mixed layer are found in the control structure. These include mstar, nstar, nstar2, pen_SW_frac, pen_SW_scale, and TKE_decay. For the Oberhuber (1993) mixed layer, the values of these are: pen_SW_frac = 0.42, pen_SW_scale = 15.0 m, mstar = 1.25, nstar = 1, TKE_decay = 2.5, conv_decay = 0.5 TKE_decay is 1/kappa in eq. 28 of Oberhuber (1993), while conv_decay is 1/mu. Conv_decay has been eliminated in favor of the well-calibrated form for the efficiency of penetrating convection from Wang (2003). For a traditional Kraus-Turner mixed layer, the values are: pen_SW_frac = 0.0, pen_SW_scale = 0.0 m, mstar = 1.25, nstar = 0.4, TKE_decay = 0.0, conv_decay = 0.0 <parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="inout">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s grid structure. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="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_3d</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">u_3d</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal velocities interpolated to h points </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">v_3d</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal velocities interpolated to h points </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">tv</parametername>
</parameternamelist>
<parameterdescription>
<para>A structure containing pointers to any available thermodynamic fields. Absent fields have NULL ptrs. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">fluxes</parametername>
</parameternamelist>
<parameterdescription>
<para>A structure containing pointers to any possible forcing fields. Unused fields have NULL ptrs. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dt</parametername>
</parameternamelist>
<parameterdescription>
<para>Time increment [T ~&gt; s]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">ea</parametername>
</parameternamelist>
<parameterdescription>
<para>The amount of fluid moved downward into a </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">eb</parametername>
</parameternamelist>
<parameterdescription>
<para>The amount of fluid moved upward into a </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>The control structure returned by a previous call to mixedlayer_init. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>optics</parametername>
</parameternamelist>
<parameterdescription>
<para>The structure containing the inverse of the vertical absorption decay scale for penetrating shortwave radiation [m-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>hml</parametername>
</parameternamelist>
<parameterdescription>
<para>Active mixed layer depth [Z ~&gt; m]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">aggregate_fw_forcing</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, the net incoming and outgoing surface freshwater fluxes are combined before being applied, instead of being applied separately. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dt_diag</parametername>
</parameternamelist>
<parameterdescription>
<para>The diagnostic time step, which may be less than dt if there are two callse to mixedlayer [T ~&gt; s]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">last_call</parametername>
</parameternamelist>
<parameterdescription>
<para>if true, this is the last call to mixedlayer in the current time step, so diagnostics will be written. The default is .true. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="188" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="190" bodyend="798"/>
        <references refid="namespacemom__opacity_1a21db9da24cea8b875040ba1e7e8b2e9b" compoundref="MOM__opacity_8F90" startline="511" endline="772">mom_opacity::absorbremainingsw</references>
        <references refid="namespacemom__bulk__mixed__layer_1a64f3bec37c0a6dfba1400d03c61399e7" compoundref="MOM__bulk__mixed__layer_8F90" startline="806" endline="930">convective_adjustment</references>
        <references refid="namespacemom__diag__mediator_1aa78e69709084d0097b3e01bbd83d3509" compoundref="MOM__diag__mediator_8F90" startline="3266" endline="3339">mom_diag_mediator::diag_update_remap_grids</references>
        <references refid="namespacemom__domains_1aac3bc012a8c214cbd73bb00668ff165e" compoundref="MOM__domains_8F90" startline="1113" endline="1128">mom_domains::do_group_pass</references>
        <references refid="namespacemom__eos_1a782d326108e390902e520efc078e8296" compoundref="MOM__EOS_8F90" startline="1163" endline="1175">mom_eos::eos_domain</references>
        <references refid="namespacemom__opacity_1a4c1942f798619a9ad854d1152ebcab63" compoundref="MOM__opacity_8F90" startline="446" endline="479">mom_opacity::extract_optics_slice</references>
        <references refid="namespacemom__forcing__type_1a6bf986155aba959222a117ca40ba7e0d" compoundref="MOM__forcing__type_8F90" startline="365" endline="819">mom_forcing_type::extractfluxes1d</references>
        <references refid="namespacemom__bulk__mixed__layer_1a8ab429f040caadc340609ca16aca2e29" compoundref="MOM__bulk__mixed__layer_8F90" startline="1316" endline="1494">find_starting_tke</references>
        <references refid="namespacemom__bulk__mixed__layer_1a8e92dc75114e33498ee9318edbb784d4" compoundref="MOM__bulk__mixed__layer_8F90" startline="152">id_clock_adjustment</references>
        <references refid="namespacemom__bulk__mixed__layer_1aaeabff634c035ff4b91e5ea695123a34" compoundref="MOM__bulk__mixed__layer_8F90" startline="152">id_clock_conv</references>
        <references refid="namespacemom__bulk__mixed__layer_1a834f8c8f259f53f30654ad9273eee648" compoundref="MOM__bulk__mixed__layer_8F90" startline="152" endline="152">id_clock_detrain</references>
        <references refid="namespacemom__bulk__mixed__layer_1a238ec53eac28b48ba8ab226296b363f0" compoundref="MOM__bulk__mixed__layer_8F90" startline="153" endline="153">id_clock_eos</references>
        <references refid="namespacemom__bulk__mixed__layer_1afadd63132ed4d2785d2771dfe33e64d8" compoundref="MOM__bulk__mixed__layer_8F90" startline="152">id_clock_mech</references>
        <references refid="namespacemom__bulk__mixed__layer_1af833f821fed6dc29921f131d80a27b6e" compoundref="MOM__bulk__mixed__layer_8F90" startline="153">id_clock_pass</references>
        <references refid="namespacemom__bulk__mixed__layer_1aa27ed6a6317d7f8031d7c0207fe42c52" compoundref="MOM__bulk__mixed__layer_8F90" startline="153">id_clock_resort</references>
        <references refid="namespacemom__bulk__mixed__layer_1aae11f02b6b843d50866b7e259a7d468a" compoundref="MOM__bulk__mixed__layer_8F90" startline="1503" endline="1835">mechanical_entrainment</references>
        <references refid="namespacemom__bulk__mixed__layer_1a0f75ed48f800138d458b5654d151fe50" compoundref="MOM__bulk__mixed__layer_8F90" startline="943" endline="1308">mixedlayer_convection</references>
        <references refid="namespacemom__bulk__mixed__layer_1aa33a3e7c5e1b18444bf54d37f1c00ad3" compoundref="MOM__bulk__mixed__layer_8F90" startline="3105" endline="3385">mixedlayer_detrain_1</references>
        <references refid="namespacemom__bulk__mixed__layer_1a5f7d06425d0395a7fd4b94942c6465d0" compoundref="MOM__bulk__mixed__layer_8F90" startline="2214" endline="3097">mixedlayer_detrain_2</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__bulk__mixed__layer_1a1378659bc97b52e065a7cfe44166504d" compoundref="MOM__bulk__mixed__layer_8F90" startline="1893" endline="2206">resort_ml</references>
        <references refid="namespacemom__bulk__mixed__layer_1ae4325155d260533b923ba910557945f3" compoundref="MOM__bulk__mixed__layer_8F90" startline="1841" endline="1885">sort_ml</references>
        <referencedby refid="namespacemom__diabatic__driver_1a71d8d849db16be4b87c2650b49f01c82" compoundref="MOM__diabatic__driver_8F90" startline="1855" endline="2812">mom_diabatic_driver::layered_diabatic</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1a64f3bec37c0a6dfba1400d03c61399e7" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_bulk_mixed_layer::convective_adjustment</definition>
        <argsstring>(h, u, v, R0, Rcv, T, S, eps, d_eb, dKE_CA, cTKE, j, G, GV, US, CS, nz_conv)</argsstring>
        <name>convective_adjustment</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>u</type>
          <defname>u</defname>
        </param>
        <param>
          <type>v</type>
          <defname>v</defname>
        </param>
        <param>
          <type>R0</type>
          <defname>R0</defname>
        </param>
        <param>
          <type>Rcv</type>
          <defname>Rcv</defname>
        </param>
        <param>
          <type>T</type>
          <defname>T</defname>
        </param>
        <param>
          <type>S</type>
          <defname>S</defname>
        </param>
        <param>
          <type>eps</type>
          <defname>eps</defname>
        </param>
        <param>
          <type>d_eb</type>
          <defname>d_eb</defname>
        </param>
        <param>
          <type>dKE_CA</type>
          <defname>dKE_CA</defname>
        </param>
        <param>
          <type>cTKE</type>
          <defname>cTKE</defname>
        </param>
        <param>
          <type>j</type>
          <defname>j</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>nz_conv</type>
          <defname>nz_conv</defname>
        </param>
        <briefdescription>
<para>This subroutine does instantaneous convective entrainment into the buffer layers and mixed layers to remove hydrostatic instabilities. Any water that is lighter than currently in the mixed- or buffer- layer is entrained. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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="inout">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2]. The units of h are referred to as H below. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">u</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal velocities interpolated to h points [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">v</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal velocities interpolated to h points [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">t</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer temperatures [degC]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">s</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer salinities [ppt]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">r0</parametername>
</parameternamelist>
<parameterdescription>
<para>Potential density referenced to surface pressure [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">rcv</parametername>
</parameternamelist>
<parameterdescription>
<para>The coordinate defining potential density [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">d_eb</parametername>
</parameternamelist>
<parameterdescription>
<para>The downward increase across a layer in the entrainment from below [H ~&gt; m or kg m-2]. Positive values go with mass gain by a layer. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">eps</parametername>
</parameternamelist>
<parameterdescription>
<para>The negligibly small amount of water that will be left in each layer [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">dke_ca</parametername>
</parameternamelist>
<parameterdescription>
<para>The vertically integrated change in kinetic energy due to convective adjustment [Z L2 T-2 ~&gt; m3 s-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ctke</parametername>
</parameternamelist>
<parameterdescription>
<para>The buoyant turbulent kinetic energy source due to convective adjustment [Z L2 T-2 ~&gt; m3 s-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">j</parametername>
</parameternamelist>
<parameterdescription>
<para>The j-index to work on. </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>The control structure for this module. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">nz_conv</parametername>
</parameternamelist>
<parameterdescription>
<para>If present, the number of layers over which to do convective adjustment (perhaps CSnkml). </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="804" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="806" bodyend="930"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1a0f75ed48f800138d458b5654d151fe50" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_bulk_mixed_layer::mixedlayer_convection</definition>
        <argsstring>(h, d_eb, htot, Ttot, Stot, uhtot, vhtot, R0_tot, Rcv_tot, u, v, T, S, R0, Rcv, eps, dR0_dT, dRcv_dT, dR0_dS, dRcv_dS, netMassInOut, netMassOut, Net_heat, Net_salt, nsw, Pen_SW_bnd, opacity_band, Conv_En, dKE_FC, j, ksort, G, GV, US, CS, tv, fluxes, dt, aggregate_FW_forcing)</argsstring>
        <name>mixedlayer_convection</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>d_eb</type>
          <defname>d_eb</defname>
        </param>
        <param>
          <type>htot</type>
          <defname>htot</defname>
        </param>
        <param>
          <type>Ttot</type>
          <defname>Ttot</defname>
        </param>
        <param>
          <type>Stot</type>
          <defname>Stot</defname>
        </param>
        <param>
          <type>uhtot</type>
          <defname>uhtot</defname>
        </param>
        <param>
          <type>vhtot</type>
          <defname>vhtot</defname>
        </param>
        <param>
          <type>R0_tot</type>
          <defname>R0_tot</defname>
        </param>
        <param>
          <type>Rcv_tot</type>
          <defname>Rcv_tot</defname>
        </param>
        <param>
          <type>u</type>
          <defname>u</defname>
        </param>
        <param>
          <type>v</type>
          <defname>v</defname>
        </param>
        <param>
          <type>T</type>
          <defname>T</defname>
        </param>
        <param>
          <type>S</type>
          <defname>S</defname>
        </param>
        <param>
          <type>R0</type>
          <defname>R0</defname>
        </param>
        <param>
          <type>Rcv</type>
          <defname>Rcv</defname>
        </param>
        <param>
          <type>eps</type>
          <defname>eps</defname>
        </param>
        <param>
          <type>dR0_dT</type>
          <defname>dR0_dT</defname>
        </param>
        <param>
          <type>dRcv_dT</type>
          <defname>dRcv_dT</defname>
        </param>
        <param>
          <type>dR0_dS</type>
          <defname>dR0_dS</defname>
        </param>
        <param>
          <type>dRcv_dS</type>
          <defname>dRcv_dS</defname>
        </param>
        <param>
          <type>netMassInOut</type>
          <defname>netMassInOut</defname>
        </param>
        <param>
          <type>netMassOut</type>
          <defname>netMassOut</defname>
        </param>
        <param>
          <type>Net_heat</type>
          <defname>Net_heat</defname>
        </param>
        <param>
          <type>Net_salt</type>
          <defname>Net_salt</defname>
        </param>
        <param>
          <type>nsw</type>
          <defname>nsw</defname>
        </param>
        <param>
          <type>Pen_SW_bnd</type>
          <defname>Pen_SW_bnd</defname>
        </param>
        <param>
          <type>opacity_band</type>
          <defname>opacity_band</defname>
        </param>
        <param>
          <type>Conv_En</type>
          <defname>Conv_En</defname>
        </param>
        <param>
          <type>dKE_FC</type>
          <defname>dKE_FC</defname>
        </param>
        <param>
          <type>j</type>
          <defname>j</defname>
        </param>
        <param>
          <type>ksort</type>
          <defname>ksort</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>tv</type>
          <defname>tv</defname>
        </param>
        <param>
          <type>fluxes</type>
          <defname>fluxes</defname>
        </param>
        <param>
          <type>dt</type>
          <defname>dt</defname>
        </param>
        <param>
          <type>aggregate_FW_forcing</type>
          <defname>aggregate_FW_forcing</defname>
        </param>
        <briefdescription>
<para>This subroutine causes the mixed layer to entrain to the depth of free convection. The depth of free convection is the shallowest depth at which the fluid is denser than the average of the fluid above. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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="inout">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">d_eb</parametername>
</parameternamelist>
<parameterdescription>
<para>The downward increase across a layer in the </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">htot</parametername>
</parameternamelist>
<parameterdescription>
<para>The accumulated mixed layer thickness [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ttot</parametername>
</parameternamelist>
<parameterdescription>
<para>The depth integrated mixed layer temperature [degC H ~&gt; degC m or degC kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">stot</parametername>
</parameternamelist>
<parameterdescription>
<para>The depth integrated mixed layer salinity [ppt H ~&gt; ppt m or ppt kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">uhtot</parametername>
</parameternamelist>
<parameterdescription>
<para>The depth integrated mixed layer zonal velocity [H L T-1 ~&gt; m2 s-1 or kg m-1 s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">vhtot</parametername>
</parameternamelist>
<parameterdescription>
<para>The integrated mixed layer meridional velocity [H L T-1 ~&gt; m2 s-1 or kg m-1 s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">r0_tot</parametername>
</parameternamelist>
<parameterdescription>
<para>The integrated mixed layer potential density referenced to 0 pressure [H R ~&gt; kg m-2 or kg2 m-5]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">rcv_tot</parametername>
</parameternamelist>
<parameterdescription>
<para>The integrated mixed layer coordinate variable potential density [H R ~&gt; kg m-2 or kg2 m-5]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">u</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal velocities interpolated to h points [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">v</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal velocities interpolated to h points [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">t</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer temperatures [degC]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">s</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer salinities [ppt]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">r0</parametername>
</parameternamelist>
<parameterdescription>
<para>Potential density referenced to </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">rcv</parametername>
</parameternamelist>
<parameterdescription>
<para>The coordinate defining potential </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">eps</parametername>
</parameternamelist>
<parameterdescription>
<para>The negligibly small amount of water </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dr0_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of R0 with respect to temperature [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of Rcv with respect to temperature [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dr0_ds</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of R0 with respect to salinity [R ppt-1 ~&gt; kg m-3 ppt-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_ds</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of Rcv with respect to salinity [R ppt-1 ~&gt; kg m-3 ppt-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">netmassinout</parametername>
</parameternamelist>
<parameterdescription>
<para>The net mass flux (if non-Boussinesq) or volume flux (if Boussinesq) into the ocean within a time step [H ~&gt; m or kg m-2]. (I.e. P+R-E.) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">netmassout</parametername>
</parameternamelist>
<parameterdescription>
<para>The mass or volume flux out of the ocean within a time step [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">net_heat</parametername>
</parameternamelist>
<parameterdescription>
<para>The net heating at the surface over a time step [degC H ~&gt; degC m or degC kg m-2]. Any penetrating shortwave radiation is not included in Net_heat. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">net_salt</parametername>
</parameternamelist>
<parameterdescription>
<para>The net surface salt flux into the ocean over a time step [ppt H ~&gt; ppt m or ppt kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">nsw</parametername>
</parameternamelist>
<parameterdescription>
<para>The number of bands of penetrating shortwave radiation. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">pen_sw_bnd</parametername>
</parameternamelist>
<parameterdescription>
<para>The penetrating shortwave heating at the sea surface in each penetrating band [degC H ~&gt; degC m or degC kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">opacity_band</parametername>
</parameternamelist>
<parameterdescription>
<para>The opacity in each band of penetrating shortwave radiation [H-1 ~&gt; m-1 or m2 kg-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">conv_en</parametername>
</parameternamelist>
<parameterdescription>
<para>The buoyant turbulent kinetic energy source due to free convection [Z L2 T-2 ~&gt; m3 s-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">dke_fc</parametername>
</parameternamelist>
<parameterdescription>
<para>The vertically integrated change in kinetic energy due to free convection [Z L2 T-2 ~&gt; m3 s-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">j</parametername>
</parameternamelist>
<parameterdescription>
<para>The j-index to work on. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ksort</parametername>
</parameternamelist>
<parameterdescription>
<para>The density-sorted k-indices. </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>The control structure for this module. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">tv</parametername>
</parameternamelist>
<parameterdescription>
<para>A structure containing pointers to any available thermodynamic fields. Absent fields have NULL ptrs. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">fluxes</parametername>
</parameternamelist>
<parameterdescription>
<para>A structure containing pointers to any possible forcing fields. Unused fields have NULL ptrs. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dt</parametername>
</parameternamelist>
<parameterdescription>
<para>Time increment [T ~&gt; s]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">aggregate_fw_forcing</parametername>
</parameternamelist>
<parameterdescription>
<para>If true, the net incoming and outgoing surface freshwater fluxes are combined before being applied, instead of being applied separately. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="936" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="943" bodyend="1308"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1a8ab429f040caadc340609ca16aca2e29" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_bulk_mixed_layer::find_starting_tke</definition>
        <argsstring>(htot, h_CA, fluxes, Conv_En, cTKE, dKE_FC, dKE_CA, TKE, TKE_river, Idecay_len_TKE, cMKE, dt, Idt_diag, j, ksort, G, GV, US, CS)</argsstring>
        <name>find_starting_tke</name>
        <param>
          <type>htot</type>
          <defname>htot</defname>
        </param>
        <param>
          <type>h_CA</type>
          <defname>h_CA</defname>
        </param>
        <param>
          <type>fluxes</type>
          <defname>fluxes</defname>
        </param>
        <param>
          <type>Conv_En</type>
          <defname>Conv_En</defname>
        </param>
        <param>
          <type>cTKE</type>
          <defname>cTKE</defname>
        </param>
        <param>
          <type>dKE_FC</type>
          <defname>dKE_FC</defname>
        </param>
        <param>
          <type>dKE_CA</type>
          <defname>dKE_CA</defname>
        </param>
        <param>
          <type>TKE</type>
          <defname>TKE</defname>
        </param>
        <param>
          <type>TKE_river</type>
          <defname>TKE_river</defname>
        </param>
        <param>
          <type>Idecay_len_TKE</type>
          <defname>Idecay_len_TKE</defname>
        </param>
        <param>
          <type>cMKE</type>
          <defname>cMKE</defname>
        </param>
        <param>
          <type>dt</type>
          <defname>dt</defname>
        </param>
        <param>
          <type>Idt_diag</type>
          <defname>Idt_diag</defname>
        </param>
        <param>
          <type>j</type>
          <defname>j</defname>
        </param>
        <param>
          <type>ksort</type>
          <defname>ksort</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>This subroutine determines the TKE available at the depth of free convection to drive mechanical entrainment. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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">htot</parametername>
</parameternamelist>
<parameterdescription>
<para>The accumulated mixed layer thickness [H ~&gt; m or kg m-2] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">h_ca</parametername>
</parameternamelist>
<parameterdescription>
<para>The mixed layer depth after convective adjustment [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">fluxes</parametername>
</parameternamelist>
<parameterdescription>
<para>A structure containing pointers to any possible forcing fields. Unused fields have NULL ptrs. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">conv_en</parametername>
</parameternamelist>
<parameterdescription>
<para>The buoyant turbulent kinetic energy source due to free convection [Z L2 T-2 ~&gt; m3 s-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dke_fc</parametername>
</parameternamelist>
<parameterdescription>
<para>The vertically integrated change in kinetic energy due to free convection [Z L2 T-2 ~&gt; m3 s-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ctke</parametername>
</parameternamelist>
<parameterdescription>
<para>The buoyant turbulent kinetic energy </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dke_ca</parametername>
</parameternamelist>
<parameterdescription>
<para>The vertically integrated change in </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">tke</parametername>
</parameternamelist>
<parameterdescription>
<para>The turbulent kinetic energy available for mixing over a time step [Z m2 T-2 ~&gt; m3 s-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">idecay_len_tke</parametername>
</parameternamelist>
<parameterdescription>
<para>The inverse of the vertical decay scale for TKE [H-1 ~&gt; m-1 or m2 kg-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">tke_river</parametername>
</parameternamelist>
<parameterdescription>
<para>The source of turbulent kinetic energy available for driving mixing at river mouths [Z L2 T-3 ~&gt; m3 s-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">cmke</parametername>
</parameternamelist>
<parameterdescription>
<para>Coefficients of HpE and HpE^2 in calculating the denominator of MKE_rate, [H-1 ~&gt; m-1 or m2 kg-1] and [H-2 ~&gt; m-2 or m4 kg-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The time step [T ~&gt; s]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">idt_diag</parametername>
</parameternamelist>
<parameterdescription>
<para>The inverse of the accumulated diagnostic time interval [T-1 ~&gt; s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">j</parametername>
</parameternamelist>
<parameterdescription>
<para>The j-index to work on. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ksort</parametername>
</parameternamelist>
<parameterdescription>
<para>The density-sorted k-indicies. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>The control structure for this module. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="1313" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="1316" bodyend="1494"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1aae11f02b6b843d50866b7e259a7d468a" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_bulk_mixed_layer::mechanical_entrainment</definition>
        <argsstring>(h, d_eb, htot, Ttot, Stot, uhtot, vhtot, R0_tot, Rcv_tot, u, v, T, S, R0, Rcv, eps, dR0_dT, dRcv_dT, cMKE, Idt_diag, nsw, Pen_SW_bnd, opacity_band, TKE, Idecay_len_TKE, j, ksort, G, GV, US, CS)</argsstring>
        <name>mechanical_entrainment</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>d_eb</type>
          <defname>d_eb</defname>
        </param>
        <param>
          <type>htot</type>
          <defname>htot</defname>
        </param>
        <param>
          <type>Ttot</type>
          <defname>Ttot</defname>
        </param>
        <param>
          <type>Stot</type>
          <defname>Stot</defname>
        </param>
        <param>
          <type>uhtot</type>
          <defname>uhtot</defname>
        </param>
        <param>
          <type>vhtot</type>
          <defname>vhtot</defname>
        </param>
        <param>
          <type>R0_tot</type>
          <defname>R0_tot</defname>
        </param>
        <param>
          <type>Rcv_tot</type>
          <defname>Rcv_tot</defname>
        </param>
        <param>
          <type>u</type>
          <defname>u</defname>
        </param>
        <param>
          <type>v</type>
          <defname>v</defname>
        </param>
        <param>
          <type>T</type>
          <defname>T</defname>
        </param>
        <param>
          <type>S</type>
          <defname>S</defname>
        </param>
        <param>
          <type>R0</type>
          <defname>R0</defname>
        </param>
        <param>
          <type>Rcv</type>
          <defname>Rcv</defname>
        </param>
        <param>
          <type>eps</type>
          <defname>eps</defname>
        </param>
        <param>
          <type>dR0_dT</type>
          <defname>dR0_dT</defname>
        </param>
        <param>
          <type>dRcv_dT</type>
          <defname>dRcv_dT</defname>
        </param>
        <param>
          <type>cMKE</type>
          <defname>cMKE</defname>
        </param>
        <param>
          <type>Idt_diag</type>
          <defname>Idt_diag</defname>
        </param>
        <param>
          <type>nsw</type>
          <defname>nsw</defname>
        </param>
        <param>
          <type>Pen_SW_bnd</type>
          <defname>Pen_SW_bnd</defname>
        </param>
        <param>
          <type>opacity_band</type>
          <defname>opacity_band</defname>
        </param>
        <param>
          <type>TKE</type>
          <defname>TKE</defname>
        </param>
        <param>
          <type>Idecay_len_TKE</type>
          <defname>Idecay_len_TKE</defname>
        </param>
        <param>
          <type>j</type>
          <defname>j</defname>
        </param>
        <param>
          <type>ksort</type>
          <defname>ksort</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>This subroutine calculates mechanically driven entrainment. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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="inout">d_eb</parametername>
</parameternamelist>
<parameterdescription>
<para>The downward increase across a layer in the </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">htot</parametername>
</parameternamelist>
<parameterdescription>
<para>The accumlated mixed layer thickness [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">ttot</parametername>
</parameternamelist>
<parameterdescription>
<para>The depth integrated mixed layer temperature [degC H ~&gt; degC m or degC kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">stot</parametername>
</parameternamelist>
<parameterdescription>
<para>The depth integrated mixed layer salinity [ppt H ~&gt; ppt m or ppt kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">uhtot</parametername>
</parameternamelist>
<parameterdescription>
<para>The depth integrated mixed layer zonal velocity [H L T-1 ~&gt; m2 s-1 or kg m-1 s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">vhtot</parametername>
</parameternamelist>
<parameterdescription>
<para>The integrated mixed layer meridional velocity [H L T-1 ~&gt; m2 s-1 or kg m-1 s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">r0_tot</parametername>
</parameternamelist>
<parameterdescription>
<para>The integrated mixed layer potential density referenced to 0 pressure [H R ~&gt; kg m-2 or kg2 m-5]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">rcv_tot</parametername>
</parameternamelist>
<parameterdescription>
<para>The integrated mixed layer coordinate variable potential density [H R ~&gt; kg m-2 or kg2 m-5]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">u</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal velocities interpolated to h points [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">v</parametername>
</parameternamelist>
<parameterdescription>
<para>Zonal velocities interpolated to h points [L T-1 ~&gt; m s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">t</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer temperatures [degC]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">s</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer salinities [ppt]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">r0</parametername>
</parameternamelist>
<parameterdescription>
<para>Potential density referenced to </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">rcv</parametername>
</parameternamelist>
<parameterdescription>
<para>The coordinate defining potential </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">eps</parametername>
</parameternamelist>
<parameterdescription>
<para>The negligibly small amount of water </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dr0_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of R0 with respect to temperature [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of Rcv with respect to temperature [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">cmke</parametername>
</parameternamelist>
<parameterdescription>
<para>Coefficients of HpE and HpE^2 used in calculating the denominator of MKE_rate; the two elements have differing units of [H-1 ~&gt; m-1 or m2 kg-1] and [H-2 ~&gt; m-2 or m4 kg-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">idt_diag</parametername>
</parameternamelist>
<parameterdescription>
<para>The inverse of the accumulated diagnostic time interval [T-1 ~&gt; s-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">nsw</parametername>
</parameternamelist>
<parameterdescription>
<para>The number of bands of penetrating shortwave radiation. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">pen_sw_bnd</parametername>
</parameternamelist>
<parameterdescription>
<para>The penetrating shortwave heating at the sea surface in each penetrating band [degC H ~&gt; degC m or degC kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">opacity_band</parametername>
</parameternamelist>
<parameterdescription>
<para>The opacity in each band of penetrating shortwave radiation [H-1 ~&gt; m-1 or m2 kg-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">tke</parametername>
</parameternamelist>
<parameterdescription>
<para>The turbulent kinetic energy available for mixing over a time step [Z m2 T-2 ~&gt; m3 s-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">idecay_len_tke</parametername>
</parameternamelist>
<parameterdescription>
<para>The vertical TKE decay rate [H-1 ~&gt; m-1 or m2 kg-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">j</parametername>
</parameternamelist>
<parameterdescription>
<para>The j-index to work on. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ksort</parametername>
</parameternamelist>
<parameterdescription>
<para>The density-sorted k-indicies. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>The control structure for this module. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="1498" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="1503" bodyend="1835"/>
        <references refid="namespacemom__bulk__mixed__layer_1a4ac89b3858f2c7c0ac6f8ac8f93b5e44" compoundref="MOM__bulk__mixed__layer_8F90" startline="3694" endline="3711">ef4</references>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1ae4325155d260533b923ba910557945f3" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_bulk_mixed_layer::sort_ml</definition>
        <argsstring>(h, R0, eps, G, GV, CS, ksort)</argsstring>
        <name>sort_ml</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>R0</type>
          <defname>R0</defname>
        </param>
        <param>
          <type>eps</type>
          <defname>eps</defname>
        </param>
        <param>
          <type>G</type>
          <defname>G</defname>
        </param>
        <param>
          <type>GV</type>
          <defname>GV</defname>
        </param>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>ksort</type>
          <defname>ksort</defname>
        </param>
        <briefdescription>
<para>This subroutine generates an array of indices that are sorted by layer density. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">r0</parametername>
</parameternamelist>
<parameterdescription>
<para>The potential density used to sort the layers [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">eps</parametername>
</parameternamelist>
<parameterdescription>
<para>The (small) thickness that must remain in each layer [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>The control structure returned by a previous call to mixedlayer_init. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">ksort</parametername>
</parameternamelist>
<parameterdescription>
<para>The k-index to use in the sort. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="1840" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="1841" bodyend="1885"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1a1378659bc97b52e065a7cfe44166504d" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_bulk_mixed_layer::resort_ml</definition>
        <argsstring>(h, T, S, R0, Rcv, RcvTgt, eps, d_ea, d_eb, ksort, G, GV, CS, dR0_dT, dR0_dS, dRcv_dT, dRcv_dS)</argsstring>
        <name>resort_ml</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>T</type>
          <defname>T</defname>
        </param>
        <param>
          <type>S</type>
          <defname>S</defname>
        </param>
        <param>
          <type>R0</type>
          <defname>R0</defname>
        </param>
        <param>
          <type>Rcv</type>
          <defname>Rcv</defname>
        </param>
        <param>
          <type>RcvTgt</type>
          <defname>RcvTgt</defname>
        </param>
        <param>
          <type>eps</type>
          <defname>eps</defname>
        </param>
        <param>
          <type>d_ea</type>
          <defname>d_ea</defname>
        </param>
        <param>
          <type>d_eb</type>
          <defname>d_eb</defname>
        </param>
        <param>
          <type>ksort</type>
          <defname>ksort</defname>
        </param>
        <param>
          <type>G</type>
          <defname>G</defname>
        </param>
        <param>
          <type>GV</type>
          <defname>GV</defname>
        </param>
        <param>
          <type>CS</type>
          <defname>CS</defname>
        </param>
        <param>
          <type>dR0_dT</type>
          <defname>dR0_dT</defname>
        </param>
        <param>
          <type>dR0_dS</type>
          <defname>dR0_dS</defname>
        </param>
        <param>
          <type>dRcv_dT</type>
          <defname>dRcv_dT</defname>
        </param>
        <param>
          <type>dRcv_dS</type>
          <defname>dRcv_dS</defname>
        </param>
        <briefdescription>
<para>This subroutine actually moves properties between layers to achieve a resorted state, with all of the resorted water either moved into the correct interior layers or in the top nkmb layers. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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="inout">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2]. Layer 0 is the new mixed layer. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">t</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer temperatures [degC]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">s</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer salinities [ppt]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">r0</parametername>
</parameternamelist>
<parameterdescription>
<para>Potential density referenced to surface pressure [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">rcv</parametername>
</parameternamelist>
<parameterdescription>
<para>The coordinate defining potential density [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">rcvtgt</parametername>
</parameternamelist>
<parameterdescription>
<para>The target value of Rcv for each layer [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">eps</parametername>
</parameternamelist>
<parameterdescription>
<para>The (small) thickness that must remain in each layer [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">d_ea</parametername>
</parameternamelist>
<parameterdescription>
<para>The upward increase across a layer in the entrainment from above [H ~&gt; m or kg m-2]. Positive d_ea goes with layer thickness increases. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">d_eb</parametername>
</parameternamelist>
<parameterdescription>
<para>The downward increase across a layer in the entrainment from below [H ~&gt; m or kg m-2]. Positive values go with mass gain by a layer. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">ksort</parametername>
</parameternamelist>
<parameterdescription>
<para>The density-sorted k-indicies. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>The control structure for this module. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dr0_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of potential density referenced to the surface with potential temperature [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dr0_ds</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of cpotential density referenced to the surface with salinity, [R ppt-1 ~&gt; kg m-3 ppt-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of coordinate defining potential density with potential temperature [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_ds</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of coordinate defining potential density with salinity, [R ppt-1 ~&gt; kg m-3 ppt-1]. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="1891" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="1893" bodyend="2206"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1a5f7d06425d0395a7fd4b94942c6465d0" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_bulk_mixed_layer::mixedlayer_detrain_2</definition>
        <argsstring>(h, T, S, R0, Rcv, RcvTgt, dt, dt_diag, d_ea, j, G, GV, US, CS, dR0_dT, dR0_dS, dRcv_dT, dRcv_dS, max_BL_det)</argsstring>
        <name>mixedlayer_detrain_2</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>T</type>
          <defname>T</defname>
        </param>
        <param>
          <type>S</type>
          <defname>S</defname>
        </param>
        <param>
          <type>R0</type>
          <defname>R0</defname>
        </param>
        <param>
          <type>Rcv</type>
          <defname>Rcv</defname>
        </param>
        <param>
          <type>RcvTgt</type>
          <defname>RcvTgt</defname>
        </param>
        <param>
          <type>dt</type>
          <defname>dt</defname>
        </param>
        <param>
          <type>dt_diag</type>
          <defname>dt_diag</defname>
        </param>
        <param>
          <type>d_ea</type>
          <defname>d_ea</defname>
        </param>
        <param>
          <type>j</type>
          <defname>j</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>dR0_dT</type>
          <defname>dR0_dT</defname>
        </param>
        <param>
          <type>dR0_dS</type>
          <defname>dR0_dS</defname>
        </param>
        <param>
          <type>dRcv_dT</type>
          <defname>dRcv_dT</defname>
        </param>
        <param>
          <type>dRcv_dS</type>
          <defname>dRcv_dS</defname>
        </param>
        <param>
          <type>max_BL_det</type>
          <defname>max_BL_det</defname>
        </param>
        <briefdescription>
<para>This subroutine moves any water left in the former mixed layers into the two buffer layers and may also move buffer layer water into the interior isopycnal layers. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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="inout">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2]. Layer 0 is the new mixed layer. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">t</parametername>
</parameternamelist>
<parameterdescription>
<para>Potential temperature [degC]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">s</parametername>
</parameternamelist>
<parameterdescription>
<para>Salinity [ppt]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">r0</parametername>
</parameternamelist>
<parameterdescription>
<para>Potential density referenced to surface pressure [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">rcv</parametername>
</parameternamelist>
<parameterdescription>
<para>The coordinate defining potential density [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">rcvtgt</parametername>
</parameternamelist>
<parameterdescription>
<para>The target value of Rcv for each layer [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dt</parametername>
</parameternamelist>
<parameterdescription>
<para>Time increment [T ~&gt; s]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dt_diag</parametername>
</parameternamelist>
<parameterdescription>
<para>The diagnostic time step [T ~&gt; s]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">d_ea</parametername>
</parameternamelist>
<parameterdescription>
<para>The upward increase across a layer in the entrainment from above [H ~&gt; m or kg m-2]. Positive d_ea goes with layer thickness increases. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">j</parametername>
</parameternamelist>
<parameterdescription>
<para>The meridional row to work on. </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>The control structure returned by a previous call to mixedlayer_init. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dr0_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of potential density referenced to the surface with potential temperature, [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dr0_ds</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of cpotential density referenced to the surface with salinity [R ppt-1 ~&gt; kg m-3 ppt-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of coordinate defining potential density with potential temperature, [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_ds</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of coordinate defining potential density with salinity [R ppt-1 ~&gt; kg m-3 ppt-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">max_bl_det</parametername>
</parameternamelist>
<parameterdescription>
<para>If non-negative, the maximum detrainment permitted from the buffer layers [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="2212" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="2214" bodyend="3097"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1aa33a3e7c5e1b18444bf54d37f1c00ad3" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_bulk_mixed_layer::mixedlayer_detrain_1</definition>
        <argsstring>(h, T, S, R0, Rcv, RcvTgt, dt, dt_diag, d_ea, d_eb, j, G, GV, US, CS, dRcv_dT, dRcv_dS, max_BL_det)</argsstring>
        <name>mixedlayer_detrain_1</name>
        <param>
          <type>h</type>
          <defname>h</defname>
        </param>
        <param>
          <type>T</type>
          <defname>T</defname>
        </param>
        <param>
          <type>S</type>
          <defname>S</defname>
        </param>
        <param>
          <type>R0</type>
          <defname>R0</defname>
        </param>
        <param>
          <type>Rcv</type>
          <defname>Rcv</defname>
        </param>
        <param>
          <type>RcvTgt</type>
          <defname>RcvTgt</defname>
        </param>
        <param>
          <type>dt</type>
          <defname>dt</defname>
        </param>
        <param>
          <type>dt_diag</type>
          <defname>dt_diag</defname>
        </param>
        <param>
          <type>d_ea</type>
          <defname>d_ea</defname>
        </param>
        <param>
          <type>d_eb</type>
          <defname>d_eb</defname>
        </param>
        <param>
          <type>j</type>
          <defname>j</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>dRcv_dT</type>
          <defname>dRcv_dT</defname>
        </param>
        <param>
          <type>dRcv_dS</type>
          <defname>dRcv_dS</defname>
        </param>
        <param>
          <type>max_BL_det</type>
          <defname>max_BL_det</defname>
        </param>
        <briefdescription>
<para>This subroutine moves any water left in the former mixed layers into the single buffer layers and may also move buffer layer water into the interior isopycnal layers. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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="inout">h</parametername>
</parameternamelist>
<parameterdescription>
<para>Layer thickness [H ~&gt; m or kg m-2]. Layer 0 is the new mixed layer. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">t</parametername>
</parameternamelist>
<parameterdescription>
<para>Potential temperature [degC]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">s</parametername>
</parameternamelist>
<parameterdescription>
<para>Salinity [ppt]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">r0</parametername>
</parameternamelist>
<parameterdescription>
<para>Potential density referenced to surface pressure [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">rcv</parametername>
</parameternamelist>
<parameterdescription>
<para>The coordinate defining potential density [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">rcvtgt</parametername>
</parameternamelist>
<parameterdescription>
<para>The target value of Rcv for each layer [R ~&gt; kg m-3]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dt</parametername>
</parameternamelist>
<parameterdescription>
<para>Time increment [T ~&gt; s]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">dt_diag</parametername>
</parameternamelist>
<parameterdescription>
<para>The accumulated time interval for diagnostics [T ~&gt; s]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">d_ea</parametername>
</parameternamelist>
<parameterdescription>
<para>The upward increase across a layer in the entrainment from above [H ~&gt; m or kg m-2]. Positive d_ea goes with layer thickness increases. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">d_eb</parametername>
</parameternamelist>
<parameterdescription>
<para>The downward increase across a layer in the entrainment from below [H ~&gt; m or kg m-2]. Positive values go with mass gain by a layer. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">j</parametername>
</parameternamelist>
<parameterdescription>
<para>The meridional row to work on. </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>The control structure returned by a previous call to mixedlayer_init. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_dt</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of coordinate defining potential density with potential temperature [R degC-1 ~&gt; kg m-3 degC-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">drcv_ds</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of coordinate defining potential density with salinity [R ppt-1 ~&gt; kg m-3 ppt-1]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">max_bl_det</parametername>
</parameternamelist>
<parameterdescription>
<para>If non-negative, the maximum detrainment permitted from the buffer layers [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="3103" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="3105" bodyend="3385"/>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <referencedby refid="namespacemom__bulk__mixed__layer_1ad6b69cad68bd88aa1deee0481fd3cc59" compoundref="MOM__bulk__mixed__layer_8F90" startline="190" endline="798">bulkmixedlayer</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1a14f3b36851c81d60fb31ff86870a7d54" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine, public</type>
        <definition>subroutine, public mom_bulk_mixed_layer::bulkmixedlayer_init</definition>
        <argsstring>(Time, G, GV, US, param_file, diag, CS)</argsstring>
        <name>bulkmixedlayer_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>This subroutine initializes the MOM bulk mixed layer module. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">time</parametername>
</parameternamelist>
<parameterdescription>
<para>The model&apos;s clock with the current time. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">g</parametername>
</parameternamelist>
<parameterdescription>
<para>The ocean&apos;s 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>A structure to parse for run-time parameters. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">diag</parametername>
</parameternamelist>
<parameterdescription>
<para>A structure that is used to regulate diagnostic output. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>cs</parametername>
</parameternamelist>
<parameterdescription>
<para>A pointer that is set to point to the control structure for this module. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="3389" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="3390" bodyend="3685"/>
        <references refid="namespacemom__cpu__clock_1a7fda795074ed5ec5b00a26e7531c14f3" compoundref="MOM__cpu__clock_8F90" startline="23" endline="39">mom_cpu_clock::cpu_clock_id</references>
        <references refid="namespacemom__bulk__mixed__layer_1a8e92dc75114e33498ee9318edbb784d4" compoundref="MOM__bulk__mixed__layer_8F90" startline="152">id_clock_adjustment</references>
        <references refid="namespacemom__bulk__mixed__layer_1aaeabff634c035ff4b91e5ea695123a34" compoundref="MOM__bulk__mixed__layer_8F90" startline="152">id_clock_conv</references>
        <references refid="namespacemom__bulk__mixed__layer_1a834f8c8f259f53f30654ad9273eee648" compoundref="MOM__bulk__mixed__layer_8F90" startline="152" endline="152">id_clock_detrain</references>
        <references refid="namespacemom__bulk__mixed__layer_1a238ec53eac28b48ba8ab226296b363f0" compoundref="MOM__bulk__mixed__layer_8F90" startline="153" endline="153">id_clock_eos</references>
        <references refid="namespacemom__bulk__mixed__layer_1afadd63132ed4d2785d2771dfe33e64d8" compoundref="MOM__bulk__mixed__layer_8F90" startline="152">id_clock_mech</references>
        <references refid="namespacemom__bulk__mixed__layer_1af833f821fed6dc29921f131d80a27b6e" compoundref="MOM__bulk__mixed__layer_8F90" startline="153">id_clock_pass</references>
        <references refid="namespacemom__bulk__mixed__layer_1aa27ed6a6317d7f8031d7c0207fe42c52" compoundref="MOM__bulk__mixed__layer_8F90" startline="153">id_clock_resort</references>
        <references refid="namespacemom__error__handler_1a460cfb79a06c29fc249952c2a3710d67" compoundref="MOM__error__handler_8F90" startline="72" endline="92">mom_error_handler::mom_error</references>
        <referencedby refid="namespacemom__diabatic__driver_1a51d273bae7e5d2217fa5498620532888" compoundref="MOM__diabatic__driver_8F90" startline="3147" endline="3727">mom_diabatic_driver::diabatic_driver_init</referencedby>
      </memberdef>
      <memberdef kind="function" id="namespacemom__bulk__mixed__layer_1a4ac89b3858f2c7c0ac6f8ac8f93b5e44" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>real function</type>
        <definition>real function mom_bulk_mixed_layer::ef4</definition>
        <argsstring>(Ht, En, I_L, dR_de)</argsstring>
        <name>ef4</name>
        <param>
          <type>Ht</type>
          <defname>Ht</defname>
        </param>
        <param>
          <type>En</type>
          <defname>En</defname>
        </param>
        <param>
          <type>I_L</type>
          <defname>I_L</defname>
        </param>
        <param>
          <type>dR_de</type>
          <defname>dR_de</defname>
        </param>
        <briefdescription>
<para>This subroutine returns an approximation to the integral R = exp(-L*(H+E)) integral(LH to L(H+E)) L/(1-(1+x)exp(-x)) dx. The approximation to the integrand is good to within -2% at x~.3 and +25% at x~3.5, but the exponential deemphasizes the importance of large x. When L=0, EF4 returns E/((Ht+E)*Ht). </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">ht</parametername>
</parameternamelist>
<parameterdescription>
<para>Total thickness [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">en</parametername>
</parameternamelist>
<parameterdescription>
<para>Entrainment [H ~&gt; m or kg m-2]. </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">i_l</parametername>
</parameternamelist>
<parameterdescription>
<para>The e-folding scale [H-1 ~&gt; m-1 or m2 kg-1] </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="inout">dr_de</parametername>
</parameternamelist>
<parameterdescription>
<para>The partial derivative of the result R with E [H-2 ~&gt; m-2 or m4 kg-2]. </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The integral [H-1 ~&gt; m-1 or m2 kg-1]. </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="3693" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" bodystart="3694" bodyend="3711"/>
        <referencedby refid="namespacemom__bulk__mixed__layer_1aae11f02b6b843d50866b7e259a7d468a" compoundref="MOM__bulk__mixed__layer_8F90" startline="1503" endline="1835">mechanical_entrainment</referencedby>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Build mixed layer parameterization. </para>
    </briefdescription>
    <detaileddescription>
<para>By Robert Hallberg, 1997 - 2005.</para>
<para>This file contains the subroutine (bulkmixedlayer) that implements a Kraus-Turner-like bulk mixed layer, based on the work of various people, as described in the review paper by Niiler and Kraus (1979), with particular attention to the form proposed by Oberhuber (JPO, 1993, 808-829), with an extension to a refied bulk mixed layer as described in Hallberg (Aha Huliko&apos;a, 2003). The physical processes portrayed in this subroutine include convective adjustment and mixed layer entrainment and detrainment. Penetrating shortwave radiation and an exponential decay of TKE fluxes are also supported by this subroutine. Several constants can alternately be set to give a traditional Kraus-Turner mixed layer scheme, although that is not the preferred option. The physical processes and arguments are described in detail below. </para>
    </detaileddescription>
    <location file="/home/cermak/src/MOM6.devrob/src/parameterizations/vertical/MOM_bulk_mixed_layer.F90" line="2" column="1"/>
  </compounddef>
</doxygen>
