<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.8.14">
  <compounddef id="interfacemom__array__transform_1_1rotate__array__pair" kind="interface" language="Fortran" prot="private">
    <compoundname>mom_array_transform::rotate_array_pair</compoundname>
      <sectiondef kind="private-func">
      <memberdef kind="function" id="interfacemom__array__transform_1_1rotate__array__pair_1a43e4ac2ba9d832d42029aa6d57573edf" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_array_transform::rotate_array_pair::rotate_array_pair_real_2d</definition>
        <argsstring>(A_in, B_in, turns, A, B)</argsstring>
        <name>rotate_array_pair_real_2d</name>
        <param>
          <type>A_in</type>
          <defname>A_in</defname>
        </param>
        <param>
          <type>B_in</type>
          <defname>B_in</defname>
        </param>
        <param>
          <type>turns</type>
          <defname>turns</defname>
        </param>
        <param>
          <type>A</type>
          <defname>A</defname>
        </param>
        <param>
          <type>B</type>
          <defname>B</defname>
        </param>
        <briefdescription>
<para>Rotate the elements of a 2d real array pair along first and second axes. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">a_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Unrotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">b_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Unrotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">turns</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of quarter turns</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">a</parametername>
</parameternamelist>
<parameterdescription>
<para>Rotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">b</parametername>
</parameternamelist>
<parameterdescription>
<para>Rotated scalar array pair </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_array_transform.F90" line="177" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_array_transform.F90" bodystart="178" bodyend="190"/>
      </memberdef>
      <memberdef kind="function" id="interfacemom__array__transform_1_1rotate__array__pair_1aa3905ddbbe3ec10f90667a5614ad877c" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_array_transform::rotate_array_pair::rotate_array_pair_real_3d</definition>
        <argsstring>(A_in, B_in, turns, A, B)</argsstring>
        <name>rotate_array_pair_real_3d</name>
        <param>
          <type>A_in</type>
          <defname>A_in</defname>
        </param>
        <param>
          <type>B_in</type>
          <defname>B_in</defname>
        </param>
        <param>
          <type>turns</type>
          <defname>turns</defname>
        </param>
        <param>
          <type>A</type>
          <defname>A</defname>
        </param>
        <param>
          <type>B</type>
          <defname>B</defname>
        </param>
        <briefdescription>
<para>Rotate the elements of a 3d real array pair along first and second axes. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">a_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Unrotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">b_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Unrotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">turns</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of quarter turns</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">a</parametername>
</parameternamelist>
<parameterdescription>
<para>Rotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">b</parametername>
</parameternamelist>
<parameterdescription>
<para>Rotated scalar array pair </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_array_transform.F90" line="195" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_array_transform.F90" bodystart="196" bodyend="207"/>
      </memberdef>
      <memberdef kind="function" id="interfacemom__array__transform_1_1rotate__array__pair_1acf668986fd2189007b01de579452a0f9" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>subroutine</type>
        <definition>subroutine mom_array_transform::rotate_array_pair::rotate_array_pair_integer</definition>
        <argsstring>(A_in, B_in, turns, A, B)</argsstring>
        <name>rotate_array_pair_integer</name>
        <param>
          <type>A_in</type>
          <defname>A_in</defname>
        </param>
        <param>
          <type>B_in</type>
          <defname>B_in</defname>
        </param>
        <param>
          <type>turns</type>
          <defname>turns</defname>
        </param>
        <param>
          <type>A</type>
          <defname>A</defname>
        </param>
        <param>
          <type>B</type>
          <defname>B</defname>
        </param>
        <briefdescription>
<para>Rotate the elements of a 4d real array pair along first and second axes. </para>        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername direction="in">a_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Unrotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">b_in</parametername>
</parameternamelist>
<parameterdescription>
<para>Unrotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="in">turns</parametername>
</parameternamelist>
<parameterdescription>
<para>Number of quarter turns</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">a</parametername>
</parameternamelist>
<parameterdescription>
<para>Rotated scalar array pair</para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername direction="out">b</parametername>
</parameternamelist>
<parameterdescription>
<para>Rotated scalar array pair </para></parameterdescription>
</parameteritem>
</parameterlist>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_array_transform.F90" line="212" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_array_transform.F90" bodystart="213" bodyend="225"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Rotate a pair of arrays which map to a rotated set of indices. Rotation is applied across the first and second axes of the array. This rotation should be applied when one field is mapped onto the other. For example, a tracer indexed along u or v face points will map from one to the other after a quarter turn, and back onto itself after a half turn. </para>    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <location file="/home/cermak/src/MOM6.devrob/src/framework/MOM_array_transform.F90" line="41" column="1" bodyfile="/home/cermak/src/MOM6.devrob/src/framework/MOM_array_transform.F90" bodystart="41" bodyend="44"/>
    <listofallmembers>
      <member refid="interfacemom__array__transform_1_1rotate__array__pair_1acf668986fd2189007b01de579452a0f9" prot="private" virt="non-virtual"><scope>mom_array_transform::rotate_array_pair</scope><name>rotate_array_pair_integer</name></member>
      <member refid="interfacemom__array__transform_1_1rotate__array__pair_1a43e4ac2ba9d832d42029aa6d57573edf" prot="private" virt="non-virtual"><scope>mom_array_transform::rotate_array_pair</scope><name>rotate_array_pair_real_2d</name></member>
      <member refid="interfacemom__array__transform_1_1rotate__array__pair_1aa3905ddbbe3ec10f90667a5614ad877c" prot="private" virt="non-virtual"><scope>mom_array_transform::rotate_array_pair</scope><name>rotate_array_pair_real_3d</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
