|Date:||Thu, 12 Oct 2017 01:48:30 +0200|
thank for reply. Suppose rigid body 1 has n1 spheres and rigid
body 2 has n2. Do we really need to evaluate the distance of each
sphere in body 1 to each sphere in body 2? This operation is an
O(n1 x n2) complexity.
As shown in the above picture, Bounding spheres (A, B) that tightly encompass composing spheres of a rigid body are constructed.
(1) If A and B do not intersect, then we can skip the O(n1 x n2) pairwise tests.
(2) If A and B do intersect, then rigid body 1 and 2 might be colliding, thus the O(n1 x n2) pairwise tests are needed to calculate the contact force.
I checked the fix_rigid source codes, it seems that in Lammps the step (1) is ignored?
My understanding is that the neighbor list of a sphere in rigid body only contains spheres in other rigid bodies, hence the number of spheres in the list is quite low, as there are more space between angular bodies than that of spheres assembly. The resultant contact force acting on a rigid body is the sum of contact forces on each composing spheres, no need to do (1) and (2) as mentioned above.
On 11.10.2017 23:51, Axel Kohlmeyer wrote: