#include <TangentialMortarLMMechanicalContact.h>
template<ComputeStage compute_stage>
class TangentialMortarLMMechanicalContact< compute_stage >
Definition at line 15 of file TangentialMortarLMMechanicalContact.h.
◆ TangentialMortarLMMechanicalContact()
template<ComputeStage compute_stage>
Definition at line 41 of file TangentialMortarLMMechanicalContact.C.
43 : ADMortarConstraint<compute_stage>(parameters),
45 this->_subproblem.getStandardVariable(_tid, parameters.getMooseType(
"slave_disp_y"))),
47 isParamValid(
"master_disp_y")
48 ? this->_subproblem.getStandardVariable(_tid, parameters.getMooseType(
"master_disp_y"))
49 : this->_subproblem.getStandardVariable(_tid, parameters.getMooseType(
"slave_disp_y"))),
51 this->_subproblem.getStandardVariable(_tid, parameters.getMooseType(
"contact_pressure"))),
53 _slave_x_dot(_slave_var.template adUDot<compute_stage>()),
54 _master_x_dot(_master_var.template adUDotNeighbor<compute_stage>()),
58 _epsilon(std::numeric_limits<Real>::epsilon()),
59 _ncp_type(getParam<MooseEnum>(
"ncp_function_type")),
60 _c(getParam<Real>(
"c"))
◆ computeQpResidual()
template<ComputeStage compute_stage>
Definition at line 66 of file TangentialMortarLMMechanicalContact.C.
70 case Moose::MortarType::Lower:
79 ADRealVectorValue relative_velocity(
83 auto tangential_velocity = relative_velocity * _tangents[_qp][0];
88 if (tangential_velocity * _lambda[_qp] < 0)
89 a = -std::abs(tangential_velocity);
91 a = std::abs(tangential_velocity);
102 fb_function = a + b - std::sqrt(a * a + b * b +
_epsilon);
104 fb_function = std::min(a, b);
106 return _test[_i][_qp] * fb_function;
110 return _test[_i][_qp] * _lambda[_qp];
115 return _test[_i][_qp] * _lambda[_qp];
◆ _c
template<ComputeStage compute_stage>
◆ _contact_pressure
template<ComputeStage compute_stage>
◆ _contact_pressure_var
template<ComputeStage compute_stage>
◆ _epsilon
template<ComputeStage compute_stage>
◆ _friction_coeff
template<ComputeStage compute_stage>
◆ _master_disp_y
template<ComputeStage compute_stage>
◆ _master_x_dot
template<ComputeStage compute_stage>
◆ _master_y_dot
template<ComputeStage compute_stage>
◆ _ncp_type
template<ComputeStage compute_stage>
◆ _slave_disp_y
template<ComputeStage compute_stage>
◆ _slave_x_dot
template<ComputeStage compute_stage>
◆ _slave_y_dot
template<ComputeStage compute_stage>
◆ usingMortarConstraintMembers
template<ComputeStage compute_stage>
The documentation for this class was generated from the following files: