Simulations of many rigid bodies colliding with each other sometimes yield particularly interesting results if the colliding objects differ significantly in size and are non-spherical. The most expensive part within such a simulation code is the collision detection. We propose a family of novel multiscale collision detection algorithms that can be applied to triangulated objects within explicit and implicit time stepping methods. They are well-suited to handle objects that cannot be represented by analytical shapes or assemblies of analytical objects. Inspired by multigrid methods and adaptive mesh refinement, we determine collision points iteratively over a resolution hierarchy, and combine a functional minimisation plus penalty parameters with the actual comparision-based geometric distance calculation. Coarse surrogate geometry representations identify "no collision" scenarios early on and otherwise yield an educated guess which triangle subsets of the next finer level potentially yield collisions. They prune the search tree, and furthermore feed conservative contact force estimates into the iterative solve behind an implicit time stepping. Implicit time stepping and non-analytical shapes often yield prohibitive high compute cost for rigid body simulations. Our approach reduces these cost algorithmically by one to two orders of magnitude. It also exhibits high vectorisation efficiency due to its iterative nature.
翻译:许多相互碰撞的僵硬物体的模拟相互碰撞有时会产生特别有趣的结果,如果相互碰撞的物体在大小上差异很大,而且是非球形的,那么这种模拟代码中最昂贵的部分是碰撞探测。我们提议了一系列新的多尺度碰撞探测算法,可以在明确和隐含的时间踏步法内适用于三角物体。这些算法非常适合处理无法用分析形状或分析对象组合来表示的物体。在多格方法和适应性网格改进的启发下,我们在分辨率等级上反复确定相撞点,并将功能最小值加惩罚参数与实际的以比较为基础的几何距离计算相结合。粗略代代数几何参数显示早期的“没有碰撞”情景,从而产生有意识的猜测,即下一层微细微水平的三角组可能产生碰撞。它们利用搜索树,进一步将保守的接触力估计结果输入隐含时间阶梯后面的迭代方解法。不明显的时间踏和非分析形状往往产生高得令人望的高的计算费用,僵硬体模拟。我们的方法将这些成本定数性地降低到两个高度的高度。