www.mooseframework.org
Classes | Functions
TangentialNodalLMMechanicalContact.h File Reference

Go to the source code of this file.

Classes

class  TangentialNodalLMMechanicalContact
 

Functions

template<>
InputParameters validParams< TangentialNodalLMMechanicalContact > ()
 

Function Documentation

◆ validParams< TangentialNodalLMMechanicalContact >()

template<>
InputParameters validParams< TangentialNodalLMMechanicalContact > ( )

Definition at line 22 of file TangentialNodalLMMechanicalContact.C.

23 {
24  InputParameters params = validParams<NodeFaceConstraint>();
25  params.set<bool>("use_displaced_mesh") = true;
26 
27  params.addRequiredCoupledVar(
28  "contact_pressure",
29  "The contact pressure. If using LM, this should be the normal lagrange multiplier");
30  params.addRequiredCoupledVar("disp_y", "The y velocity");
31  params.addRequiredParam<Real>("mu", "The coefficient of friction.");
32 
33  MooseEnum ncp_function_type("min fb", "min");
34  params.addParam<MooseEnum>(
35  "ncp_function_type", ncp_function_type, "The type of NCP function to use");
36 
37  params.addClassDescription("Implements the KKT conditions for frictional Coulomb contact using "
38  "an NCP function. Requires that either the relative tangential "
39  "velocity is zero or the tangential stress is equal to the friction "
40  "coefficient times the normal contact pressure.");
41 
42  params.addRequiredParam<Real>("mu", "The friction coefficient for the Coulomb friction law");
43 
44  params.addParam<Real>(
45  "k_abs",
46  10,
47  "The smoothing parameter for the function used to approximate std::abs. The approximating "
48  "function is courtesy of https://math.stackexchange.com/a/1115033/408963");
49  return params;
50 }