19 "time derivative term in a partial differential equation.");
21 "factor", 1.0,
"A multiplier on the variable within the time derivative.");
27 _factor(getFunctor<
Real>(
"factor")),
28 _time_integrator(_sys.getTimeIntegrator(_var_num)),
29 _factor_history(_time_integrator.numStatesRequired(), 0.0),
30 _state_args(_time_integrator.numStatesRequired(), determineState())
const ElemInfo * _current_elem_info
Pointer to the current element info.
LinearFVTimeDerivative(const InputParameters ¶ms)
Class constructor.
static InputParameters validParams()
const Elem * elem() const
static InputParameters validParams()
std::vector< Real > _factor_history
Current and older values of the material property multiplier.
virtual Real timeDerivativeMatrixContribution(const Real factor) const
The time derivative's contribution to the right hand side of a linear system.
virtual Real timeDerivativeRHSContribution(dof_id_type dof_id, const std::vector< Real > &factors={}) const
The time derivative's contribution to the right hand side of a linear system.
const TimeIntegrator & _time_integrator
The time integrator to use in this kernel, will provide information on how many states are required i...
Finite volume kernel that contributes approximations of volumetric integral terms to the matrix and r...
Moose::ElemArg makeElemArg(const Elem *elem, bool correct_skewnewss=false) const
Helper method to create an elemental argument for a functor that includes whether to perform skewness...
std::vector< Moose::StateArg > _state_args
State args, the args which will help us fetch the different states of the material property multiplie...
virtual Real computeRightHandSideContribution() override
Computes the right hand side contribution for the given variable on the current element.
virtual void setCurrentElemInfo(const ElemInfo *elem_info) override
Set the current ElemInfo object.
dof_id_type _dof_id
The dof index for the current variable associated with the element.
const Moose::Functor< Real > & _factor
The functor for the material property multipler.
virtual void setCurrentElemInfo(const ElemInfo *elem_info)
Set the current ElemInfo object.
Kernel that adds contributions from a time derivative term to a linear system populated using the fin...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real computeMatrixContribution() override
Computes the system matrix contribution for the given variable on the current element.
State argument for evaluating functors.
Class used for caching additional information for elements such as the volume and centroid...
registerMooseObject("MooseApp", LinearFVTimeDerivative)
Real _current_elem_volume
The coordinate-specific element volume.
auto index_range(const T &sizable)