Skip to content
SPECIFICTION
Get listed

PetIBM

barbagroup.github.io

Free plan macOSLinuxSelf-hosted

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

Every PetIBM plan and price →

Where Specifiction places it

Alternatives to PetIBMAll alternatives →