fillMyGhostsFromFiner_TGV2D Subroutine

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

This simple method does not perform actual interpolation, but get analytical solution and set pdf to target element It is mostly there for debugging purposes, the quality is not good enough for production use!

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_tgv2d~~CallsGraph proc~fillmyghostsfromfiner_tgv2d fillMyGhostsFromFiner_TGV2D proc~tem_coordofid tem_CoordOfId proc~fillmyghostsfromfiner_tgv2d->proc~tem_coordofid proc~set_pdfdiffusive set_pdfDiffusive proc~fillmyghostsfromfiner_tgv2d->proc~set_pdfdiffusive proc~tgv_2d TGV_2D proc~fillmyghostsfromfiner_tgv2d->proc~tgv_2d proc~getequilibriumincomp getEquilibriumIncomp proc~set_pdfdiffusive->proc~getequilibriumincomp proc~getneq_diffusive getNEq_diffusive proc~set_pdfdiffusive->proc~getneq_diffusive proc~convprepost convPrePost proc~getneq_diffusive->proc~convprepost



integer, private :: targetLevel
integer, private :: targetElem
integer, private :: iDir
integer, private :: iElem
integer, private :: indElem
real(kind=rk), private :: targetCoord(3)
real(kind=rk), private :: omega
real(kind=rk), private :: dx
real(kind=rk), private :: mom(layout%fStencil%QQ)
real(kind=rk), private :: tPDF(layout%fStencil%QQ)
integer, private :: coord(4)
integer(kind=long_k), private :: targetID
integer, private :: QQ
type(mus_fluid_type), private, pointer:: fluid