PetIBM
barbagroup.github.io
Spec sheet
- Purpose
- PetIBM implements immersed-boundary methods to solve 2D and 3D incompressible Navier–Stokes equations on stretched Cartesian grids using a projection approach.Read 9 Oct 2026 · barbagroup.github.io
- Audience
- The project provides end-user installation instructions and separate guidance for developers extending or debugging PetIBM.Read 9 Oct 2026 · barbagroup.github.io
- Free plan
- YesRead 24 Sep 2026 · barbagroup.github.io
- API
- PetIBM installs a library and header files for building flow solvers, with API documentation and simplified example solvers provided.Read 9 Oct 2026 · barbagroup.github.io
- Support
- The project directs bug reports, feature requests, and questions to its GitHub issue tracker and lists email contacts for questions, suggestions, or feedback.Read 9 Oct 2026 · barbagroup.github.io
- License
- PetIBM code is under the BSD 3-Clause License.Read 9 Oct 2026 · barbagroup.github.io
- Assessment tools
- NoRead 24 Sep 2026 · barbagroup.github.io
- Authoring tools
- NoRead 24 Sep 2026 · barbagroup.github.io
- Bodies and meshes
- It supports multiple immersed bodies, prescribed motion, and 2D and 3D stretched Cartesian meshes.Read 9 Oct 2026 · barbagroup.github.io
- Compatibility limit
- The CMake instructions for finding PetIBM dependencies exclude MPI, which must be found separately.Read 9 Oct 2026 · barbagroup.github.io
- CPU and GPU solvers
- Linear systems can be solved on CPUs with PETSc KSP objects or on multiple CUDA-capable GPUs using NVIDIA AmgX, connected through AmgXWrapper.Read 9 Oct 2026 · barbagroup.github.io
- Delivery mode
- desktopRead 24 Sep 2026 · barbagroup.github.io
- Dependencies
- Building from source requires a GNU C++ compiler, PETSc with parallel HDF5, an MPI implementation, yaml-cpp, and SymEngine; AmgX and AmgXWrapper are optional for GPU linear solvers.Read 9 Oct 2026 · barbagroup.github.io
- I/O
- The feature list includes HDF5 input/output support.Read 9 Oct 2026 · barbagroup.github.io
- Installation
- End users can install prebuilt GPU-enabled packages with Anaconda or use Docker and Singularity/Apptainer containers.Read 9 Oct 2026 · barbagroup.github.io
- Lesson library
- NoRead 24 Sep 2026 · barbagroup.github.io
- Methods
- It includes the Immersed Boundary Projection Method and a decoupled version of that method.Read 9 Oct 2026 · barbagroup.github.io
- Offline access
- YesRead 24 Sep 2026 · barbagroup.github.io
- Parallel computing
- It supports distributed-memory architectures, multiple GPUs on one node, and GPU clusters.Read 9 Oct 2026 · barbagroup.github.io
- Platform limits
- Linux is the only officially supported system; the documentation says macOS and Windows may or may not work and offers no assistance for issues on those systems.Read 9 Oct 2026 · barbagroup.github.io
Plans and prices
PetIBM Free Open-source solver toolkit; Linux officially supported; requires PETSc and MPI Read 9 Oct 2026 · barbagroup.github.io
Where Specifiction places it
- Physics Simulation Software#33 of 898.0