To greatly simplify the contact detection algorithm, Adams Solver assumes that the volume of intersection between two solids will be much, much less than the volume of either solid. This means that, for example for a sphere in a V-groove, the Adams Solver algorithm breaks down when the two contact volumes merge into one. This assumption is not as drastic as it may first appear. The reason is that most users are interested in contact between rigid bodies (that is, bodies that do not undergo a large deformation). Also, rigid bodies generally do not penetrate very far into one another. Note that we do not recommend that you use the contact detection algorithm in the modeling of very soft bodies.
After contact occurs between two solids, Adams Solver computes the volumes of intersection. There may be only one volume of intersection, or there may be multiple volumes of intersection (this would correspond to multiple locations of contact). In this discussion, we assume that there is only a single volume of intersection. The algorithm is the same for every intersection volume.
Once there is contact, Adams Solver finds the centroid of the intersection volume. This is the same as the center of mass of the intersection volume (assuming the intersection volume has uniform density).
Next, Adams Solver finds the closest point on each solid to the centroid. The distance between these two points is the penetration depth.
Adams Solver then puts this distance into the formula:
F = K*(distance)n
where:
■K - material stiffness
■n - exponent
■F - force
to determine the contact force due to the material stiffness (there can also be damping and friction forces in the contact).
For example, if you apply this algorithm to a sphere on a plate, the intersection volume is some type of spherical shape with a flat side. The centroid of this volume can be computed (this is where most of the time is spent in the algorithm). It will be below the plate and inside the sphere. The nearest point on the plate (to the centroid) and the nearest point on the sphere (to the centroid) can also be computed. In this case, the line between them will pass through the center of the sphere (this will also be the direction in which the contact force acts).
Again, the algorithm can handle the case of a sphere in a V-groove. There will be two volumes of intersection and two separate forces will be applied to sphere and to the V-groove (equal and opposite forces).