fillMyGhostsFromFiner_avg2DIncomp_feq_fneq Subroutine

public subroutine fillMyGhostsFromFiner_avg2DIncomp_feq_fneq(method, fieldProp, tLevelDesc, level, sState, sNeigh, snSize, sAuxField, tState, tNeigh, tnSize, layout, nTargets, targetList, physics, time, varSys, derVarPos)

Fill coarse target ghost from fine source fluid by average interpolation. 1. Calculate Equilibrium and nonEquilibrium 2. Compute scaling factor 3. 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.

Arguments

TypeIntentOptionalAttributesName
class(mus_interpolation_method_type), intent(inout) :: 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) :: sNeigh(:)
integer, intent(in) :: snSize
real(kind=rk), intent(inout) :: sAuxField(:)

AuxField variable to read rho and vel from source elements

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

State vector of TARGET GHOST elements

integer, intent(in) :: tNeigh(:)
integer, intent(in) :: tnSize
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


Calls

proc~~fillmyghostsfromfiner_avg2dincomp_feq_fneq~~CallsGraph proc~fillmyghostsfromfiner_avg2dincomp_feq_fneq fillMyGhostsFromFiner_avg2DIncomp_feq_fneq proc~getnoneqfac_intp_fine_to_coarse getNonEqFac_intp_fine_to_coarse proc~fillmyghostsfromfiner_avg2dincomp_feq_fneq->proc~getnoneqfac_intp_fine_to_coarse proc~mus_calcomegafromvisc mus_calcOmegaFromVisc proc~fillmyghostsfromfiner_avg2dincomp_feq_fneq->proc~mus_calcomegafromvisc proc~getnoneqfac_intp getNonEqFac_intp proc~getnoneqfac_intp_fine_to_coarse->proc~getnoneqfac_intp

Contents


Variables

TypeVisibilityAttributesNameInitial
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 :: f(layout%fStencil%QQ)
real(kind=rk), private :: f_eq(layout%fStencil%QQ)
integer, private :: QQ
real(kind=rk), private :: inv_nSourceElems
real(kind=rk), private :: t_f_eq(layout%fStencil%QQ)
real(kind=rk), private :: t_f_neq(layout%fStencil%QQ)
type(mus_fluid_type), private, pointer:: fluid
real(kind=rk), private :: cVisc
real(kind=rk), private :: cOmegaKine
real(kind=rk), private :: fOmegaKine
real(kind=rk), private :: rho
real(kind=rk), private :: vel(3)
real(kind=rk), private :: fac
integer, private :: elemOff
integer, private :: dens_pos
integer, private :: vel_pos(3)
integer, private :: nScalars