NairnFEAMPM Icon

ContactPosition Command

The ContactPosition and ContactPositionCracks commands changes the method used to calculate displacements on nodes and sets the relative displacement cutoff for assuming two surfaces are in contact. The two commands are for dealing with multimaterial contact or crack contact, respectively:

ContactPosition (cutoff)
ContactPositionCracks (cutoff)

When this command is used, displacements used for contact calculations for cracks or material surfaces are found by extrapolating particle positions to the grid. Due to nature of position extrapolations near edges, the extrapolated positions have to be corrected to determine whether or not contact has occurred. The two options for the (cutoff) parameter are:

  1. (cutoff) > 0 means that distance (entered relative to grid element dimensions) is subtracted from extrapolated particle positions to calculate crack surface or material separation, Calculations and simulations show the 0.8 is a good value for uGIMP shape functions and two particles per cell axis. Changes in shape function or number of particle per cell axis might need to change this to a different value.
  2. (cutoff) < 0 means to use an advanced calculation to adjust extrapolated positions to detect separation (unpublished results). The absolute value of the argument is used as power for one term in the adjustment expression. Calculations and simulations show the -0.58 is the preferred value of two particles per cell axis and uGIMP or CPDI shape functions. This option should only be used for these conditions.

The default setting for this command is for a simulation to not have either command. When no ContactPosition (or ContactPositionCracks for cracks) command is used, calculations extrapolate particle displacements rather then positions to the grid. The displacements are used uncorrected in contact calculations. This default method requires that all contact surfaces start out initially in contact (such as for most explicit cracks or for multimaterial MPM when all materials are touching at the beginning) and that total displacements are relatively small. In fact it is the preferred method for these situations.

When some contacting surfaces start out separated (or when relative displacements are large), it is usually better to use this command and then almost always set (cutoff) to 0.8 or -0.58.

The two commands let you select different options for explicit cracks and material contact in multimaterial MPM (for simulations that use cracks in multimaterial mode). The ContactPosition commands controls multimaterial contact while the The ContactPositionCracks controls crack contact. A common situation is to use ContactPosition for material contact, but omit the ContactPositionCracks for cracks to use displacement method.

Old versions of this code had only a single ContactPosition command and it set the cutoff for both crack and material contact. For backward compatibility, if ContactPosition is used is a simulation running in single material mode, that setting will be applied to contact for cracks. Thus, old simulations with just cracks will run the same as before. Old simulations that combined multimaterial mode with cracks, however, will use ContactPosition command to control material contact, but cracks will now differ and use displacements (unless commands are changed to add a ContactPositionCracks command). This change to cracks using displacement if typically an improvment over forcing cracks to use a cutoff whenever material contact needs it.

For more details on contact position settings, see the OSUPDocs wiki.

Notes

  1. Although only a single contact position can be entered, the code automatically corrects the distance for meshes with different cell sizes in the x, y, and/or z direction.
  2. The ContactPosition command is only allowed for MPM analyses.