bgk_HybridRecursiveRegularized_d2q9 Subroutine

public subroutine bgk_HybridRecursiveRegularized_d2q9(fieldProp, inState, outState, auxField, neigh, nElems, nSolve, level, layout, params, varSys, derVarPos)

Hybrid recursive regularization relaxation routine for the BGK model. todo add paper todo add some more information if needed

This subroutine interface must match the abstract interface definition kernel in scheme/mus_scheme_type_module.f90 in order to be callable via compute function pointer.

Generic fetching step: Streaming for pull Local copy for push no collision for coarse ghosts and for fine ghost cells far from fluid cell


type(mus_field_prop_type), intent(in) :: fieldProp(:)

Array of field properties (fluid or species)

real(kind=rk), intent(in) :: inState(nElems*varSys%nScalars)

Input pdf vector

real(kind=rk), intent(out) :: outState(nElems*varSys%nScalars)

Output pdf vector

real(kind=rk), intent(inout) :: auxField(nElems*varSys%nAuxScalars)

Auxiliary field computed from pre-collision state is updated with correct velocity field for multicomponent models

integer, intent(in) :: neigh(nElems*layout%fStencil%QQ)

Connectivity vector

integer, intent(in) :: nElems

Number of elements in state Array

integer, intent(in) :: nSolve

Number of elements solved in kernel

integer, intent(in) :: level

Current level

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

Vurrent layout

type(mus_param_type), intent(in) :: params

Global parameters

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

Variable system definition

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

Position of derived quantities in varsys for all fields


proc~~bgk_hybridrecursiveregularized_d2q9~~CallsGraph proc~bgk_hybridrecursiveregularized_d2q9 bgk_HybridRecursiveRegularized_d2q9 proc~second_order_moments_2d second_order_moments_2D proc~bgk_hybridrecursiveregularized_d2q9->proc~second_order_moments_2d proc~f_f_eq_regularized_4th_ord_d2q9 f_f_eq_regularized_4th_ord_d2q9 proc~bgk_hybridrecursiveregularized_d2q9->proc~f_f_eq_regularized_4th_ord_d2q9 proc~f_f_eq_regularized_2nd_ord_d2q9 f_f_eq_regularized_2nd_ord_d2q9 proc~f_f_eq_regularized_4th_ord_d2q9->proc~f_f_eq_regularized_2nd_ord_d2q9



type(mus_gradData_type), private, pointer:: gradData

Gradient data

type(mus_varSys_data_type), private, pointer:: fPtr
integer, private :: iElem
integer, private :: iDir
real(kind=rk), private :: pdfTmp(QQ)
real(kind=rk), private :: SR(3)
real(kind=rk), private :: gradU(2,2,1)
real(kind=rk), private :: SOM(3)
real(kind=rk), private :: SOM_neq(3)
real(kind=rk), private :: rho
real(kind=rk), private :: u_x
real(kind=rk), private :: u_y
real(kind=rk), private :: a12xx
real(kind=rk), private :: a12xy
real(kind=rk), private :: a12yy
real(kind=rk), private :: omega
real(kind=rk), private :: cmpl_o
real(kind=rk), private :: taup
real(kind=rk), private :: feq(QQ)
real(kind=rk), private :: f1(QQ)
real(kind=rk), private :: sigma
real(kind=rk), private :: cmpl_sgm
integer, private :: denspos
integer, private :: velpos(3)
integer, private :: elemOff
integer, private :: nScalars