ddv_derivation_procedures Submodule

Contains module procedures associated with the ddv derivation class


Uses


Module Functions

module function calculateDDV(this, inputArray, indices) result(output)

Arguments

Type IntentOptional Attributes Name
class(DDVDerivation), intent(inout) :: this
type(RealArray), intent(in), dimension(:) :: inputArray
integer(kind=ik), intent(in), dimension(:) :: indices

Return Value real(kind=rk), allocatable, dimension(:)


Module Subroutines

module subroutine initDDVDerivation(this, vSpaceObj, outerV, innerV, vifAtZero, targetH)

Initialize first order velocity derivative derivation

Arguments

Type IntentOptional Attributes Name
class(DDVDerivation), intent(inout) :: this
type(VSpace), intent(in) :: vSpaceObj
type(RealArray), intent(in), optional, dimension(:) :: outerV

Outer velocity vector corresponding to cell centres for each included harmonic. Defaults to ones.

type(RealArray), intent(in), optional, dimension(:) :: innerV

Inner velocity vector corresponding to right cell boundaries for each included harmonic. Defaults to ones.

type(RealArray), intent(in), optional, dimension(:) :: vifAtZero

Extrapolation of v_if at zero in the form A1f(v1)+A2*f(v2) where A's are given for each included harmonic(default = 0)

integer(kind=ik), intent(in), optional :: targetH

Harmonic to take derivative of. If not present will return full distribution/include all harmonics.