IAMReX is a fork of the original IAMR codebase that extends its capabilities for simulating multiphase incompressible flows and fluid-structure interaction problems on both CPUs and GPUs with/without subcycling.
Key additions to IAMR include:
- Level Set (LS) method for capturing gas-liquid interfaces with reinitialization schemes
- Multidirect forcing Immersed Boundary Method (IBM) for resolving fluid-solid interfaces
- Particle collision algorithms with Discrete Element Method (DEM) and adaptive collision time model (ACTM) for particle-wall and particle-particle interactions
Feature | IAMR | IAMReX |
---|---|---|
State Variables | 4 (velocity, density, tracers, temperature) | 5 (adds level set) |
Interface Methods | None | Level set, immersed boundary, phase field (TBD) |
Particle Support | None | Full 6-DOF dynamics with collisions |
Multi-Physics | Single-phase only | Multi-phase, fluid-solid interaction |
Collision Detection | None | Spatial hashing with DKT model |
GPU Support | Basic AMReX | Enhanced operations for resolved particles |
For more details, please check the document: sample-cases
For detailed steps on downloading IAMReX, building and running the cases, see Getting Started.
We made great efforts to simulate more complex multiphase flows at higher resolution using IAMReX. One effort is to combine the AMR technique with the multidirect forcing immersed boundary method to resolve particles only on the finest-level grid. It significantly reduces the grid requirements for particle-resolved simulation compared with commonly used uniform grid solvers Incompact3d, CaNS, and CP3d. Additionally, we utilized a subcycling technique to alleviate the time step constraint on coarser levels. It minimizes the total time step needed by time advancement compared with the non-subcycling technique used in other AMR-related packages, such as IBAMR, basilisk, and incflo.
You can also view questions and ask your own on our GitHub Discussions page. To obtain additional help, simply post an issue.
We actively monitor the original IAMR repository and selectively merge upstream changes when they contain important bug fixes or feature improvements. We are always happy to have users contribute to the IAMReX source code. To contribute, issue a pull request against the development branch. Any level of changes are welcomed: documentation, bug fixes, new test problems, new solvers, etc. For more details on how to contribute to IAMReX, please see CONTRIBUTING.md.
💡 If you're using IAMReX in your own GitHub projects, consider adding IAMReX
as a repository topic!
This helps others discover related work and strengthens the IAMReX ecosystem.
To cite IAMReX, please use
@article{10.1063/5.0236509,
author = {Li, Xuzhu (李虚竹) and Li, Chun (李春) and Li, Xiaokai (李晓凯) and Li, Wenzhuo (李文卓) and Tang, Mingze (唐铭泽) and Zeng, Yadong (曾亚东) and Zhu, Zhengping (朱正平)},
title = {An open-source, adaptive solver for particle-resolved simulations with both subcycling and non-subcycling methods},
journal = {Physics of Fluids},
volume = {36},
number = {11},
pages = {113335},
year = {2024},
month = {11},
issn = {1070-6631},
doi = {10.1063/5.0236509},
url = {https://doi.org/10.1063/5.0236509},
eprint = {https://pubs.aip.org/aip/pof/article-pdf/doi/10.1063/5.0236509/20247663/113335\_1\_5.0236509.pdf},
}
@inbook{doi:10.2514/6.2025-1865,
author = {Dewen Liu and Shuai He and Haoran Cheng and Yadong Zeng},
title = {Investigate the Efficiency of Incompressible Flow Simulations on CPUs and GPUs With BSAMR},
booktitle = {AIAA SCITECH 2025 Forum},
doi = {10.2514/6.2025-1865},
URL = {https://arc.aiaa.org/doi/abs/10.2514/6.2025-1865},
eprint = {https://arc.aiaa.org/doi/pdf/10.2514/6.2025-1865},
}
This project complies with the REUSE Specification. Accordingly, the license header in each file specifies its copyright and licensing information. All licenses used in this project can be found in the LICENSES directory.
Licensing is determined as follows:
- LicenseRef-OpenSource refers to the original IAMR license, applies to all files originating from IAMR and any modifications made to them.
- All new files created from scratch for IAMReX are licensed under the BSD-3-Clause.
We are grateful to Ann Almgren, Andy Nonaka, Andrew Myers, Axel Huebl, Marc Day, and Weiqun Zhang in the Lawrence Berkeley National Laboratory (LBNL) for their discussions related to AMReX and IAMR. Y.Z. and Z.Z. also thank Prof. Lian Shen, Prof. Ruifeng Hu, and Prof. Xiaojing Zheng during their Ph.D. studies.
If you have any question or wanna contribute to the code, please don't hesitate to contact us via the GitHub Issues or zdsjtu@gmail.com.