Contact
In the Contact node, you define the mechanical and numerical properties for a set of contact pairs in a contact analysis. Use it for modeling structural contact and multiphysics contact. In the latter case, you will also need to add corresponding pair conditions in the other participating physics interfaces.
In the contact pair, the destination side selection must be part of the physics interface in which you add the Contact node. The source side selection can be any kind of meshed object, but if it is part of the current physics interface, more options are made available. It is also possible to use the same selection for both the destination and source side to, for example, model self-contact. Note that the source and destination may not partially intersect each other.
If friction is to be included in the modeling, add a Friction or a Slip Velocity subnode. The latter provides a simplified modeling approach, when the state of friction and the direction of slip between the two boundaries are known.
The Wear subnode is not available in the Layered Shell interface.
If contact pairs are present and active in the model component, a default Contact node is added to the physics with all contact pairs selected. Contact pairs selected in a Contact node are exclusive, which means that if a contact pair is selected more than once, only its last occurrence in the physics tree will be active. Hence, by adding new Contact nodes, physics properties and settings related to specific contact pairs can be set.
Moreover, contact equations are only added if and only if a destination boundary of an active contact pair intersects with the selection of the physics interface. If only source boundaries are active, it is, however, possible to for example add offsets to the contact surface. This can be useful when setting up contact conditions across multiple physics interfaces.
Which of the Contact settings described below are visible, depends on the applicable selections of the specific feature.
If no contact pairs are selected, all settings are visible.
Updating the settings window of the Contact node based on the applicable selections can result in some delay for models with a large number of pairs. This functionality can be turned off by disabling the Selection Information () option in the Show More Options dialog (), which may improve the responsiveness of the user interface.
The Contact node is only available with some COMSOL products (see https://www.comsol.com/products/specifications/).
In order to specify contact conditions, one or more Contact Pair nodes must be available in the Definitions branch.
When a Contact node is present in your model, all studies are geometrically nonlinear. The Include geometric nonlinearity check box on the study step Settings window is selected and cannot be cleared.
For the default Contact node, selecting Disconnect pair in the Contact method section removes the above requirement and makes it possible to clear the Include geometric nonlinearity check box.
Contact Surface
When Contact is used in a Layered Shell, Shell, or Membrane interface, settings that control which side of the boundary that can come into contact are also made available.
For Contact surface, destination and Contact surface, source, select Top or Bottom. The top side is the one with an outward pointing normal vector.

Contact Method
Select the algorithm used for computing the contact, Penalty (default); Penalty, dynamic; Augmented Lagrangian; Augmented Lagrangian, dynamic; or Nitsche. The augmented Lagrangian method is in general more accurate than the penalty method, but also more expensive in terms of computer resources. The Nitsche method is also a more accurate method that is available with it the Solid Mechanics and Multibody Dynamics interfaces.
When Augmented Lagrangian is selected, it is also possible to choose Solution methodSegregated (default) or Fully coupled. This setting affects how the default solver suggestion is set up when generating a new solver sequence, as well as some variable definitions and equations.
The Penalty, dynamic; and Augmented Lagrangian, dynamic formulations are intended for use in time-dependent studies to model dynamics contact, such as soft impact type events.
The Nitsche method can conceptually be seen as an enhancement of the penalty method where the surface traction of the adjacent domains is utilized to improve accuracy. When selected, it is also possible to choose a FormulationSymmetric, Skew-symmetric, or Incomplete (default). This setting controls how the equations added to implement the contact condition are written and can influence the robustness and performance of the solution. The default Incomplete formulation is the least expensive of the three, and, in the majority of cases, gives an accurate and robust solution.
For the default Contact node, it is possible to disconnect the selected contact pairs by selecting Disconnect pair. When the pairs are disconnected, they will add contributions by adding equations or variables, but the region is still identified as a pair region. Also, the presence of the Contact node will require the study to be geometrically nonlinear.
Contact Pressure Penalty Factor
The settings in this section are used to control the penalty factor used by the pressure contact model. The settings available depend on the chosen contact method.
Settings for the Penalty Method
Select the type of Penalty factor controlAutomatic; Automatic, soft; Manual tuning; Nonlinear; or User defined.
Automatic and Automatic, soft provide predefined values for the penalty factor multiplier fp. The Automatic, soft is mainly intended for bending dominated problems, typically encountered when using contact with the Shell interface.
For Manual Tuning, enter a Penalty factor multiplier fp. The default value is 1, which corresponds to the Automatic option.
For Nonlinear, enter an Initial penalty factor multiplier fp,init and a Final penalty factor multiplier fp,fin. Also enter a value for the Transition gap, gn,tr to control when to switch between the initial and final penalty factors. The default value is -<phys>.hmin_dst.*1e-3.
For User defined, enter a Contact pressure penalty factor pn. The default value is <phys>.<contact_tag>.E_char/<phys>.hmin_dst. The variable E_char contains the value given as characteristic stiffness, and hmin_dst is the minimum element size on the destination selection.
Click to select Offset penalty function if you want the contact pressure to be nonzero when the gap is zero. In that case, also enter a value for the Contact pressure at zero gap T0. Through this option, you can to some extent compensate for the overclosure that is inherent to the penalty method if you know an approximate value of the expected contact pressure.
Settings for the Penalty, Dynamic Method
Select the type of Penalty factor controlAutomatic; Automatic, soft; Manual tuning; Nonlinear; Viscous only; or User defined. The settings are the same as for the standard penalty method, except for the Viscous only option. By selecting Viscous only, the stiffness terms of the penalty contact are omitted from the formulation.
Select the type of Viscous penalty factor controlAutomatic or User defined. For Automatic, enter a value for the Characteristic time τn. This value can be used as a multiplier for the viscous penalty factor, but should as a rule-of-thumb be in the same order of magnitude as the duration of the contact event. When User defined is selected, enter the Viscous contact pressure penalty factor pnv. The default value is (<phys>.<contact_tag>.E_char/<phys>.hmin_dst)*1[ms]. The variable E_char contains the value given as characteristic stiffness, and hmin_dst is the minimum element size on the destination selection.
Settings for the Segregated Augmented Lagrangian Method
Select the type of Penalty factor controlPreset (default), Manual tuning, or User defined. The settings give access to an increasing level of detailed control of the penalty factor, and are available when Solution method is set to Segregated.
If you select Preset, you have the options to select Tuned for to be Stability (default), Speed, or Bending. If the contact boundaries move toward each other, so that large overclosures can be expected in the initial outer iterations, then Stability is the better choice since it relaxes the penalty factor during the first iterations. In many models, where the contact state does not change much, using Speed gives significant performance improvements. The Bending option provides a low penalty factor equal to the one used for the first iterations when using Stability. This option thus provides a conservative algorithm that can be particularly useful for problems dominated by bending. However, it might require many iterations to reach convergence.
The Penalty factor control selection Manual tuning gives you access to a number of detailed settings for the penalty factor.
Enter a Penalty factor multiplier fp. The default value is 1. From Use relaxation, select Always (default), Never, or Conditional. When using relaxation, the penalty factor is decreased during the first outer iterations in each parameter or time step. The purpose is to avoid large residuals in the case of a large initial overclosure between the contacting boundaries.
If relaxation is used, enter the Initial Relaxation Factor ri. The default is 0.005. This factor multiplies the penalty factor in the first outer iteration. Enter Number of iterations with relaxation Nr. The default value is 4. The penalty factor is gradually increased up to its full value, which is used in the outer iteration after the one where the specified number of iterations with relaxation have been reached.
If Use relaxation is set to Conditional, enter a Suppression criterion. The default is 0, which means that the relaxation is used for all parameter or time steps. This is a Boolean expression which, when fulfilled, suppresses the relaxation. If you, for example, know that your problem needs relaxation only during the initial phase of the solution, enter an expression like load_parameter>0.1. It is also possible to use expressions based on the solution, for example abs(solid.cnt1.gap)<0.05*h. This expression is true when the gap or overclosure is small compared to the mesh size. It could be taken as an indication that the contact problem is almost converged, and thus not in need of any relaxation of the penalty factor.
Using the Penalty factor control selection User defined gives you the possibility to enter an explicit expression for penalty factor. Enter the Contact pressure penalty factor pn. The default is (min(1e-3*(5^niterCMP,1))*<phys>.<contact_tag>.E_char)/<phys>.hmin_dst. The default value causes the penalty factor to be increased during the outer iterations and takes material stiffness and element size at the contact surface into account. The variable E_char contains the value given as characteristic stiffness, and hmin_dst is the minimum element size on the destination selection.
The default values when Manual tuning is selected corresponds to the default expression when User defined is selected. The same expression is also used internally when Preset is used with the Stability option.
Settings for the Fully Coupled Augmented Lagrangian Method and the Nitsche Method
Select the type of Penalty factor controlAutomatic (default), Manual tuning, or User defined. These settings are available when Solution method is set to Fully Coupled.
For Manual Tuning, enter a Penalty factor multiplier fp. The default value is 1, which corresponds to the Automatic option.
For User defined, enter a Contact pressure penalty factor pn. The default value is <phys>.<contact_tag>.E_char/<phys>.hmin_dst. The variable E_char contains the value given as characteristic stiffness, and hmin_dst is the minimum element size on the destination selection.
Settings for the Augmented Lagrangian, Dynamic Method
Select the type of Viscous penalty factor controlPreset (default), Manual tuning, or User defined. The settings give access to an increasing level of detailed control of the penalty factor.
When Preset or Manual Tuning is selected, enter a value for the Characteristic time τn. This value can be used as a multiplier for the viscous penalty factor, but should as a rule-of-thumb be in the same order of magnitude as the duration of the contact event. The same settings as for the segregated augmented Lagrangian method are available for the Preset and Manual Tuning options. However, the default is to use no relaxation when the Augmented Lagrangian, dynamic method is used.
Using the Penalty factor control selection User defined gives you the possibility to enter an explicit expression for penalty factor. Enter the Viscous contact pressure penalty factor pnv. The default value is (<phys>.<contact_tag>.E_char/<phys>.hmin_dst)*1[ms]. The variable E_char contains the value given as characteristic stiffness, and hmin_dst is the minimum element size on the destination selection.
Trigger Cutback
Select the Trigger cutback check box to enable additional control over solver cutbacks in a time-dependent study or a stationary study with an auxiliary sweep. Enter a logical expression for Cutback criterion. When this expression evaluates to a nonzero value, the iterations are immediately terminated, and the solver tries to use a smaller value of the time or parameter. You can use this setting to avoid that the solver spends many iterations trying to recover from an unphysical state. As an example, if you know that the destination boundary is confined, so that it will not move more than 1 mm anywhere, an entry like solid.disp > 5[mm] can be useful, since it is unlikely that a displacement of this size should appear during a successful iteration history.
In the COMSOL Multiphysics Reference Manual:
Contact Surface Offset and Adjustment
Enter a value or expression for Offset from geometric destination surface doffset,d. The offset is subtracted from the gap in the normal direction of the destination surface.
Enter a value or expression for Offset from geometric source surface doffset,s. The offset is subtracted from the gap in the normal direction of the source surface.
Select Force zero initial gap to compensate for any difference caused by irregularities in geometry or mesh when the two contacting boundaries should exactly coincide in the initial state. Gaps smaller than the tolerance Δgap are adjusted to be zero before any offset is added. By default, Δgap is set to Inf, meaning that all gaps detected are adjusted to be zero.
When combined with Force zero initial gap, the offset will be exact in the sense that it is not affected by mesh irregularities.
The adjustment made by Force zero initial gap does not move any nodes in the mesh. Effectively, it adds an extra hidden offset, which compensates for the initial distance between source and destination boundaries.
Initial Value
This section is only available when Formulation is Augmented Lagrangian or Augmented Lagrangian, dynamic. In the augmented Lagrangian method, the contact pressure is introduced as an extra dependent variable on the destination boundaries. Enter a value for Contact pressure Tn to supply an initial value for the contact pressure.
Discretization
To display this section, click the Show More Options button () and select Advanced Physics Options in the Show More Options dialog box.
This section is only available when Formulation is Augmented Lagrangian or Augmented Lagrangian, dynamic. In the augmented Lagrangian method, the contact pressure is introduced as an extra dependent variable on the destination boundaries. You can modify the shape function type and order of this field. The default is to always use a linear shape function order for the contact pressure, but using a higher order can improve the accuracy of the contact condition. A value up to the discretization order of the displacement field is allowed. This setting also affects the shape function for dependent variables added by any subnode added to the Contact node.
To change the discretization, select Shape function typeLagrange or Nodal serendipity.
For the Lagrange shape-function type, select Element orderLinear, Quadratic, Cubic, Quartic, or (in 2D) Quintic.
For the Nodal serendipity shape-function type, select Element orderQuadratic, Cubic, or Quartic. The Nodal serendipity option is not available when the order of the displacement field is linear.
The lumped solver used for the segregated augmented Lagrangian method is only optimal when the shape function order is Linear; otherwise, use a standard segregated step instead. The proper solver sequence is set up when adding a new default solver.
Quadrature Settings
To display this section, click the Show More Options button () and select Advanced Physics Options in the Show More Options dialog box.
Typically, the expression in the contact weak equations include discontinuous functions. It is sometimes preferable to use a high integration order to improve the accuracy of the numerical integration of such expression. By default, the numerical integration of the contact weak equations is two times the shape function order of the displacement field. Clear the Use automatic quadrature settings check box to specify a custom order. When the check box is cleared, enter an integer value between 0 and 41 in the Integration order field. This setting also affects the integration order for any subnode added to the Contact node.
The Integration order both affects the numerical integration of the contact weak contributions and the number of state variables used when, for example, computing friction forces.
Advanced
To display this section, click the Show More Options button () and select Advanced Physics Options in the Show More Options dialog box.
Enter a Characteristic stiffness Echar. The default is <phys>.Eequ, the equivalent Young’s modulus as defined by most material models. The characteristic stiffness (stored in a variable named <phys>.<contact_tag>.E_char) is used in expressions for the default penalty factors for both the penalty and the augmented Lagrangian methods. The characteristic stiffness should be representative for the stiffness of the destination domain material in a direction normal to the boundary. You may for example need to adjust the default value in for the following cases:
The variable <phys>.Eequ is not defined by the material. This is the case for some user-defined materials.
Multiphysics Contact Detection
When analyzing a multiphysics contact problem, the state of being in contact or not will be passed from the contact analysis in the structural mechanics interface to other participating physics interfaces. For numerical reasons, the gap value will however not be exactly zero, even when the boundaries are in contact. A certain small positive value of the gap will thus be considered as being in contact. The default Multiphysics contact tolerance is Automatic. If you want to explicitly specify the limit of the gap considered as being in contact, select Manual, and enter the Contact tolerance Δcontact.
Jacobian Contribution
The equations for the contact conditions can be implemented differently in order to influence the robustness and stability of the discretized system of equations and its linearization. This can be controlled by the Jacobian Contribution setting.
When the Jacobian Contribution is set to Nonsymmetric, the variations of the normal vector on the source boundary are excluded. This is the most robust implementation for cases where the source boundary undergoes large deformation. However, it has the drawback of causing the global stiffness matrix to become nonsymmetric, which increases the memory requirement in the linear solver.
The Symmetric option can be used instead when this is problematic for the linear solver. For this option, the main contact equations does not force a nonsymmetric stiffness matrix, although some subnodes may still do so. Variations of the normal vector on the source boundary are excluded also for this option, but it is not as robust as the Nonsymmetric option.
When the Jacobian Contribution is set to Automatic, the Nonsymmetric option is used for contact pairs using the Deformed configuration mapping method, while the Symmetric option is used for the Initial configuration mapping method.
When the Jacobian Contribution is set to Legacy, variations of the normal vector on the source boundary are included, and the contribution to the global stiffness matrix is symmetric.
For the Nitsche method, the Jacobian Contribution setting is not available, since the equations are always formulated according to the Nonsymmetric option.
Fields Excluded from Variation
In some cases, it is not desirable to include reaction forces from all physics when setting up the variational term of the contact weak contributions. When Fields excluded from variation is set to Automatic, variations are taken with respect all fields expect when a Wear subnode is added. If a Wear subnode is active and uses a Deformed geometry formulation, variations with respect to the material mesh displacement field is excluded in all weak equations added by Contact and its subnodes. By setting Fields excluded from variation to Manual, it is possible to exclude variations with respect to any field present in the model. When Manual is selected, enter a comma separated list of field names to exclude. By default, the input field is populated with material.disp, which exclude variations with respect to material mesh displacement field added by the deformed geometry functionality.
Select Add contact status to solver log to get printouts about the change in the contact state in the solver log window. Doing so will add internal dependent variables used for tracking the contact state on the destination boundaries.
The Penalty, dynamic and Augmented Lagrangian, dynamic are dissipative formulations. When either of these are selected in the Contact Method section, select Compute viscous contact dissipation to compute and store to the energy dissipated by the viscous pressure contact. This adds one extra dependent variable and an extra distributed ODE.
Location in User Interface
Context Menus
Ribbon
Physics tab with Solid Mechanics, Layered Shell, Shell, Membrane, or Multibody Dynamics selected: