Skip to content

An easy to use immersed boundary method in 2D, with full implementations in MATLAB and Python that contains over 60 built-in examples, including multiple options for fiber-structure models and advection-diffusion, Boussinesq approximations, and/or artificial forcing.

master
Switch branches/tags
Code

IB2d

Author: Nicholas A. Battista, Ph.D.
Email: battistn[at]tcnj.edu
Website: http://battistn.pages.tcnj.edu
Department: Mathematics & Statistics (TCNJ MATH)
Institution: The College of New Jersey (TCNJ)

An easy to use immersed boundary method in 2D, with full implementations in MATLAB and Python that contains over 60 built-in examples, including multiple options for fiber-structure models and advection-diffusion, Boussinesq approximations, and/or artificial forcing.

If you use this software for research, educational, or recreational purposes, please let Nick Battista (battistn[at]tcnj.edu) know!


If you use the code for research, please cite the following papers:

N.A. Battista, A.J. Baird, L.A. Miller, A mathematical model and MATLAB code for muscle-fluid-structure simulations, Integ. Comp. Biol. 55(5):901-911 (2015), LINK

N.A. Battista, W.C. Strickland, L.A. Miller, IB2d:a Python and MATLAB implementation of the immersed boundary method,, Bioinspiration and Biomemetics 12(3): 036003 (2017), LINK

N.A. Battista, W.C. Strickland, A. Barrett, L.A. Miller, IB2d Reloaded: a more powerful Python and MATLAB implementation of the immersed boundary method, in press Math. Method. Appl. Sci. 41:8455-8480 (2018) LINK


IB2d Video Tutorials:

Tutorial 1: https://youtu.be/PJyQA0vwbgU
An introduction to the immersed boundary method, fiber models, open source IB software, IB2d​, and some FSI examples!

Tutorial 2: https://youtu.be/jSwCKq0v84s
A tour of what comes with the IB2d software, how to download it, what Example subfolders contain and what input files are necessary to run a simulation

Tutorial 3: https://youtu.be/I3TLpyEBXfE
An overview of how to construct immersed boundary geometries and create the input files (.vertex, .spring, etc.) for an IB2d simulation to run using the oscillating rubberband example from Tutorial 2 as a guide.

Tutorial 4: https://youtu.be/4D4ruXbeCiQ
The basics of visualizing data using open source visualization software called VisIt (by Lawrence Livermore National Labs), visualizing the Lagrangian Points and Eulerian Data (colormaps for scalar data and vector fields for fluid velocity vectors)


IB2d News

--> Matea Santiago has updated the advection-diffusion solver to a third-order WENO scheme.

--> We have released a semi-automatic meshing tool, MeshmerizeMe , to help discretize Lagrangian geometries. More information can be found in our software release paper:

D.M. Senter, D.R. Douglas, W.C. Strickland, S. Thomas, A. Talkington, L.A. Miller, N.A. Battista, A Semi-Automated Finite Difference Mesh Creation Method for Use with Immersed Boundary Software IB2d and IBAMR, Bioinspiration and Biomimetics 16(1): 016008 (2021)

--> The MATLAB plotting routine is incompatible with MATLAB R2020a and R2020b. If you run into this issue, please consider visualizing the .vtk data with VisIt or ParaView instead.


VisIt Workaround for macOS 11 (Big Sur)

--> Many VisIt users have gotten the following error when trying to open visualization files:

"The MetaData server running on localhost could not get the file list for the current directory"

--> To circumvent this error, try opening VisIt from the command line. Try the following:

  1. In your terminal, change directory until you're in the directory you want to open (eg - the viz_IB2d folder)
  2. In your terminal, type: /Applications/VisIt.app/Contents/Resources/bin/visit -gui (or the correct path based to where you installed VisIt)

About

An easy to use immersed boundary method in 2D, with full implementations in MATLAB and Python that contains over 60 built-in examples, including multiple options for fiber-structure models and advection-diffusion, Boussinesq approximations, and/or artificial forcing.

Resources

License

Releases

No releases published

Packages

No packages published