spc_moleFrac_wtdf Subroutine

public subroutine spc_moleFrac_wtdf(me, state, bcBuffer, globBC, levelDesc, tree, nSize, iLevel, sim_time, neigh, layout, fieldProp, varPos, nScalars, varSys, derVarPos, physics, iField, mixture)

Mole fraction boundary condition with thermodynamic factor Usage


boundary_condition = {
 { label = 'outlet',
    kind = 'spc_moleFrac_wtdf',
    moleFraction = 0.0
     }

This subroutine's interface must match the abstract interface definition boundaryRoutine in bc/mus_bc_header_module.f90 in order to be callable via fnct function pointer.

Arguments

TypeIntentOptionalAttributesName
class(boundary_type) :: me

global boundary type

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

Current state vector of iLevel

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

state values of boundary elements of all fields of iLevel

type(glob_boundary_type), intent(in) :: globBC

scheme global boundary type

type(tem_levelDesc_type), intent(in) :: levelDesc

iLevel descriptor

type(treelmesh_type), intent(in) :: tree

Treelm Mesh

integer, intent(in) :: nSize

size of state array ( in terms of elements )

integer, intent(in) :: iLevel

the level On which this boundary was invoked

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

global time information

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

connectivity array corresponding to state vector

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

stencil layout information

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

fluid parameters and properties

integer, intent(in) :: varPos(:)

pointer to field variable in the state vector

integer, intent(in) :: nScalars

number of Scalars in the scheme var system

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

scheme variable system

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

position of derived quantities in varsys

type(mus_physics_type), intent(in) :: physics

scheme global boundary type

integer, intent(in) :: iField

current field

type(mus_mixture_type), intent(in) :: mixture

mixture info


Calls

proc~~spc_molefrac_wtdf~~CallsGraph proc~spc_molefrac_wtdf spc_moleFrac_wtdf interface~mus_calc_thermfactor mus_calc_thermFactor proc~spc_molefrac_wtdf->interface~mus_calc_thermfactor interface~mus_calc_ms_diffmatrix mus_calc_MS_DiffMatrix proc~spc_molefrac_wtdf->interface~mus_calc_ms_diffmatrix proc~invert_matrix invert_matrix proc~spc_molefrac_wtdf->proc~invert_matrix proc~mus_calc_thermfactor_single mus_calc_thermFactor_single interface~mus_calc_thermfactor->proc~mus_calc_thermfactor_single proc~mus_calc_ms_diffmatrix_single mus_calc_MS_DiffMatrix_single interface~mus_calc_ms_diffmatrix->proc~mus_calc_ms_diffmatrix_single interface~calc_ms_diff_matrix_from_moledens calc_ms_diff_matrix_from_moledens proc~mus_calc_ms_diffmatrix_single->interface~calc_ms_diff_matrix_from_moledens interface~calc_therm_factor_loc calc_therm_factor_loc proc~mus_calc_thermfactor_single->interface~calc_therm_factor_loc

Contents


Variables

TypeVisibilityAttributesNameInitial
real(kind=rk), private :: fEq
real(kind=rk), private :: fTmp(varSys%nScalars)
real(kind=rk), private :: mass_dens(varSys%nStateVars)
real(kind=rk), private :: num_dens(varSys%nStateVars)
real(kind=rk), private :: tot_numDens
real(kind=rk), private :: tot_massDens
real(kind=rk), private :: moleFrac(globBC%nElems(iLevel))
integer, private :: iElem
integer, private :: iDir
integer, private :: iFieldLoc
integer, private :: iField_2
integer, private :: iField_3
integer, private :: nFields
integer, private :: pos
integer, private :: QQ
real(kind=rk), private, dimension(varSys%nStateVars):: molWeight
real(kind=rk), private, dimension(varSys%nStateVars):: phi
real(kind=rk), private, dimension(varSys%nStateVars):: moleFrac_loc
real(kind=rk), private, dimension(3, varSys%nStateVars):: first_moments
real(kind=rk), private, dimension(3, varSys%nStateVars):: velocity
real(kind=rk), private, dimension(varSys%nStateVars, varSys%nStateVars):: matA
real(kind=rk), private, dimension(varSys%nStateVars, varSys%nStateVars):: invA
real(kind=rk), private, dimension(varSys%nStateVars, varSys%nStateVars):: resi_coeff
real(kind=rk), private, dimension(varSys%nStateVars, varSys%nStateVars):: thermodynamic_fac
real(kind=rk), private, dimension(varSys%nStateVars, varSys%nStateVars):: inv_thermodyn_fac
real(kind=rk), private, dimension(varSys%nStateVars, varSys%nStateVars):: diff_coeff
real(kind=rk), private :: temp
real(kind=rk), private :: press
real(kind=rk), private :: phy_moleDens_fac
real(kind=rk), private :: omega
real(kind=rk), private :: paramB
real(kind=rk), private :: theta_eq
real(kind=rk), private :: eqVel(3)
real(kind=rk), private :: velAvg(3)
real(kind=rk), private :: velQuad(3)
real(kind=rk), private :: usqr
real(kind=rk), private :: ucx
real(kind=rk), private :: ucxQuadTerm
type(mus_varSys_data_type), private, pointer:: fPtr
integer, private :: bcMoleFrac_pos
integer, private :: posInBuffer
integer, private :: posInState