https://mooseframework.inl.gov
LinearFVElementalKernel.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 "LinearFVKernel.h"
13 #include "ElemInfo.h"
14 
20 {
21 public:
23 
29 
30  virtual void addMatrixContribution() override;
31 
32  virtual void addRightHandSideContribution() override;
33 
38  virtual void setCurrentElemInfo(const ElemInfo * elem_info);
39 
45  void setCurrentElemVolume(const Real volume) { _current_elem_volume = volume; }
46 
48  virtual Real computeMatrixContribution() = 0;
49 
52 
53 protected:
56 
59 
62 };
const ElemInfo * _current_elem_info
Pointer to the current element info.
Base class for finite volume kernels that contribute to a linear systems.
static InputParameters validParams()
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
Finite volume kernel that contributes approximations of volumetric integral terms to the matrix and r...
virtual void addMatrixContribution() override
Add this object's contribution to the system matrix.
dof_id_type _dof_id
The dof index for the current variable associated with the element.
Real volume(const MeshBase &mesh, unsigned int dim=libMesh::invalid_uint)
virtual void setCurrentElemInfo(const ElemInfo *elem_info)
Set the current ElemInfo object.
virtual Real computeMatrixContribution()=0
Computes the system matrix contribution for the given variable on the current element.
LinearFVElementalKernel(const InputParameters &params)
Class constructor.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void setCurrentElemVolume(const Real volume)
Set the coordinate system specific volume, the multiplication with the transformation factor is done ...
virtual void addRightHandSideContribution() override
Add this object's contribution to the system right hand side.
Class used for caching additional information for elements such as the volume and centroid...
Definition: ElemInfo.h:25
Real _current_elem_volume
The coordinate-specific element volume.
uint8_t dof_id_type
virtual Real computeRightHandSideContribution()=0
Computes the right hand side contribution for the given variable on the current element.