init_nrbc Subroutine

private subroutine init_nrbc(bc, state, nSize, neigh, layout, level, nScalars, varSys, derVarPos, elemPos, nElems)

Initialize the values required for the characteristic boundary conditions

Simply calculate the macroscopic values from the current pdf distributions in the boundary element and its neighbor elements and store it to the %nrbc%lodi field NOTE: To be consistent, the same calculation procedure of the LODI values need to be performed as in the outlet_nrbc "NRBC routine" itself

Arguments

Type IntentOptional Attributes Name
type(boundary_type) :: bc

global array boundary type

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

State array

integer, intent(in) :: nSize

nSize

integer, intent(in) :: neigh(:)

neighbor array

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

fluid parameters

integer, intent(in) :: level

level

integer, intent(in) :: nScalars

number of scalars in global system

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

scheme variable system

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

position of derived quantities in varsys

integer, intent(in) :: elemPos(:)

BC elements positions in total list

integer, intent(in) :: nElems

number of BC elements