Leveraging code generation for transparent immersogeometric fluid–structure interaction analysis on deforming domains - Neighbor, Grant E.; Zhao, Han; Saraeian, Mehdi; Hsu, Ming-Chen; Kamensky, David (Engineering with computers, 2023)
Code generation technology has been transformative to the field of numerical partial differential equations (PDEs), allowing domain scientists and engineers to automatically compile high-performance solver routines from abstract mathematical descriptions of PDE systems. However, this often assumes a rigid code structure, which is only appropriate to a subset of applications and numerical methods, such as the traditional finite element methods used by the FEniCS code generation system. The present contribution demonstrates how to productively integrate FEniCS into a custom implementation of immersogeometric analysis (IMGA) of thin shell structures interacting with incompressible fluid flows on deforming domains. IMGA is an emerging paradigm for numerical PDEs with complex domain geometries, where non-watertight geometry descriptions are used directly as computational meshes. In particular, we generalize past related work by leveraging code generation to concisely pull back the deforming-domain Navier–Stokes problem to a stationary reference mesh. We also show how code generation enables rapid implementation of different material models for the structure subproblem. We verify our implementation using several benchmark problems, demonstrate its robustness and flexibility by simulating a prosthetic heart valve immersed in a flexible artery, and distribute the full source code online, to be used and modified by the community. Impact of the last item is amplified by the transparent nature of our code-generation-based implementation.