https://mooseframework.inl.gov
Loading...
Searching...
No Matches
FVElementalKernel.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 "FVKernel.h"
13#include "MooseVariableFV.h"
17
26 public MooseVariableInterface<Real>,
29{
30public:
33
37 void computeResidual() override;
38 void computeResidualAndJacobian() override;
39 void computeJacobian() override;
40 virtual void computeOffDiagJacobian();
41 void computeOffDiagJacobian(unsigned int) override;
43
44 const MooseVariableFV<Real> & variable() const override { return _var; }
45
46protected:
53
56 const unsigned int _qp = 0;
57 const Elem * const & _current_elem;
58
61};
DualNumber< Real, DNDerivativeType, true > ADReal
Intermediate base class that ties together all the interfaces for getting MooseVariableFEBases with t...
FVElemental is used for calculating residual contributions from volume integral terms of a PDE where ...
static InputParameters validParams()
MooseVariableFV< Real > & _var
virtual ADReal computeQpResidual()=0
This is the primary function that must be implemented for flux kernel terms.
void computeResidualAndJacobian() override
Compute this object's contribution to the residual and Jacobian simultaneously.
const unsigned int _qp
void computeJacobian() override
Compute this object's contribution to the diagonal Jacobian entries.
void computeResidual() override
Usually you should not override these functions - they have some tricky stuff in them that you don't ...
const Moose::Functor< ADReal > & _u_functor
const Elem *const & _current_elem
const MooseVariableFV< Real > & variable() const override
Returns the variable that this object operates on.
virtual void computeOffDiagJacobian()
const MooseArray< Point > & _q_point
The physical location of the element's quadrature Points, indexed by _qp.
FVKernel is a base class for all finite volume method kernels.
Definition FVKernel.h:36
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
An interface for accessing Materials.
forward declarations
Definition MooseArray.h:18
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
This class provides variable solution values for other classes/objects to bind to when looping over f...
Interface for objects that need to get values of MooseVariables.
This is a wrapper that forwards calls to the implementation, which can be switched out at any time wi...