https://mooseframework.inl.gov
LinearFVDiffusion.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 
19 {
20 public:
22 
27  LinearFVDiffusion(const InputParameters & params);
28 
29  virtual void initialSetup() override;
30 
31  virtual Real computeElemMatrixContribution() override;
32 
33  virtual Real computeNeighborMatrixContribution() override;
34 
35  virtual Real computeElemRightHandSideContribution() override;
36 
38 
40 
42 
43 protected:
51 
59 
62 
65 
68 
71 };
virtual Real computeElemMatrixContribution() override
Computes the system matrix contribution from an element side on an internal face. ...
Base class for boundary conditions for linear FV systems.
Kernel that adds contributions from a diffusion term discretized using the finite volume method to a ...
const Moose::Functor< Real > & _diffusion_coeff
The functor for the diffusion coefficient.
virtual Real computeElemRightHandSideContribution() override
Computes the right hand side contribution from the element side on an internal face.
Real _flux_rhs_contribution
The cached right hand side contribution.
Finite volume kernel that contributes approximations of discretized face flux terms to the matrix and...
This is a wrapper that forwards calls to the implementation, which can be switched out at any time wi...
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
Real computeFluxMatrixContribution()
Computes the matrix contribution from the diffusive face flux.
static InputParameters validParams()
virtual Real computeNeighborRightHandSideContribution() override
Computes the right hand side contribution from the neighbor side on an internal face.
LinearFVDiffusion(const InputParameters &params)
Class constructor.
virtual Real computeBoundaryRHSContribution(const LinearFVBoundaryCondition &bc) override
Computes the right hand side contribution from a boundary face.
Real _flux_matrix_contribution
The cached matrix contribution.
virtual void initialSetup() override
Gets called at the beginning of the simulation before this object is asked to do its job...
virtual Real computeBoundaryMatrixContribution(const LinearFVBoundaryCondition &bc) override
Computes the matrix contribution from a boundary face.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real computeNeighborMatrixContribution() override
Computes the system matrix contribution from the neighbor side on an internal face.
Real computeFluxRHSContribution()
Computes the right hand side contribution from the diffusive face flux.
const bool _use_nonorthogonal_correction
Switch to enable/disable nonorthogonal correction.