https://mooseframework.inl.gov
LinearFVScalarAdvection.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
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 
20 {
21 public:
24 
25  virtual Real computeElemMatrixContribution() override;
26 
27  virtual Real computeNeighborMatrixContribution() override;
28 
29  virtual Real computeElemRightHandSideContribution() override;
30 
32 
34 
36 
37  virtual void setupFaceData(const FaceInfo * face_info) override;
38 
39 protected:
42 
43 private:
46  std::pair<Real, Real> _advected_interp_coeffs;
47 
51 
58 
61 
64 };
LinearFVScalarAdvection(const InputParameters &params)
User object responsible for determining the face fluxes using the Rhie-Chow interpolation in a segreg...
virtual Real computeNeighborMatrixContribution() override
static InputParameters validParams()
bool _add_slip_model
Whether to use an additional slip velocity to compute the face flux.
virtual void setupFaceData(const FaceInfo *face_info) override
virtual Real computeElemRightHandSideContribution() override
const RhieChowMassFlux & _mass_flux_provider
The Rhie-Chow user object that provides us with the face velocity.
virtual Real computeElemMatrixContribution() 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...
Real _volumetric_face_flux
Container for the velocity on the face which will be reused in the advection term&#39;s matrix and right ...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real computeNeighborRightHandSideContribution() override
virtual Real computeBoundaryRHSContribution(const LinearFVBoundaryCondition &bc) override
An advection kernel that implements the advection term for the passive scalar transport equation...
const Moose::Functor< ADReal > *const _v_slip
slip velocity in direction y
virtual Real computeBoundaryMatrixContribution(const LinearFVBoundaryCondition &bc) override
const Moose::Functor< ADReal > *const _w_slip
slip velocity in direction z
Moose::FV::InterpMethod _advected_interp_method
The interpolation method to use for the advected quantity.
const Moose::Functor< ADReal > *const _u_slip
slip velocity in direction x