21 std::numeric_limits<Real>::lowest(),
22 "If the old variable value <= min_value, the variable is fixed at its old value");
25 std::numeric_limits<Real>::max(),
26 "If the old variable value >= max_value, the variable is fixed at its old value");
28 "Imposes the boundary condition $u = u_{old}$ if $u_{old}$ exceeds the bounds provided");
34 _u_old(_var.dofValuesOld()),
35 _min_value(getParam<
Real>(
"min_value")),
36 _max_value(getParam<
Real>(
"max_value"))
39 mooseError(
"StickyBC: min_value must not be greater than max_value");
45 const unsigned qp = 0;
virtual Real computeQpResidual() override
StickyBC(const InputParameters ¶meters)
Sticky-type boundary condition, where if the old variable value exceeds the bounds provided u is fixe...
const VariableValue & _u_old
virtual bool shouldApply() override
static InputParameters validParams()
const Real _min_value
The minimum bound.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const Real _max_value
The maximum bound.
registerMooseObject("SolidMechanicsApp", StickyBC)
void mooseError(Args &&... args) const
static InputParameters validParams()