fillMyGhostsFromFiner_avgLES Subroutine

public subroutine fillMyGhostsFromFiner_avgLES(method, fieldProp, tLevelDesc, level, sState, snSize, tState, tnSize, tAuxField, layout, nTargets, targetList, physics, time, varSys, derVarPos)

Average interpolation of ghostFromFiner The interpolation procedure used in this routine is:\n 1. calculate moments from source 2. Interpolate moments on target by simple average 3. Calculate Equilibrium and nonEquilibrium 4. calculate target: Eq + Scale * nonEquilibrium

This subroutine's interface must match the abstract interface definition intpRoutine in intp/mus_interpolate_header_module.f90 in order to be callable via do_intp function pointer.


class(mus_interpolation_method_type), intent(in) :: method
type(mus_field_prop_type), intent(in), target:: fieldProp(:)

Array of field properties (fluid or species)

type(tem_levelDesc_type), intent(in) :: tLevelDesc

level descriptor on target level

integer, intent(in) :: level

my refinement level

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

State vector of SOURCE FLUID elements

integer, intent(in) :: snSize
real(kind=rk), intent(inout) :: tState(:)

State vector of TARGET GHOST elements

integer, intent(in) :: tnSize
real(kind=rk), intent(inout) :: tAuxField(:)

AuxField variable to fill on target GHOST elements

type(mus_scheme_layout_type), intent(in) :: layout

the layout used

integer, intent(in) :: nTargets

List of target elements ( their position in depSource list )

integer, intent(in) :: targetList(nTargets)
type(mus_physics_type), intent(in) :: physics

physics type to convert lattice to physics SI unit and vice versa

type(tem_time_type), intent(in) :: time

time required to compute viscosity on target element barycenter

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

scheme variable system

type(mus_derVarPos_type), intent(in) :: derVarPos(:)

position of all derive variable in varSys for all fields


proc~~fillmyghostsfromfiner_avgles~~CallsGraph proc~fillmyghostsfromfiner_avgles fillMyGhostsFromFiner_avgLES proc~mus_intp_getmoments mus_intp_getMoments proc~fillmyghostsfromfiner_avgles->proc~mus_intp_getmoments proc~mus_intp_convertmomtopdf3d mus_intp_convertMomToPDF3D proc~fillmyghostsfromfiner_avgles->proc~mus_intp_convertmomtopdf3d proc~mus_calcomegafromvisc mus_calcOmegaFromVisc proc~fillmyghostsfromfiner_avgles->proc~mus_calcomegafromvisc



integer, private :: sourceLevel
integer, private :: sourceElem
integer, private :: targetLevel
integer, private :: targetElem
integer, private :: iDir
integer, private :: iElem
integer, private :: indElem
integer, private :: iSourceElem
integer, private :: nSourceElems
real(kind=rk), private :: tPDF(layout%fStencil%QQ)
integer, private :: QQ
real(kind=rk), private :: inv_nSourceElems
real(kind=rk), private :: tMom(layout%fStencil%QQ)
real(kind=rk), private :: srcMom(layout%fStencil%QQ)
type(mus_fluid_type), private, pointer:: fluid
real(kind=rk), private :: nonEqScalingFacs(layout%fStencil%QQ)
real(kind=rk), private :: sOmegaKine
real(kind=rk), private :: tOmegaKine
real(kind=rk), private :: sVisc
real(kind=rk), private :: tVisc
real(kind=rk), private :: invRho
real(kind=rk), private :: tTurbVisc
integer, private :: nScalars
integer, private :: tOffset
integer, private :: dens_pos
integer, private :: vel_pos(3)