mus_addDynSponFldToAuxField_fluid Subroutine

public subroutine mus_addDynSponFldToAuxField_fluid(fun, auxField, iLevel, time, varSys, phyConvFac, derVarPos)

This routine add sponge density and velocity field to density and velocity in auxField. Density and velocity in far field are computed by time average.

Reference: Jacob, J.; Sagaut, P. (2019): Solid wall and open boundary conditions in hybrid recursive regularized lattice Boltzmann method for compressible flows. In Physics of Fluids 31 (12), p. 126103.

New avg

Arguments

TypeIntentOptionalAttributesName
class(mus_source_op_type), intent(inout) :: fun

Description of method to update source

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

output auxField array

integer, intent(in) :: iLevel

current level

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

current timing information

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

variable system definition

type(mus_convertFac_type), intent(in) :: phyConvFac

Physics conversion factor for current level

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

position of derived quantities in varsys


Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: dens_pos
integer, private :: vel_pos(3)
real(kind=rk), private :: sigma
integer, private :: iElem
integer, private :: nElems
integer, private :: elemOff
real(kind=rk), private :: spongeField(fun%elemLvl(iLevel)%nElems)
real(kind=rk), private :: dens
real(kind=rk), private :: vel(3)
real(kind=rk), private :: densAvgNew
real(kind=rk), private :: velAvgNew(3)
real(kind=rk), private :: sponDens
real(kind=rk), private :: sponVel(3)
real(kind=rk), private :: smoothFac
real(kind=rk), private :: inv_rho_phy
real(kind=rk), private :: inv_vel_phy
real(kind=rk), private :: dens_ref
real(kind=rk), private :: vel_ref(3)