17 #include "libmesh/boundary_info.h" 27 "variable",
"The name of a variable whose value at the crack front is to be reported");
29 "The CrackFrontDefinition user object name");
31 "crack_front_point_index",
32 "The index of the point on the crack front where data is to be reported");
33 params.
addParam<
Real>(
"scale_factor", 1,
"A scale factor to be applied to the reported quantity");
40 _crack_front_point_index(isParamValid(
"crack_front_point_index")
41 ? getParam<unsigned
int>(
"crack_front_point_index")
43 _crack_front_node(NULL),
44 _mesh(_subproblem.
mesh()),
45 _var_name(parameters.
get<VariableName>(
"variable")),
46 _scale_factor(getParam<
Real>(
"scale_factor")),
47 _field_var(_subproblem.getStandardVariable(_tid, _var_name)),
51 mooseError(
"CrackFrontData can be output only for nodal variables, variable '",
59 if (!(_crack_front_point_index < _crack_front_definition->getNumCrackFrontPoints()))
60 mooseError(
"crack_front_point_index out of range in CrackFrontData");
62 mooseError(
"CrackFrontData not currently supported if crack front is defined with points " static InputParameters validParams()
CrackFrontData(const InputParameters ¶meters)
const CrackFrontDefinition *const _crack_front_definition
const Node * getCrackFrontNodePtr(const std::size_t node_index) const
Get the node pointer for a specified node on the crack front.
MooseVariable & _field_var
registerMooseObject("SolidMechanicsApp", CrackFrontData)
virtual Real getValue() const override
This will return the degrees of freedom in the system.
bool hasCrackFrontNodes() const
Determine whether the crack front was defined using nodes.
virtual void execute() override
static InputParameters validParams()
Class used in fracture integrals to define geometric characteristics of the crack front...
const unsigned int _crack_front_point_index
virtual void initialize() override
OutputData getNodalValue(const Node &node) const
bool isNodal() const override
const Node * _crack_front_node
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
processor_id_type processor_id() const
void ErrorVector unsigned int
const Elem & get(const ElemType type_in)
virtual void finalize() override