In many cases the simulation domain doesn’t only consist of a single solid body, but multiple parts. A valid simulation setup requires all relations between parts to be fully defined.
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 solid mechanics simulations, parts in assemblies 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 contact entities. In order to ensure the connection between those bodies, they have to be tied via contact constraints that couple the affected degrees of freedom.
In order to guarantee that the simulated domain is 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 always be created as bonded contacts and can then be edited by the user.
Contact detection can also be triggered manually via the context menu of the contact node in the simulation tree.
While contacts are being detected, the contact node 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 up to a few minutes. A loading indicator on the contact tree node signals that contact detection is ongoing.
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:
Currently, there are four types of contact constraints available.
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 solids of an assembly.
You can assign faces or face sets that should be tied together via the assignment boxes. 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 analyzes, the position tolerance can be set manually or be 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 master, one master node will be tied to multiple slave nodes leading to artificial stiffness in the slave surface.
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.
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. The two surfaces that are in contact are classified as master and slave. Every node in slave surface (slave node) is tied to a node in the master surface (master node) by a constraint.
You can assign faces or face sets that should be tied together via the assignment boxes. 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.
When running contact analyses, the position tolerance can be set manually or be 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.
This is a linear constraint type, which is intended for planar sliding interfaces. Therefore, no large displacements and rotations are allowed in the proximity of a sliding contact.
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 Axis and Angle has to be in accordance with the right hand rule such that it defines a rotation that maps the slave to the master surface. For an example see the picture below.
The cyclic symmetry constraint has been discontinued for single solid simulation domains and will be re-introduced as regular boundary condition in the near future.
Nonlinear (or “Physical”) contacts enable you to calculate realistic contact interaction between two bodies of the domain as well as self-contact of different faces of one body. Unlike for constrained contacts those faces are not just connected via linear relations but the actual contact forces are calculated.
In order to enable a nonlinear interaction you have to define contact pairs of faces or face sets. For those faces the distance between each other is tested during the simulation and in case a face pair gets in contact the interaction forces that prevent those faces from interpenetrating each other are taken into account. As those forces only occur in case of contact the interaction is a nonlinear phenomenon and thus only applies for nonlinear analyses.
The solution method for the nonlinear contact has to chosen on a per-simulation basis. While specific settings can be adjusted for each nonlinear contact, the solution method is a global setting. It’s possible to choose between the “Penalty method” and the “Lagrangian method“.
In a penalty contact solution method the contact interaction between the bodies is handled via spring elements that model the stiffness of the contact. Hence, in a penalty approach it is possible that the faces in contact penetrate each other slightly depending on the defined contact stiffness that couples the interpenetration with the consequential reaction forces. As the interpenetration causes forces that try to prevent further intersection and penalize this behavior it is called Penalty method.
The contact stiffness of a penalty contact is defined by the stiffness coefficient of the linear penetration model. The higher the penalty coefficient, the stiffer the contact gets, which is desired in most cases, as bodies usually are not intended to penetrate at all. However, convergence becomes increasingly more difficult for larger penalty coefficients. A tradeoff between a realistic behavior and optimization for converge needs to be found.
A good starting point for the penalty coefficient usually is between 5-50 times the youngs modulus.
In a Lagrangian contact solution method the contact interaction between the bodies is handled via additional Lagrange equations that acccount for the contact conditions. Opposed to the penalty method the contact equations are solved exactly and thus no penetration between the contact faces may occur.
Although the Lagrangian contact gives generally more accurate results than the penalty contact, it is not as robust. Also the additional Lagrange equations introduce new DOFs which will increase the system size and thus the solution time.
The two surfaces that are in contact are classified as master and slave. Every node in the slave surface (slave nodes) is tied to a node in the master surface (master node) by a constraint.
Automatic contact detection tries to always find an optimized solution, therefore it is preferable to use automatic contact detection instead of manually constraining the system. Conflicting contacts are marked with a warning icon in the contact list. A more detailed description of the conflict type and how to resolve it can be found on top of the contact settings panel.
Another warning in case of remaining conflicts is shown on run creation, along with an additional check to detect under constraints in the system.
In case conflicts can not be resolved manually or by automatic contact detection, consider imprinting your CAD geometry.
In a CHT analysis, an interface defines the physical behavior between the common boundaries of two regions that are in contact, e.g. solid-solid, or solid-fluid.
When creating a new CHT simulation, all possible interfaces will automatically be detected and populated in the simulation setup tree. Interfaces will be grouped together and defined as Coupled thermal interface with No-slip velocity condition.
Individual interfaces or a group of interfaces can be filtered via entity selection. Select the entities (faces or solids) for which you want to select all interfaces that exist between them. Then choose the “Filter contacts by selection” option in the viewer context menu or in the simulation setup tree.
All interfaces that exist between two of the selected entities will be bulk selected and exposed in the contact tree individually.
It is also possible to select only one entity before filtering, which will return all interfaces between this entity and any other entity in the model.
Interfaces which differ in settings from the standard bulk interfaces group will stay exposed individually in the simulation setup tree.
An interface is required to always be defined between two congruent surfaces, meaning that these surfaces must have the same area and overlap completely. After contact detection, the platform will also perform a check for partial contacts. If partial contacts are detected, the platform will show a warning and recommend an imprinting operation.
Imprinting is a single-click operation built into SimScale, which splits existing faces into smaller ones in order to guarantee perfect overlap between contacting faces. It is recommended to perform an imprint operation in order to guarantee accurate heat transition modeling for the simulation.
By default, any detected partial contact will be defined as an adiabatic interface, and not participate in heat conduction unless specified otherwise.
As all possible interfaces are detected automatically, it is no longer possible to manually add an interface or to change the entity assignment for a specific interface. In case no interfaces can be detected automatically, SimScale will show an error message.
In this case, it is not possible to create a mesh or start a simulation run for this simulation. Instead, the CAD model needs to be investigated for potential errors which prevent successful contact detection. Please reach out to support via email or chat in case you encounter this issue.
The Velocity options define the fluid velocity conditions at the interface. For each interface, the momentum (velocity) profile can be set to either slip or no-slip condition. If the interface is between two solids, this option is irrelevant.
By default, the velocity profile is set to no-slip condition, which imposes a friction wall (or real wall) condition by setting the velocity components (tangential and normal) to Zero value at the interface.
The ‘slip’ option imposes a frictionless wall condition. In this case, the tangential velocities at the interface are adjusted according to the flow conditions, while the normal component is zero.
The Thermal options define the heat exchange conditions at the interface. The five Thermal types available for the interfaces are reported below:
The coupled thermal interface models a perfect heat transfer across the interface. This is the default setting, in case an interface is not defined by the user.
In this case, thermal energy cannot be exchanged between the domains across the interface.
The Total Resistance interface allows users to model an imperfectly matching interface (e.g. due to the surface roughness) which reduces the heat exchange across it. The total resistance is defined as:
It is worth noticing that the area of the interface appears in the definition. So this option must be assigned only to the relevant face. Let’s suppose that a heat exchanger is being simulated. The effect of solid sediment on the tube’s wall is only known as a total resistance. A first simulation proves that heat exchange performance is insufficient. Consequently, the length of the tubes is increased. The new simulation will only be correct if the total resistance is changed according to the new area of the tubes.
This interface type is very similar to the Contact Interface material (below). It only requires users to set the specific conductance of the interface which is defined as:
with thickness t [m] and thermal conductivity
For instance, this option may be used for an interface where the layer thickness is negligible or unknown, i.e., a radiator for which the paint coating’s specific conductance may be given instead of its thickness and
The contact interface material allows modelling a layer with thickness t and thermal conductivity
For example, it is possible to model the thermal paste between a chip and a heat sink without needing to resolve it in the geometry. The latter operation is usually a problem, considering that the thickness of these layers is two or three orders of magnitude smaller than other components in the assembly.
A CHT simulation always requires a multi-region mesh. As far as the mesh is concerned, it is fundamental that the cell size at the interface is similar between the two faces. As a rule of thumb, the cells on one face should be less than 1.5 times the size of the others. The figure below shows an example of this issue. In the left case, the cells at the interface on the inner region are too small with respect to those on the outer body. In the case on the right side, the cells on the interface are approximately the same size.