18 params.
addClassDescription(
"Class to apply a preset BC to nodes with rigid body motion (RBM).");
21 params.
set<
bool>(
"preset") =
true;
30 _u_old(_var.dofValuesOld()),
31 _bond_status_var(&_subproblem.getStandardVariable(_tid,
"bond_status"))
45 unsigned int active_bonds = 0;
48 for (
unsigned int nb = 0; nb < bonds.size(); ++nb)
registerMooseObject("PeridynamicsApp", RBMPresetOldValuePD)
static InputParameters validParams()
virtual Elem * elemPtr(const dof_id_type i)
DofValue getElementalValue(const Elem *elem, unsigned int idx=0) const
const Node *const & _current_node
std::vector< dof_id_type > getBonds(dof_id_type node_id)
Function to return the bond number connected with node node_id.
virtual unsigned int dimension() const override
Class to apply preset BC of old variable solution based on the number of active bonds.
virtual Real computeQpValue() override
virtual bool shouldApply() const override
const VariableValue & _u_old
Value of the unknown variable this BC is acting on at last time step.
PeridynamicsMesh & _pdmesh
Peridynamic mesh.
MooseVariable * _bond_status_var
AuxVariable for number of intact bonds associated with each material point.
static InputParameters validParams()
RBMPresetOldValuePD(const InputParameters ¶meters)