19 "Computes and reports the critical time step for the explicit solver.");
20 params.
addParam<MaterialPropertyName>(
21 "density",
"density",
"Name of Material Property defining the density of the material.");
22 params.
addParam<MaterialPropertyName>(
23 "density_scaling",
"Name of material property to add mass scaling in explicit simulations.");
24 params.
addParam<
Real>(
"factor", 1.0,
"Factor to mulitply to the critical time step.");
31 _material_density(getMaterialProperty<
Real>(
"density")),
32 _density_scaling(parameters.isParamSetByUser(
"density_scaling")
33 ? &getMaterialPropertyByName<
Real>(
"density_scaling")
35 _sqrt_effective_stiffness(getMaterialPropertyByName<
Real>(
"effective_stiffness")),
36 _factor(getParam<
Real>(
"factor")),
37 _critical_time(parameters.isParamValid(
"critical_time"))
45 paramError(
"CriticalTimeStep can only be used with elasticity tensor materials " 46 "that guarantee isotropic tensors.");
Compute the critical time step for an explicit integration scheme by inferring an effective_stiffness...
void paramError(const std::string ¶m, Args... args) const
const MaterialProperty< Real > * _density_scaling
Added density due to mass scaling (zero if no scaling is selected or applied)
static InputParameters validParams()
const MaterialProperty< Real > & _material_density
Density of the material.
const std::vector< double > y
const MaterialProperty< Real > & _sqrt_effective_stiffness
Square root of Effective stiffness of element.
virtual void initialize() override
CriticalTimeStep(const InputParameters ¶meters)
virtual Real getValue() const override
virtual void initialSetup() override
virtual void finalize() override
virtual void execute() override
static InputParameters validParams()
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const Real & _factor
User defined factor to be multiplied to the critical time step.
const Elem *const & _current_elem
virtual void threadJoin(const UserObject &y) override
registerMooseObject("SolidMechanicsApp", CriticalTimeStep)
bool hasGuaranteedMaterialProperty(const MaterialPropertyName &prop, Guarantee guarantee)
Add-on class that provides the functionality to check if guarantees for material properties are provi...
Real _critical_time
Critical time step for explicit solver.