DeepFlame is a deep learning empowered computational fluid dynamics package for single or multiphase, laminar or turbulent, reacting flows at all speeds. It aims to provide an open-source platform to combine the individual strengths of OpenFOAM, Cantera, and PyTorch libraries for deep learning assisted reacting flow simulations. It also has the scope to leverage the next-generation heterogenous supercomputing and AI acceleration infrastructures such as GPU and FPGA.
The deep learning algorithms and models used in the DeepFlame tutorial examples are developed and trained independently by our collaborators team – Intelligent Combustion. Please refer to their website for detailed information.
Detailed guide for installation and tutorials is available on our documentation website.
New in v1.2.0 (2023/06/30):
- Enable GPU acceleration for fast and efficient discrete matrix construction for solving partial differential equations
- Introduce
DeePFGM
model: a neural network-based approach to replace the flamelet database of the FGM model and reduce memory requirement - Support real fluid density calculation with Cantera's PR/RK equation of state and updated the calculation of isentropic compression coefficient (psi)
- Improve dfHighSpeedFoam solver
- Apply flux splitting to the convective term of the species equations for consistency and accuracy
- Adopt Strong Stability Preserving Runge-Kutta (RKSSP) time scheme for enhanced stability and performance
- Incorporate
WENO scheme
andlibROUNDSchemes
as third-party submodules for convective flux reconstruction - Provide interface to access the reaction rates of each component in a given elementary reaction
- Implement mechanism file detection function to verify the validity of the mechanism file input
- Capture and report Cantera errors for better error handling and user experience
New in v1.1.0 (2023/03/31):
- Add FGM model
- Add GPU-compatible linear solver AmgX (adopted from petsc4Foam and FOAM2CSR)
- Add new load balancing algorithm
- Add support for solving chemical source term simultaneously on GPU (DNN) and CPU (CVODE)
- Add support for compilation using CMake
- Improve DNN solving procedure when using pure CPU
- Reconstruct
dfChemistryModel
- Update chemical and mixing time scale models in PaSR combustion model
New in v1.0.0 (2022/11/15):
- Add support for the parallel computation of DNN using libtorch on multiple GPUs
- Add TCI model
New in v0.5.0 (2022/10/15):
- Add support for the parallel computation of DNN via single and multiple GPUs
- Add access for utilising PyTorch
New in v0.4.0 (2022/09/26):
- Adapt combustion library from OpenFOAM into DeepFlame
laminar
;EDC
;PaSR
combustion models
New in v0.3.0 (2022/08/29):
- 1/2/3D adaptive mesh refinement (2/3D adopted from SOFTX_2018_143 and multiDimAMR)
- Add Sigma/dynSmag LES turbulence models
- Add functionObjects/field library
- New example reactiveShockTube for
dfHighSpeedFoam
New in v0.2.0 (2022/07/25):
- Dynamic load balancing for chemistry solver (adopted from DLBFoam)
From v0.1.0 (2022/06/15):
- Native Cantera reader for chemical mechanisms in
.cti
,.xml
or.yaml
formats - Full compatiblity with Cantera's
UnityLewis
,Mix
andMulti
transport models - Zero-dimensional constant pressure or constant volume reactor solver
df0DFoam
- Pressued-based low-Mach number reacting flow solver
dfLowMachFoam
- Density-based high-speed reacting flow solver
dfHighSpeedFoam
- Two-phase Lagrangian/Euler spray reacting flow solver
dfSprayFoam
- Cantera's native SUNDIALS CVODE solver for chemical reaction rate evaluation
- Torch's tensor operation functionality for neutral network I/O and calculation
- Interface for DNN model to obtain chemical reaction rates
- Multiple example and tutorial cases with
Allrun
andAllclean
scripts- 0D Perfectly Stirred Reactor
- 1D Freely Propagating Premixed Flame
- 2D Lifted Partially Premixed Triple Flame
- 3D Taylor-Green Vortex with Flame
- 1D Detotation Wave in Homogeneous Premixed Mixture
- 3D Aachen Bomb Spray Flame
- First release v0.1.0 introduction talk (in Chinese)
- Formal release of v1.0.0 introduction talk (in English) and (in Chinese)