31 virtual void reinit()
override;
48 virtual void computeFandR(
const Node *
const node)
override;
68 const Node *
const node);
74 std::vector<const GenericVariableGradient<true> *>
_grad_disp;
93 std::unordered_map<const DofObject *, ADRankTwoTensor>
_dof_to_F;
std::unordered_map< const DofObject *, ADRealVectorValue > _dof_to_interface_displacement_jump
Map from degree of freedom to local displacement jump.
std::unordered_map< const DofObject *, ADReal > _dof_to_normal_strength
ADReal _normal_strength_interpolation
Interpolated value of normal_strength.
Real getModeMixityRatio(const Node *const node) const
std::unordered_map< const DofObject *, ADRankTwoTensor > _dof_to_interface_F
Map from degree of freedom to interface deformation gradient tensor.
std::unordered_map< const DofObject *, ADRankTwoTensor > _dof_to_rotation_matrix
*** Kinematics/displacement jump quantities *** Map from degree of freedom to rotation matrix ...
virtual void computeFandR(const Node *const node) override
const MaterialProperty< Real > & _GI_c
Fracture parameter mode I.
const Real _regularization_alpha
Parameter for the regularization of the Macaulay bracket.
virtual void reinit() override
std::vector< const GenericVariableGradient< true > * > _grad_disp
Coupled displacement gradients.
const unsigned int _ndisp
Number of displacement components.
virtual void timestepSetup() override
virtual const ADVariableValue & czmGlobalTraction(unsigned int i) const
std::unordered_map< const DofObject *, ADReal > _dof_to_delta_initial
User object for computing weighted gaps and contact pressure for penalty based mortar constraints...
std::unordered_map< const DofObject *, ADRankTwoTensor > _dof_to_interface_R
Map from degree of freedom to interface rotation tensor.
virtual void computeBilinearMixedModeTraction(const Node *const node) override
Encapsulate the CZM constitutive behavior.
Creates dof object to weighted tangential velocities map.
const MaterialProperty< Real > & _GII_c
Fracture parameter mode II.
Real getCohesiveDamage(const Node *const node) const
DualNumber< Real, DNDerivativeType, true > ADReal
virtual void finalize() override
const Real _viscosity
Viscosity for damage model.
std::unordered_map< const DofObject *, ADRealVectorValue > _dof_to_displacement_jump
virtual bool constrainedByOwner() const override
ADReal _shear_strength_interpolation
Interpolated value of shear_strength.
std::unordered_map< const DofObject *, std::pair< ADReal, Real > > _dof_to_damage
std::unordered_map< const DofObject *, ADReal > _dof_to_delta_max
std::unordered_map< const DofObject *, ADReal > _dof_to_GII_c
virtual void computeQpIProperties() override
Computes properties that are functions both of _qp and _i, for example the weighted gap...
MixedModeCriterion
Mixed-mode propagation criterion.
virtual void computeQpProperties() override
Computes properties that are functions only of the current quadrature point (_qp), e.g.
Real getLocalDisplacementTangential(const Node *const node) const
virtual void computeGlobalTraction(const Node *const node) override
Compute global traction for mortar application.
std::unordered_map< const DofObject *, ADRealVectorValue > _dof_to_czm_traction
Total Lagrangian stress to be applied on CZM interface.
ADRankTwoTensor _F_interpolation
Deformation gradient for interpolation.
const MaterialProperty< Real > & _shear_strength
The shear strength material property.
std::vector< ADVariableValue > _czm_interpolated_traction
The global traction.
const MaterialProperty< Real > & _normal_strength
The normal strength material property.
std::unordered_map< const DofObject *, ADRankTwoTensor > _dof_to_F_neighbor
Map from degree of freedom to neighbor, interpolated deformation gradient tensor. ...
ADRankTwoTensor _F_neighbor_interpolation
Deformation gradient for interpolation of the neighbor projection.
std::unordered_map< const DofObject *, ADReal > _dof_to_delta_final
std::unordered_map< const DofObject *, ADRankTwoTensor > _dof_to_F
Map from degree of freedom to secondary, interpolated deformation gradient tensor.
virtual void computeModeMixity(const Node *const node)
static InputParameters validParams()
T normalizeQuantity(const std::unordered_map< const DofObject *, T > &map, const Node *const node)
Normalize mortar quantities (remove mortar integral scaling)
BilinearMixedModeCohesiveZoneModel(const InputParameters ¶meters)
std::unordered_map< const DofObject *, ADReal > _dof_to_shear_strength
virtual void computeDamage(const Node *const node)
ADReal _GI_c_interpolation
Interpolated value of fracture paramter mode I.
virtual void computeCriticalDisplacementJump(const Node *const node)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
std::unordered_map< const DofObject *, ADReal > _dof_to_GI_c
std::vector< const GenericVariableGradient< true > * > _grad_disp_neighbor
Coupled displacement and neighbor displacement gradient.
User object that interface pressure resulting from a simple traction separation law.
virtual void prepareJumpKinematicQuantities() override
const InputParameters & parameters() const
enum BilinearMixedModeCohesiveZoneModel::MixedModeCriterion _mix_mode_criterion
User object that interface pressure resulting from a simple traction separation law.
virtual void computeFinalDisplacementJump(const Node *const node)
const Real _power_law_parameter
Power law parameter for bilinear traction model.
Real getLocalDisplacementNormal(const Node *const node) const
virtual void computeEffectiveDisplacementJump(const Node *const node)
virtual void initialize() override
ADReal _GII_c_interpolation
Interpolated value of fracture paramter mode II.
std::unordered_map< const DofObject *, ADReal > _dof_to_mode_mixity_ratio
Map from degree of freedom to mode mixity ratio (AD needed?)
const Real _penalty_stiffness_czm