Abstract

We present a high performance modularly-built open-source software - OpenIFEM. OpenIFEM is a C++ implementation of the modified immersed finite element method (mIFEM) to solve fluid-structure interaction (FSI) problems. This software is modularly built to perform multiple tasks including fluid dynamics (incompressible and slightly compressible fluid models), linear and nonlinear solid mechanics, and fully coupled fluid-structure interactions. Most of open-source software packages are restricted to certain discretization methods; some are under-tested, under-documented, and lack modularity as well as extensibility. OpenIFEM is designed and built to include a set of generic classes for users to adapt so that any fluid and solid solvers can be coupled through the FSI algorithm. In addition, the package utilizes well-developed and tested libraries. It also comes with standard test cases that serve as software and algorithm validation. The software can be built on cross-platform, i.e., Linux, Windows, and Mac OS, using CMake. Efficient parallelization is also implemented for high-performance computing for large-sized problems. OpenIFEM is documented using Doxygen and publicly available to download on GitHub. It is expected to benefit the future development of FSI algorithms and be applied to a variety of FSI applications.

Highlights

  • Fluid-structure interactions are difficult to model as they involve complicated motions and deformations of the fluid-structure interface

  • Doing so allows fluid and solid solvers to be treated as black boxes, where the algorithm can be implemented in a modularized way: a solid solver that solves the solid dynamic equations, a fluid solver that solves the fluid dynamic equations, and an fluid-structure interaction (FSI) solver works as a median to communicate and pass information between solvers

  • We present a high performance modularly built open-source software, the OpenIFEM, for FSI problems

Read more

Summary

Introduction

Fluid-structure interactions are difficult to model as they involve complicated motions and deformations of the fluid-structure interface. Different from other fluid-driven immersed method, such as the IB or the original IFEM, the mIFEM algorithm has the advantage of capturing solid dynamics, handling large density disparities, and avoiding severe solid mesh distortion in high Reynolds number flows. For this reason, OpenIFEM adopts mIFEM algorithm as the component solvers can be modularly built. The FSI process does not intrude the fluid and solid governing equations themselves, except for when applying appropriate and consistent Dirichlet and Neumann boundary conditions It does not have particular requirements on discretization methods, e.g., finite volume vs finite elements. Doing so allows fluid and solid solvers to be treated as black boxes, where the algorithm can be implemented in a modularized way: a solid solver that solves the solid dynamic equations, a fluid solver that solves the fluid dynamic equations, and an FSI solver works as a median to communicate and pass information between solvers

Dependencies and tools
Modularity
Input files
Parallelization
Adaptive mesh refinement
Cross-platform build system
Test suite
Numerical examples
Solid mechanics module
Fluid mechanics module
FSI module
Free falling of a 2D disk
Large deformation of a leaflet driven by incompressible flow
Findings
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call