Software engineer
While software development remains my main passion, I am constantly in search of new challenges and responsibilities. I am interested in a variety of fields including high performance numerical computing, physic simulations, embedded software development, and software optimizations. This webpage presents an overview of my academic background and professional experience.
As a senior developer, my daily life consists of planning the architecture of new developments, optimizing existing code, project management and technical support for other developers. The software that we design makes it possible to simulate in real time very large electrical networks and controls. The computation is distributed over several high-performance computers.
Member of the Inria MIMESIS research staff. Research activities focus on computer assisted medical training, planning and guidance. My responsibilities involve the development as well as the evolution of the real-time computation and data-driven simulation models available within the open-source SOFA framework. Patient-specific applications vary from augmented reality liver surgery assistance to surgical training.
Lead developper of the caribou multiphysics library created initially for my thesis. The library has now more than 20k lines of C++ code, and about 1k lines of Python code.
One of the main challenges in the field of real-time simulation is the resolution of soft body deformations . This is particularly true in augmented reality applications such as computer-assisted surgery. The process must mimic the behavior of a deformable organ, usually reconstructed from 3D medical images, in real time. It involves the resolution of a complex system of partial differential equations for which the finite element method is generally favored. However, the latter method requires a discretization of the simulated model into a sequence of well- formed geometric elements connected to each other, a tedious process. Indeed, the biomechanical model must often be reconstructed from complex and non-concave surfaces, sometimes even with holes or generated from incomplete or erroneous data.
Several research initiatives have been put in place to identify new methods for solving deformable dynamics that are not only accurate and fast, but also robust enough to manage unpredictable and often non-physical inputs. The first part of my thesis focused on the so-called meshless or element-free methods. With this approach, an approximation of the displacement field inside a volume and the estimation of the elastic forces are done using a simple point cloud based discretization. These points, frequently called particles, are forming the set of degrees of freedom to be solved. Thus, where traditional finite element methods require complex discretization, meshless methods merely require the simulated object’s volume to be filled with points.
The second part of the thesis was dedicated to the traditional methods of discretization with isoparametric elements. However, unlike traditional finite element methods, the concept of fictitious domains was investigated. In this case, the simulated object is immersed in a grid of regular elements. This grid is then used to solve the initial boundary problem. The difficulty of meshing a complex surface using the finite element method is therefore transposed to the handling of grid elements cut by the boundary surface of the simulated object.