plume_shape Derived Type

type, public :: plume_shape

A type containing the data necessary to specify the transverse shape of the plume. All variables in the plume are assumed to be seperable with the form , , etc. The magnitude of the velocity does not necessary take the form and is treated as an independent seperable variable . The transverse functions , , etc. have all been normalised over the integration width to .


Inherited by

type~~plume_shape~~InheritedByGraph type~plume_shape plume_shape type~asym_plume asym_plume type~asym_plume->type~plume_shape shape

Contents

Source Code


Components

TypeVisibility AttributesNameInitial
real(kind=r8), public :: f_D1 =1.0_r8

real(kind=r8), public :: f_D2 =1.0_r8

real(kind=r8), public :: f_U1 =1.0_r8

real(kind=r8), public :: f_U2 =1.0_r8

real(kind=r8), public :: f_V1 =1.0_r8

real(kind=r8), public :: f_V2 =1.0_r8

real(kind=r8), public :: f_S1 =1.0_r8

real(kind=r8), public :: f_S2 =1.0_r8

real(kind=r8), public :: f_T1 =1.0_r8

real(kind=r8), public :: f_T2 =1.0_r8

real(kind=r8), public :: f_Up =0.0_r8

real(kind=r8), public :: f_Vp =0.0_r8

real(kind=r8), public :: f_Sp =0.0_r8

real(kind=r8), public :: f_Tp =0.0_r8

real(kind=r8), public :: a_DU =1.0_r8

real(kind=r8), public :: a_DV =1.0_r8

real(kind=r8), public :: a_DU2 =1.0_r8

real(kind=r8), public :: a_DUV =1.0_r8

real(kind=r8), public :: a_D2 =1.0_r8

real(kind=r8), public :: a_UabsU =1.0_r8

real(kind=r8), public :: a_UabsV =1.0_r8

real(kind=r8), public :: a_DUS =1.0_r8

real(kind=r8), public :: a_DUT =1.0_r8

real(kind=r8), public :: a_UabsT =1.0_r8

real(kind=r8), public :: a_DS =1.0_r8

real(kind=r8), public :: a_DT =1.0_r8

real(kind=r8), public :: a_DS_t =1.0_r8

real(kind=r8), public :: a_DT_t =1.0_r8


Source Code

  type, public :: plume_shape
    !* Author: Christopher MacMackin
    !  Date: August 2018
    !
    ! A type containing the data necessary to specify the transverse
    ! shape of the plume. All variables in the plume are assumed to be
    ! seperable with the form \(D(x,y) = f_D2(y)\hat{D}(x)\), \(U(x,y)
    ! = f_U2(y)\hat{U}(x)\), etc. The magnitude of the velocity does
    ! not necessary take the form \(|\vec{U}| = \sqrt{U^2 + V^2}\) and
    ! is treated as an independent seperable variable \(|\vec{U}| =
    ! f_{|\vec{U}|}(y)\widehat{|\vec{U}|}(x)\). The transverse
    ! functions \(f_{D}(y)\), \(f_U2(y)\), etc. have all been
    ! normalised over the integration width \(y_1\) to \(y_2\).
    !
    ! @Note that a number of variables are definied using the
    ! averaging operator $$ \overline{A} = \frac{1}{y_2 - y_1}
    ! \int^{y_2}_{y_1} A(y) dy. $$
    ! 
    real(r8) :: f_D1 = 1.0_r8
      !! \(f_D2(y_1)\)
    real(r8) :: f_D2 = 1.0_r8
      !! \(f_D2(y_2)\)
    real(r8) :: f_U1 = 1.0_r8
      !! \(f_U2(y_1)\)
    real(r8) :: f_U2 = 1.0_r8
      !! \(f_U2(y_2)\)
    real(r8) :: f_V1 = 1.0_r8
      !! \(f_V2(y_1)\)
    real(r8) :: f_V2 = 1.0_r8
      !! \(f_V2(y_2)\)
    real(r8) :: f_S1 = 1.0_r8
      !! \(f_S2(y_1)\) 
    real(r8) :: f_S2 = 1.0_r8
      !! \(f_S2(y_2)\)
    real(r8) :: f_T1 = 1.0_r8
      !! \(f_T2(y_1)\)
    real(r8) :: f_T2 = 1.0_r8
      !! \(f_T2(y_2)\)
    real(r8) :: f_Up = 0.0_r8
      !! \(df_U2(y_2)/dy\)
    real(r8) :: f_Vp = 0.0_r8
      !! \(df_V2(y_2)/dy\)
    real(r8) :: f_Sp = 0.0_r8
      !! \(df_S2(y_2)/dy\)
    real(r8) :: f_Tp = 0.0_r8
      !! \(df_T2(y_2)/dy\)
    real(r8) :: a_DU = 1.0_r8
      !! \(\alpha_{DU} = \overline{f_D2 f_U2} \)
    real(r8) :: a_DV = 1.0_r8
      !! \(\alpha_{DV} = \overline{f_D2 f_V2} \)
    real(r8) :: a_DU2 = 1.0_r8
      !! \(\alpha_{DU^2} = \overline{f_D2 f_U2^2} \)
    real(r8) :: a_DUV = 1.0_r8
      !! \(\alpha_{DUV} = \overline{f_D2 f_U2 f_V2} \)
    real(r8) :: a_D2 = 1.0_r8
      !! \(\alpha_{D^2} = \overline{f_D2^2}\)
    real(r8) :: a_UabsU = 1.0_r8
      !! \(\alpha_{|\vec{U}|U} = \overline{f_{|\vec{U}|} f_U2\)
    real(r8) :: a_UabsV = 1.0_r8
      !! \(\alpha_{|\vec{U}|V} = \overline{f_{|\vec{U}|} f_V2\)
    real(r8) :: a_DUS = 1.0_r8
      !! \(\alpha_{DUS} = \overline{f_D2 f_U2 f_S2} \)
    real(r8) :: a_DUT = 1.0_r8
      !! \(\alpha_{DUT} = \overline{f_D2 f_U2 f_T2} \)
    real(r8) :: a_UabsT = 1.0_r8
      !! \(\alpha_{|\vec{U}|T} = \overline{f_{|\vec{U}|} f_T2\)
    real(r8) :: a_DS = 1.0_r8
      !! \(\alpha_{DS} = \overline{f_D2 f_S2} \)
    real(r8) :: a_DT = 1.0_r8
      !! \(\alpha_{DT} = \overline{f_D2 f_T2} \)
    real(r8) :: a_DS_t = 1.0_r8
      !! \(\tilde{\alpha}_{DS} = \overline{f_D2 f_S2}/\alpha_{D^2} \)
    real(r8) :: a_DT_t = 1.0_r8
      !! \(\tilde{\alpha}_{DT} = \overline{f_D2 f_T2}/\alpha_{D^2} \)
  end type plume_shape