deriveAuxMSLiquid_fromState Subroutine

public subroutine deriveAuxMSLiquid_fromState(derVarPos, state, neigh, iField, nElems, nSize, iLevel, stencil, varSys, auxField, quantities)

This routine computes auxField 'density and velocity' of given field from state array. velocity of original PDF is computed in this routine by solving LSE.

This subroutine's interface must match the abstract interface definition derive_auxFromState in derived/mus_derVarPos_module.f90 in order to be callable via auxFieldFromState function pointer.

Arguments

Type IntentOptional Attributes Name
class(mus_derVarPos_type), intent(in) :: derVarPos

Position of derive variable in variable system

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

Array of state n * layout%stencil(1)%QQ * nFields

integer, intent(in) :: neigh(:)

connectivity vector

integer, intent(in) :: iField

Current field

integer, intent(in) :: nElems

number of elements

integer, intent(in) :: nSize

number of elements in state array

integer, intent(in) :: iLevel

current level

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

stencil header contains discrete velocity vectors

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

variable system which is required to access fieldProp information via variable method data c_ptr

real(kind=rk), intent(inout) :: auxField(:)

Output of this routine Size: nElems*nAuxScalars

type(mus_scheme_derived_quantities_type), intent(in) :: quantities

Class that contains pointers to the proper derived quantities functions


Calls

proc~~deriveauxmsliquid_fromstate~~CallsGraph proc~deriveauxmsliquid_fromstate deriveAuxMSLiquid_fromState auxfield_varpos auxfield_varpos proc~deriveauxmsliquid_fromstate->auxfield_varpos proc~momentumfrommacrolse momentumFromMacroLSE proc~deriveauxmsliquid_fromstate->proc~momentumfrommacrolse val val proc~deriveauxmsliquid_fromstate->val invert_matrix invert_matrix proc~momentumfrommacrolse->invert_matrix