Fill out the form to download

Required field
Required field
Not a valid email address
Required field
Required field
  • Set up your own cloud-native simulation in minutes.

  • Documentation

    Linear Contacts

    Two bodies are said to be in contact when they share at least one common boundary and the boundaries are constrained by a relation (i.e. no relative movement).

    In the case of structural simulations, the multiple parts in an assembly are discretized into multiple non-conforming mesh parts, i.e. the single bodies are meshed separately by the meshing algorithm and do not share the nodes lying on their contacting entities, thus they are not connected. In order to ensure the mechanical interaction between the parts, they have to be related via contact constraints, which create the proper coupling between the degrees of freedom.

    Automatic Contact Detection

    In order to guarantee that the simulated domain is properly constrained, all contacts in the system will be detected automatically whenever a new CAD assembly is assigned to a simulation (this also includes simulation creation). By default, all contacts in the assembly will be created as Bonded contacts, which can later be edited by the user.

    Contact detection can also be triggered manually via the context menu of the Contacts node in the simulation tree by clicking on the ‘+ button’:

    contact creation menu linear contacts
    Figure 1: Creating a new contact, highlighting the automatic contact detection option.

    While contacts are being detected, the Contacts in the simulation tree is locked. The time required for contact detection depends on the size and complexity of the geometry and can take between a few seconds to a few minutes. A loading indicator on the contact tree node signals that contact detection is ongoing.

    Bulk Selection

    Depending on the size and complexity of an assembly, the number of contacts created can become quite large. An easy way to edit multiple contacts at once is via bulk selection. The bulk selection panel exposes all contact options besides assignments to the user for editing.

    Contacts can be selected in bulk via CTRL + Click and/or SHIFT + Click in the contact list or via the filter contacts by selection option in the viewer context menu. The Filter contacts by selection option returns contacts based on the current selection. The following selection modes are possible:

    • One volume selected: All contacts that contain at least 1 face on the selected volume will be selected.
    • Two or more volumes selected: All contacts that contain at least one face on at least two of the selected volumes will be selected.
    • One or multiple faces on one body selected: All contacts that contain at least one of the selected faces will be selected.
    • Multiple faces across more than one volume selected: All contacts that contain at least one of the selected faces from at least two of the volumes will be selected.

    Contact Types

    Currently, there are three types of contact constraints available:

    1. Bonded contact
    2. Sliding contact
    3. Cyclic symmetry

    Bonded Contact

    The bonded contact is a type of contact which allows no relative displacement between two connected solid bodies. This type of contact constraint is used to glue together different parts of an assembly.

    simscale bonded linear contact
    Figure 2: Two parts joined by a bonded contact will move together.

    You can assign faces or sets of faces that should be tied together via the assignment box under Pick Faces. For numerical purposes, you have to choose one of these selections as master and the other one as slave. During the calculation, the degrees of freedom of slave nodes are constrained to the master surface.

    When running contact analyses, the position tolerance can be set manually or turned off. The position tolerance defines the distance between any slave node and the closest point to the nearest master face. When turned on, only those slave nodes will be constrained, which are within the defined range from a master face. When the tolerance is set to off, all slave nodes will be tied to the master surface absolutely. Therefore, if a larger face is used as a master, one slave node will be tied to multiple master nodes leading to artificial stiffness in the slave surface.

    bonded contact setup panel
    Figure 3: Bonded contact setup panel, where position tolerance, master surface, and slave surface can be assigned.


    If a larger surface (or surface with higher mesh density) is chosen as slave, the computation time will increase significantly and it might also result in a wrong solution, especially when no specific tolerance criteria is provided.

    Sliding Contact

    The sliding contact allows for displacement tangential to the contact surface but no relative movement along the normal direction. This type of contact constraint is used to simulate sliding movement in the assembly for linear simulations. The two surfaces that are in contact are classified as master and slave. Every node in the slave surface (slave node) is tied to a node in the master surface (master node) by a constraint.

    simscale sliding linear contact
    Figure 4: Two parts joined by a sliding contact can move relatively across the plane of contact.

    You can assign faces or face sets that should be tied together via the assignment boxes under Pick Faces. For numerical purposes, you have to choose one of these selections as master and the other one as slave. During the calculation, the degrees of freedom of slave nodes are constrained to the master surface while only allowing tangential movement.

    sliding contact setup panel
    Figure 5: Sliding contact setup panel.


    The sliding contact is a linear constraint which is intended for planar sliding interfaces. Therefore, no large displacements and rotations are allowed in the proximity of a sliding contact. In other words, this constraint is not suitable for nonlinear simulations.

    Cyclic Symmetry

    The cyclic symmetry constraint enables to model only a section of a 360° cyclic periodic structure and reduces the computation time and memory consumption considerably. Required settings include the center and axis of the cyclic symmetry as well as the sector angle. The master and slave surfaces define the cyclic periodicity boundaries.

    It’s required to define the axis of revolution and the sector angle explicitly. The Sector angle has to be given in degrees. Available ranges for the angle are from 0° to 180° and only values that divide 360° to an integer number are valid.

    The axis is defined by the Axis origin and the Axis direction. The definition of the Axis direction and the Sector angle has to be in accordance with the right-hand rule, such that it defines a rotation that starts on the slave surface and goes to the master surface. For a graphical example, see the picture below:

    cyclic symmetry linear contact panel example
    Figure 6: Illustration for a cyclic symmetry condition, showing the revolution axis origin, direction, and proper slave and master surfaces according to the right-hand rule.
    cyclic symmetry contact example result in paraview
    Figure 7: Resulting von Mises Stress on section (left) and transformed on the full 360° model (right) as viewed in Paraview.

    The effect of the cyclic symmetry condition is to map the deformations of the master face onto the slave face, transforming them through the sector rotation. This creates the cyclic effect but does not constrain the body in the radial, tangential or axial directions. Proper additional constraints must be added to prevent rigid body motions.

    Important Information

    • As all the DOFs of the slave nodes will be constrained by the cyclic symmetry connection, adding an additional constraint on those nodes could lead to an overconstrained system.
    • This is a linear constraint, so no large rotations or large deformations are allowed in the proximity of cyclic symmetry boundaries.
    • A cyclic symmetry condition is only valid if the geometry and loading conditions are symmetric around the axis of revolution.

    Last updated: June 13th, 2022