Skip to content

A deep learning empowered open-source platform for reacting flow simulations

License

Notifications You must be signed in to change notification settings

JX278/deepflame-dev

 
 

Repository files navigation

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 neural network models used in the tutorial examples can be found at– AIS Square. To run DeepFlame with DNN, download the DNN model DF-ODENet into the case folder you would like to run.

Documentation

Detailed guide for installation and tutorials is available on our documentation website.

Features

New in v1.3 (2023/12/30):

  • Complete the full-loop GPU implementation of the dfLowMachFoam solver, enabling efficient execution of all computations on GPU
  • Introduce DF-ODENet model, which utilizes sampling from canonical combustion simulation configurations to reduce training costs and improve computational efficiency
  • Support Large Eddy Simulation (LES) and two-phase combustion simulation capabilities
  • Expand the flareFGM table to six dimensions and add support for neural network replacement of certain physical quantities in the new six-dimensional flareFGM table
  • Support multi-GPU and multi-processor execution through the DeepFGM neural network interface
  • Modify Cantera's approach to transport property calculations to support real fluid thermophysical property calculation of multi-component reactive flows and integrate neural networks for updating real fluid thermophysical properties
  • Add new example cases and update the documentation homepage to provide more comprehensive installation and usage instructions

New in v1.2 (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 and libROUNDSchemes 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 (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 (2022/11/15):

  • Add support for the parallel computation of DNN using libtorch on multiple GPUs
  • Add TCI model

New in v0.5 (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 (2022/09/26):

  • Adapt combustion library from OpenFOAM into DeepFlame
  • laminar; EDC; PaSR combustion models

New in v0.3 (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 (2022/07/25):

  • Dynamic load balancing for chemistry solver (adopted from DLBFoam)

From v0.1 (2022/06/15):

  • Native Cantera reader for chemical mechanisms in .cti, .xml or .yaml formats
  • Full compatiblity with Cantera's UnityLewis, Mix and Multi 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 and Allclean 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

Useful resources

DeepModeling Community's official bilibili website:

About

A deep learning empowered open-source platform for reacting flow simulations

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 89.7%
  • Cuda 8.7%
  • CMake 1.2%
  • Other 0.4%