https://mooseframework.inl.gov
LinearFVTurbulentAdvection.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "LinearFVFluxKernel.h"
13 #include "RhieChowMassFlux.h"
15 
21 {
22 public:
25 
26  virtual void addMatrixContribution() override;
27 
28  virtual void addRightHandSideContribution() override;
29 
30  virtual void initialSetup() override;
31 
32  virtual Real computeElemMatrixContribution() override;
33 
34  virtual Real computeNeighborMatrixContribution() override;
35 
36  virtual Real computeElemRightHandSideContribution() override;
37 
39 
41 
43 
44  virtual void setupFaceData(const FaceInfo * face_info) override;
45 
46 protected:
49 
50 private:
53  std::pair<Real, Real> _advected_interp_coeffs;
54 
58 
61 
63  const std::vector<BoundaryName> & _wall_boundary_names;
64 
66  std::unordered_set<const Elem *> _wall_bounded;
67 };
virtual void addRightHandSideContribution() override
virtual void addMatrixContribution() override
virtual Real computeBoundaryMatrixContribution(const LinearFVBoundaryCondition &bc) override
User object responsible for determining the face fluxes using the Rhie-Chow interpolation in a segreg...
virtual void setupFaceData(const FaceInfo *face_info) override
virtual void initialSetup() override
Real _mass_face_flux
Container for the mass flux on the face which will be reused in the advection term&#39;s matrix and right...
const std::vector< BoundaryName > & _wall_boundary_names
Wall boundaries.
virtual Real computeNeighborMatrixContribution() override
virtual Real computeBoundaryRHSContribution(const LinearFVBoundaryCondition &bc) override
std::pair< Real, Real > _advected_interp_coeffs
Container for the current advected interpolation coefficients on the face to make sure we don&#39;t compu...
An advection kernel that implements the advection term for the turbulent variables limited for the fi...
Moose::FV::InterpMethod _advected_interp_method
The interpolation method to use for the advected quantity.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static InputParameters validParams()
LinearFVTurbulentAdvection(const InputParameters &params)
virtual Real computeNeighborRightHandSideContribution() override
const RhieChowMassFlux & _mass_flux_provider
The Rhie-Chow user object that provides us with the face velocity.
virtual Real computeElemRightHandSideContribution() override
std::unordered_set< const Elem * > _wall_bounded
List for wall bounded elements.
virtual Real computeElemMatrixContribution() override