- masterThe master surface
C++ Type:BoundaryName
Description:The master surface
- slaveThe slave surface
C++ Type:BoundaryName
Description:The slave surface
Contact Action
Description
ContactAction
can be used to specify mechanical normal and tangential contact using several possible models: - frictionless - glued - coulomb (frictional) and formulations: - kinematic - penalty (normal and tangential) - augmented lagrange - mortar (normal with/without tangential)
Example Input syntax
For normal mortar contact:
[Contact]
[frictionless]
mesh = simple_mesh
master = 2
slave = 1
formulation = mortar
system = constraint
[]
[]
(modules/contact/test/tests/mechanical-small-problem/frictionless-nodal-lm-mortar-disp-action.i)For normal and tangential (frictional) mortar contact:
[Contact]
[frictional]
mesh = revised_file_mesh
master = 20
slave = 10
formulation = mortar
system = constraint
model = coulomb
friction_coefficient = 0.1
[]
[]
(modules/contact/test/tests/bouncing-block-contact/frictional-nodal-min-normal-lm-mortar-fb-tangential-lm-mortar-action.i)Input Parameters
- active__all__ If specified only the blocks named will be visited and made active
Default:__all__
C++ Type:std::vector
Description:If specified only the blocks named will be visited and made active
- al_frictional_force_toleranceThe tolerance of the frictional force for augmented Lagrangian method.
C++ Type:double
Description:The tolerance of the frictional force for augmented Lagrangian method.
- al_incremental_slip_toleranceThe tolerance of the incremental slip for augmented Lagrangian method.
C++ Type:double
Description:The tolerance of the incremental slip for augmented Lagrangian method.
- al_penetration_toleranceThe tolerance of the penetration for augmented Lagrangian method.
C++ Type:double
Description:The tolerance of the penetration for augmented Lagrangian method.
- c_normal1Parameter for balancing the size of the gap and contact pressure
Default:1
C++ Type:double
Description:Parameter for balancing the size of the gap and contact pressure
- c_tangential1Parameter for balancing the contact pressure and velocity
Default:1
C++ Type:double
Description:Parameter for balancing the contact pressure and velocity
- capture_tolerance0Normal distance from surface within which nodes are captured
Default:0
C++ Type:double
Description:Normal distance from surface within which nodes are captured
- disp_xThe x displacement
C++ Type:VariableName
Description:The x displacement
- disp_yThe y displacement
C++ Type:VariableName
Description:The y displacement
- disp_zThe z displacement
C++ Type:VariableName
Description:The z displacement
- displacementsThe displacements appropriate for the simulation geometry and coordinate system
C++ Type:std::vector
Description:The displacements appropriate for the simulation geometry and coordinate system
- formulationkinematicThe contact formulation
Default:kinematic
C++ Type:MooseEnum
Description:The contact formulation
- friction_coefficient0The friction coefficient
Default:0
C++ Type:double
Description:The friction coefficient
- inactiveIf specified blocks matching these identifiers will be skipped.
C++ Type:std::vector
Description:If specified blocks matching these identifiers will be skipped.
- master_slave_jacobianTrueWhether to include Jacobian entries coupling master and slave nodes.
Default:True
C++ Type:bool
Description:Whether to include Jacobian entries coupling master and slave nodes.
- meshThe mesh generator for mortar method
C++ Type:MeshGeneratorName
Description:The mesh generator for mortar method
- modelfrictionlessThe contact model to use
Default:frictionless
C++ Type:MooseEnum
Description:The contact model to use
- normal_smoothing_distanceDistance from edge in parametric coordinates over which to smooth contact normal
C++ Type:double
Description:Distance from edge in parametric coordinates over which to smooth contact normal
- normal_smoothing_methodMethod to use to smooth normals
C++ Type:MooseEnum
Description:Method to use to smooth normals
- normalize_penaltyFalseWhether to normalize the penalty parameter with the nodal area.
Default:False
C++ Type:bool
Description:Whether to normalize the penalty parameter with the nodal area.
- orderFIRSTThe finite element order: FIRST, SECOND, etc.
Default:FIRST
C++ Type:MooseEnum
Description:The finite element order: FIRST, SECOND, etc.
- penalty1e+08The penalty to apply. This can vary depending on the stiffness of your materials
Default:1e+08
C++ Type:double
Description:The penalty to apply. This can vary depending on the stiffness of your materials
- systemDiracKernelSystem to use for constraint enforcement
Default:DiracKernel
C++ Type:MooseEnum
Description:System to use for constraint enforcement
- tangential_toleranceTangential distance to extend edges of contact surfaces
C++ Type:double
Description:Tangential distance to extend edges of contact surfaces
- tension_release0Tension release threshold. A node in contact will not be released if its tensile load is below this value. No tension release if negative.
Default:0
C++ Type:double
Description:Tension release threshold. A node in contact will not be released if its tensile load is below this value. No tension release if negative.