Thesis of Bastien Saillant
Subject:
High-order finite elements for interactive simulation of deformable objects using local solution methods.
Start date: 01/11/2022
End date (estimated): 01/11/2025
Advisor: Guillaume Damiand
Coadvisor: Fabrice Jaillet, Florence Zara
Summary:
This thesis addresses the simulation of deformable objects for real-time applications, focusing particularly on elastic objects. The latter have their shape modified by external forces and return to their initial state in their absence. A common example is the representation of organic materials (tissues, organs, muscles, fat, etc.) for medical simulators, which requires interactive and realistic simulation. Furthermore, organic materials maintain their volume almost perfectly during deformations, which poses numerical challenges in terms of robustness, especially with high or even infinite stiffness.
The finite element method is a classic approach for representing deformable objects. It divides a geometric domain into primitives (tetrahedra, hexahedra, prisms, etc.), then uses interpolations (linear, quadratic, etc.) within these elements to reconstruct deformation fields. In computer graphics, linear tetrahedra are popular due to their simplicity and low cost. However, recent studies have shown that using other types of elements and degrees of interpolation can offer better results while reducing computation time. These studies, however, do not target real-time applications.
It is in this context that we extended eXtended Position Based Dynamics (XPBD) by proposing a generic definition of finite elements of all types and orders in the form of constraints. Also, we demonstrated the necessity of imposing stability at rest (in the absence of deformation) for these constraints. These additions significantly reduce computation times, particularly on CPU. In the parallel context on GPU, quadratic tetrahedra and linear hexahedra allow for accelerations or equivalent performance to linear tetrahedra for comparable precisions.To take full advantage of GPU parallelization, we then turned to Vertex Block Descent (VBD), another resolution method designed for massive parallelization by solving the problem locally per vertex. We proposed a local formulation for all types of elements while improving the VBD algorithm for better element parallelization. Ultimately, we obtain accelerations with quadratic tetrahedra and linear hexahedra and meet real-time criteria while offering equivalent precision than linear tetrahedra for a reduced cost