23 "advection term for a turbulence variable.");
25 params.
addParam<std::vector<BoundaryName>>(
26 "walls", {},
"Boundaries that correspond to solid walls.");
33 _advected_interp_coeffs(
std::make_pair<
Real,
Real>(0, 0)),
34 _wall_boundary_names(getParam<
std::vector<BoundaryName>>(
"walls"))
89 "We should only have one boundary on every face.");
109 const auto dof_id_neighbor =
153 "We should only have one boundary on every face.");
173 const auto dof_id_neighbor =
virtual void addRightHandSideContribution() override
const unsigned int _var_num
virtual void addMatrixContribution() override
const std::set< BoundaryID > & boundaryIDs() const
libMesh::LinearImplicitSystem & _linear_system
const ElemInfo * neighborInfo() const
virtual Real computeNeighborMatrixContribution() override
void setupFaceData(const FaceInfo *face_info, const FaceInfo::VarFaceNeighbors face_type)
MooseLinearVariableFV< Real > & _var
NumericVector< Number > * rhs
const ElemInfo * elemInfo() const
static InputParameters validParams()
LinearFVBoundaryCondition * getBoundaryCondition(const BoundaryID bd_id) const
void getWallBoundedElements(const std::vector< BoundaryName > &wall_boundary_name, const FEProblemBase &fe_problem, const SubProblem &subproblem, const std::set< SubdomainID > &block_ids, std::unordered_set< const Elem *> &wall_bounded)
Map marking wall bounded elements The map passed in wall_bounded_map gets cleared and re-populated...
virtual const std::set< SubdomainID > & blockIDs() const
virtual void initialSetup() override
FaceInfo::VarFaceNeighbors _current_face_type
const bool _force_boundary_execution
DenseVector< Real > _rhs_contribution
const std::vector< BoundaryName > & _wall_boundary_names
Wall boundaries.
const FaceInfo * _current_face_info
const Elem * neighborPtr() const
virtual Real computeElemRightHandSideContribution() override
An advection kernel that implements the advection term for the turbulent variables limited for the fi...
virtual Real computeElemMatrixContribution() override
const Elem * elemPtr() const
Moose::FV::InterpMethod _advected_interp_method
The interpolation method to use for the advected quantity.
DenseVector< dof_id_type > _dof_indices
const std::vector< std::vector< dof_id_type > > & dofIndices() const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real computeNeighborRightHandSideContribution() override
virtual Real computeBoundaryRHSContribution(const LinearFVBoundaryCondition &bc) override
SparseMatrix< Number > * matrix
static InputParameters validParams()
LinearFVTurbulentAdvection(const InputParameters ¶ms)
An advection kernel that implements the advection term for the passive scalar transport equation...
registerMooseObject("NavierStokesApp", LinearFVTurbulentAdvection)
FEProblemBase & _fe_problem
virtual Real computeBoundaryMatrixContribution(const LinearFVBoundaryCondition &bc) override
bool hasBlocks(const SubdomainName &name) const
virtual void initialSetup()
std::unordered_set< const Elem * > _wall_bounded
List for wall bounded elements.
const unsigned int _sys_num
bool setInterpolationMethod(const MooseObject &obj, Moose::FV::InterpMethod &interp_method, const std::string ¶m_name)
SubdomainID subdomain_id() const
DenseMatrix< Real > _matrix_contribution