14 #include "libmesh/numeric_vector.h" 27 _mass_diag(initLumpedMass()),
28 _u_old(_var.nodalValueOld()),
29 _u_dot_old(_var.nodalValueDotOld()),
34 mooseError(
"Time integrator for the variable is not of the right type.");
71 if (nl.hasVector(
"mass_matrix_diag_inverted"))
72 return nl.
getVector(
"mass_matrix_diag_inverted");
74 mooseError(
"Lumped mass matrix is missing. Make sure ExplicitMixedOrder is being used as the "
static InputParameters validParams()
ExplicitMixedOrder::TimeOrder _var_time_order
variable time order need for computing BC
unsigned int number() const
virtual Real computeQpValue()=0
Compute the value of the DirichletBC at the current quadrature point.
ExplicitDirichletBCBase(const InputParameters ¶meters)
TimeOrder findVariableTimeOrder(unsigned int var_num) const
Retrieve the order of the highest time derivative of a variable.
Implements a form of the central difference time integrator that calculates acceleration directly fro...
virtual Real computeQpResidual() override
const NumericVector< Number > & initLumpedMass()
Initialize the lumped mass matrix.
FEProblemBase & _fe_problem
const NumericVector< Number > & _mass_diag
The diagonal of the mass matrix.
NonlinearSystemBase & getNonlinearSystemBase(const unsigned int sys_num)
unsigned int number() const
MooseVariableFE< Real > * _variable
virtual void timestepSetup() override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const dof_id_type & nodalDofIndex() const override
void mooseError(Args &&... args) const
static InputParameters validParams()
const ExplicitMixedOrder * _explicit_integrator
explicit time integrator
virtual NumericVector< Number > & getVector(const std::string &name)