mus_deriveKE Subroutine

public recursive subroutine mus_deriveKE(fun, varsys, stencil, iLevel, posInState, pdf, res, nVals)

Calculate the kinetic energy as E = 1/2 rho ( ux^2 + uy^2 +uz^2 )

The interface has to comply to the abstract interface mus_derive_fromPDF.


class(tem_varSys_op_type), intent(in) :: fun

description of the method to obtain the variables, here some preset values might be stored, like the space time function to use or the required variables.

type(tem_varSys_type), intent(in) :: varsys

the variable system to obtain the variable from.

type(tem_stencilHeader_type), intent(in) :: stencil

fluid stencil defintion

integer, intent(in) :: iLevel

current Level

integer, intent(in) :: posInState(:)

Position of element in levelwise state array

real(kind=rk), intent(in) :: pdf(:)

pdf array

real(kind=rk), intent(out) :: res(:)


integer, intent(in) :: nVals

nVals to get



type(mus_varSys_data_type), private, pointer:: fPtr
type(mus_scheme_type), private, pointer:: scheme
real(kind=rk), private, allocatable:: tmpPDF(:)
real(kind=rk), private :: dens
real(kind=rk), private :: vel(3)
integer, private :: pdfPos
integer, private :: nCompsPDF
integer, private :: iVal