An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
boyceg Merge pull request #365 from IBAMR/nishantnangia/virtual-destructor
Adding missing virtual keyword for INSVCStaggeredHierarchyIntegrator destructor
Latest commit 0a6dcf9 Oct 22, 2018
Permalink
Failed to load latest commit information.
config Require C++11. Sep 22, 2018
doc Merge pull request #368 from drwells/use-libMesh-MeshBase Oct 22, 2018
examples Use MeshBase in our libMesh code. Oct 19, 2018
ibtk Merge pull request #367 from drwells/remove-unused-typedefs Oct 22, 2018
include/ibamr Merge pull request #365 from IBAMR/nishantnangia/virtual-destructor Oct 22, 2018
lib Merge pull request #261 from drwells/require-c++11 Sep 27, 2018
m4 Replace boost::array with std::array. Sep 27, 2018
scripts set provided pre-commit hook only to check C/C++ files Aug 8, 2016
src Merge pull request #368 from drwells/use-libMesh-MeshBase Oct 22, 2018
tests Require C++11. Sep 22, 2018
.autom4te.cfg merging ibamr-dev with ibamr-trunk (r2293:3820) Apr 17, 2014
.clang-format Adding various features like --- quaternions for rigid body rotation,… Feb 3, 2016
.dir-locals.el adding some projectile settings May 10, 2018
.gitignore updating .gitignore May 17, 2018
.jenkins_fulltest Jenkins configure properly treats compiler flags as strings. Jun 5, 2018
.jenkins_quicktest Jenkins configure properly treats compiler flags as strings. Jun 5, 2018
.projectile adding some projectile settings May 10, 2018
.travis.yml trying to fix travis-ci deployment May 18, 2018
COPYRIGHT updating copyright statements in code Oct 17, 2014
Makefile.am Added gtest applications to examples. Apr 26, 2017
Makefile.in Require C++11. Sep 22, 2018
README.md Update README.md Sep 5, 2018
VERSION add a VERSION file for the 1.0.0 prerelease. Aug 30, 2018
aclocal.m4 Require C++11. Sep 22, 2018
bootstrap switching to Daniel Elstner's bootstrap script Oct 10, 2016
configure Replace boost::array with std::array. Sep 27, 2018
configure.ac Merge pull request #261 from drwells/require-c++11 Sep 27, 2018
generateDocumentationAndDeploy.sh remove stdc++ tagfile,make travis get it May 31, 2018

README.md

IBAMR

An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method

What Is IBAMR?

IBAMR is a distributed-memory parallel implementation of the immersed boundary (IB) method with support for Cartesian grid adaptive mesh refinement (AMR). Support for distributed-memory parallelism is via MPI, the Message Passing Interface.

Core IBAMR functionality relies upon several high-quality open-source libraries, including:

  • SAMRAI, the Structured Adaptive Mesh Refinement Application Infrastructure
  • PETSc, the Portable, Extensible Toolkit for Scientific Computation
  • libMesh, a C++ finite element library
  • hypre, a library of high performance preconditioners that features parallel multigrid methods for both structured and unstructured grid problems.

IBAMR also uses functionality provided by a number of additional third-party libraries, including: Boost; Eigen; HDF5; muParser; and Silo.

IBAMR outputs visualization files that can be read by the VisIt Visualization Tool.

What Is the IB Method?

The immersed boundary (IB) method is a general-purpose numerical method for simulating fluid-structure interaction. The IB formulation of such problems uses an Eulerian description of the fluid and a Lagrangian description of the structure. Interaction equations that couple the Eulerian and Lagrangian variables take the form of integral equations with delta function kernels.

For general information about the IB method, see math.nyu.edu/faculty/peskin. For additional information about the IBAMR software, see ibamr.github.io. We are happy to host visualizations of simulations that use IBAMR.

Getting Started

IBAMR requires a number of third-party libraries. Sample build instructions are provided for a typical Linux installation.

Documentation

Source code documentation for the IBAMR library and supporting IBTK library is available on-line. File format documentation is also available on-line. There is also list of frequently asked questions.

Support

Support for IBAMR is available via the IBAMR Users Google Group (ibamr-users@googlegroups.com). Discussion related to the continued development of IBAMR is via the IBAMR Developers Google Group (ibamr-dev@googlegroups.com).

Bugs and Other Issues

Please use the GitHub issue tracking system to report bugs, feature requests, or other issues with IBAMR.

Acknowledgments

IBAMR development is supported in part by NSF Software Infrastructure for Sustained Innovation awards OAC 1450327 (to UNC-Chapel Hill), OAC 1450374 (to Northwestern University), and OAC 1607042 (to Rice University). Additional support is provided by NSF CAREER award OAC 1652541 (to UNC-Chapel Hill). Prior support was provided by NSF awards DMS 1016554 (to New York University), DMS 1460368 (to UNC-Chapel Hill), OAC 1047734 (to New York University), and OAC 1460334 (to UNC-Chapel Hill). We gratefully acknowledge this support.