18 params.
addClassDescription(
"Stress divergence kernel for phase-field fracture: Computes off " 19 "diagonal damage dependent Jacobian components. To be used with " 20 "StressDivergenceTensors or DynamicStressDivergenceTensors.");
21 params.
addParam<std::string>(
"base_name",
"Material property base name");
23 "An integer corresponding to the direction " 24 "the variable this kernel acts in. (0 for x, " 28 "Phase field damage variable: Used to indicate calculation of Off Diagonal Jacobian term");
35 _base_name(isParamValid(
"base_name") ? getParam<
std::string>(
"base_name") +
"_" :
""),
36 _component(getParam<unsigned
int>(
"component")),
37 _c_coupled(isCoupled(
"c")),
38 _c_var(_c_coupled ? coupled(
"c") : 0),
40 getMaterialPropertyDerivative<
RankTwoTensor>(_base_name +
"stress", coupledName(
"c", 0)))
50 for (
unsigned int k = 0;
k < 3; ++
k)
52 return val * _phi[_j][_qp];
static InputParameters validParams()
registerMooseObject("SolidMechanicsApp", PhaseFieldFractureMechanicsOffDiag)
const MaterialProperty< RankTwoTensor > & _d_stress_dc
This class computes the off-diagonal Jacobian component of stress divergence residual system Contribu...
const unsigned int _component
An integer corresponding to the direction this kernel acts in.
PhaseFieldFractureMechanicsOffDiag(const InputParameters ¶meters)
const unsigned int _c_var
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static InputParameters validParams()
static const std::string k
void ErrorVector unsigned int
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override