Go to the source code of this file.
◆ registerMooseObject()
◆ validParams< MechanicalContactConstraint >()
Definition at line 33 of file MechanicalContactConstraint.C.
35 InputParameters params = validParams<NodeFaceConstraint>();
38 params.addRequiredParam<BoundaryName>(
"boundary",
"The master boundary");
39 params.addRequiredParam<BoundaryName>(
"slave",
"The slave boundary");
40 params.addRequiredParam<
unsigned int>(
"component",
41 "An integer corresponding to the direction "
42 "the variable this kernel acts in. (0 for x, "
45 params.addCoupledVar(
"disp_x",
"The x displacement");
46 params.addCoupledVar(
"disp_y",
"The y displacement");
47 params.addCoupledVar(
"disp_z",
"The z displacement");
51 "The displacements appropriate for the simulation geometry and coordinate system");
53 params.addRequiredCoupledVar(
"nodal_area",
"The nodal area");
55 params.set<
bool>(
"use_displaced_mesh") =
true;
56 params.addParam<Real>(
59 "The penalty to apply. This can vary depending on the stiffness of your materials");
60 params.addParam<Real>(
"friction_coefficient", 0,
"The friction coefficient");
61 params.addParam<Real>(
"tangential_tolerance",
62 "Tangential distance to extend edges of contact surfaces");
63 params.addParam<Real>(
64 "capture_tolerance", 0,
"Normal distance from surface within which nodes are captured");
66 params.addParam<Real>(
"tension_release",
68 "Tension release threshold. A node in contact "
69 "will not be released if its tensile load is below "
70 "this value. No tension release if negative.");
72 params.addParam<
bool>(
75 "Whether to normalize the penalty parameter with the nodal area for penalty contact.");
76 params.addParam<
bool>(
"master_slave_jacobian",
78 "Whether to include jacobian entries coupling master and slave nodes.");
79 params.addParam<
bool>(
80 "connected_slave_nodes_jacobian",
82 "Whether to include jacobian entries coupling nodes connected to slave nodes.");
83 params.addParam<
bool>(
"non_displacement_variables_jacobian",
85 "Whether to include jacobian entries coupling with variables that are not "
86 "displacement variables.");
87 params.addParam<
unsigned int>(
"stick_lock_iterations",
88 std::numeric_limits<unsigned int>::max(),
89 "Number of times permitted to switch between sticking and slipping "
90 "in a solution before locking node in a sticked state.");
91 params.addParam<Real>(
"stick_unlock_factor",
93 "Factor by which frictional capacity must be "
94 "exceeded to permit stick-locked node to slip "
96 params.addParam<Real>(
"al_penetration_tolerance",
97 "The tolerance of the penetration for augmented Lagrangian method.");
98 params.addParam<Real>(
"al_incremental_slip_tolerance",
99 "The tolerance of the incremental slip for augmented Lagrangian method.");
101 params.addParam<Real>(
"al_frictional_force_tolerance",
102 "The tolerance of the frictional force for augmented Lagrangian method.");
103 params.addParam<
bool>(
104 "print_contact_nodes",
false,
"Whether to print the number of nodes in contact.");