Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-fluid-dynamics
A curated list of repositories related to fluid dynamics.
https://github.com/lento234/awesome-fluid-dynamics
Last synced: 3 days ago
JSON representation
-
Educational
-
Notebooks
- barbagroup/CFDPython - A sequence of Jupyter notebooks featuring the "12 Steps to Navier-Stokes".  [](https://github.com/barbagroup/CFDPython/search?l=jupyter-notebook)
- gpeyre/numerical-tours - Numerical Tours of Signal Processing and other materials.     
- jfavre/Visualization-training - The material used for the Scientific Visualization course, organized online by the Swiss National Supercomputing Centre (CSCS) on May 17-18, 2021.  [](https://github.com/jfavre/Visualization-training/search?l=jupyter-notebook)
-
Books
-
Lecture Series
- Steve Brunton/Fluid Dynamics - Prof. Brunton's lecture series on *Fluid dynamics*. 
- Steve Brunton/Reinforcement Learning - Prof. Brunton's lecture series on *Reinforcement Learning*. 
- Steve Brunton/Vector Calculus and Partial Differential Equations - Prof. Brunton's lecture series on *Vector Calculus and Partial Differential Equations*. 
- Barry Belmont/NSF Fluid Mechanics Series - A collection of NFS Fluid Mechanics lecutre series from mid 20th century. 
- József Nagy/CFD basics - CFD basics and introduction to OpenFOAM.  [](https://github.com/jnmlujnmlu/OpenFOAMTeaching)
- rmcelreath/stat_rethinking_2022 - Statistical Rethinking (2022 Edition) by Richard McElreath.  [](https://github.com/rmcelreath/stat_rethinking_2022)
- Machine Learning & Simulation/Fenics Tutorial - Fenics Tutorial lecture series.  [](https://github.com/Ceyron/machine-learning-and-simulation/tree/main/english/fenics)
- Steve Brunton/Fluid Dynamics - Prof. Brunton's lecture series on *Fluid dynamics*. 
- Steve Brunton/Reinforcement Learning - Prof. Brunton's lecture series on *Reinforcement Learning*. 
- Steve Brunton/Vector Calculus and Partial Differential Equations - Prof. Brunton's lecture series on *Vector Calculus and Partial Differential Equations*. 
- Barry Belmont/NSF Fluid Mechanics Series - A collection of NFS Fluid Mechanics lecutre series from mid 20th century. 
- József Nagy/CFD basics - CFD basics and introduction to OpenFOAM.  [](https://github.com/jnmlujnmlu/OpenFOAMTeaching)
- rmcelreath/stat_rethinking_2022 - Statistical Rethinking (2022 Edition) by Richard McElreath.  [](https://github.com/rmcelreath/stat_rethinking_2022)
- Machine Learning & Simulation/Fenics Tutorial - Fenics Tutorial lecture series.  [](https://github.com/Ceyron/machine-learning-and-simulation/tree/main/english/fenics)
- The Bright Side of Mathematics/Functional analysis - Lecture series on *Functional analysis*. 
- MIT OpenCourseWare/MIT RES.6-012 Introduction to Probability, Spring 2018 - Lecture recording of *Probabilistic Systems Analysis and Applied Probability*. 
-
-
Meshing
-
Books
- nschloe/optimesh - Mesh optimization, mesh smoothing. 
- nschloe/pygmsh - Gmsh for Python. 
- nschloe/meshio - I/O for exhaustive number of mesh file types. 
- PyMesh/PyMesh - Geometry Processing Library for Python.  
- cnr-isti-vclab/meshlab - The open source mesh processing system. 
- inducer/meshpy - 2D/3D simplicial mesh generator interface for Python (Triangle, TetGen, gmsh).  
- CGAL/cgal - The Computational Geometry Algorithms Library (CGAL) is a C++ library that aims to provide easy access to efficient and reliable algorithms in computational geometry. 
- gmsh - A three-dimensional finite element mesh generator with built-in pre- and post-processing facilities .  
-
-
Computational Fluid Dynamics
-
Finite Difference Methods (FDM)
- p-costa/CaNS - A code for fast, massively-parallel direct numerical simulations (DNS) of canonical flows. 
-
Finite Element Methods (FEM)
- JuliaFEM/JuliaFEM.jl - The JuliaFEM software library is a framework that allows for the distributed processing of large Finite Element Models across clusters of computers using simple programming models.  [](https://github.com/JuliaFEM/JuliaFEM.jl/search?l=jupyter-notebook)
- FEniCS/dolfinx - Next generation FEniCS problem solving environment.  
- firedrakeproject/firedrake - Firedrake is an automated system for the portable solution of partial differential equations using the finite element method (FEM). 
- KratosMultiphysics/Kratos - Kratos Multiphysics (A.K.A Kratos) is a framework for building parallel multi-disciplinary simulation software.  
- FluidityProject/fluidity - An open-source computational fluid dynamics code with adaptive unstructured mesh capabilities. 
- kinnala/scikit-fem - Simple finite element assemblers. 
- deal.II - An open source finite element library. 
-
Finite Volume Methods (FVM)
- OpenFOAM/OpenFOAM-dev - OpenFOAM is a free, open source computational fluid dynamics (CFD) software package released by the OpenFOAM Foundation. 
- su2code/SU2 - SU2: An Open-Source Suite for Multiphysics Simulation and Design.  
- cselab/aphros - Finite volume solver for incompressible multiphase flows with surface tension. 
- code-saturne/code_saturne - code_saturne public mirror.   
- DelNov/T-Flows - T-Flows (stands for Turbulent Flows) is a Computational Fluid Dynamics (CFD) program, originally developed at Delft University of Technology, the Netherlands. 
- ucns3d-team/UCNS3D - Unstructured Compressible Navier Stokes 3D code (UCNS3D). 
- weymouth/WaterLily.jl - Fast and simple fluid simulator in Julia. 
- MFlowCode/MFC - MFC is a compressible multiphase fluid solver with high-order-accurate shock- and interface-capturing and GPU support via OpenACC. 
- nextfoam/Baram - BARAM is developed to mitigate the steep learning curve of Text-based Solvers. BARAM helps you focus on a problem itself with intuitive graphical user interface. For now, OpenFOAM® solvers modified by nextfoam are integrated into BARAM. 
-
Spectral Methods
- DedalusProject/dedalus - A flexible framework for solving PDEs with modern spectral methods.  [](https://github.com/DedalusProject/dedalus/search?l=jupyter-notebook)
- FourierFlows/FourierFlows.jl - Tools for building fast, hackable, pseudospectral partial differential equation solvers on periodic domains. 
- Nek5000/Nek5000 - NEK5000 is an spectral element CFD code developed at the Mathematics and Computer Science Division of Argonne National Laboratory. 
- spectralDNS/shenfun - High performance computational platform in Python for the spectral Galerkin method.  [](https://github.com/spectralDNS/shenfun/search?l=jupyter-notebook)
-
Vortex Methods / Panel Methods / Blade Element Methods
- vortexmethods/VM2D - VM2D: Open-Source Code for 2D Flow Simulation by Using Meshless Lagrangian Vortex Methods. 
- markstock/vic2d - Two-dimensional semi-Lagrangian vortex method for very low viscosity fluid simulation.  
- gdeskos/DVMpp - 2D Discrete Vortex Method Code written in C++. 
- byuflowlab/FLOWUnsteady - Mixed-fidelity unsteady aerodynamics and aeroacoustics. 
- Applied-Scientific-Research/Omega2D - Two-dimensional flow solver with GUI using vortex particle and boundary element methods. 
- camUrban/PteraSoftware - A fast, easy-to-use, and open-source software package for analyzing flapping-wing flight. 
-
Immersed Boundary Methods (IBM)
- cwrowley/ibpm - Immersed Boundary Projection Method (IBPM). 
- barbagroup/PetIBM - PetIBM - toolbox and applications of the immersed-boundary method on distributed-memory architectures. 
- barbagroup/cuIBM - cuIBM: a GPU-based immersed boundary method code. 
- ChenguangZhang/sdfibm - Immersed boundary method empowered by signed distance field, and OpenFOAM. 
- IBAMR/IBAMR - An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method. 
-
Weather and Climate
- wrf-model/WRF - Weather Research and Forecasting (WRF) model is a numerical weather prediction (NWP) system designed to serve both atmospheric research and operational forecasting needs. 
-
Building Energy and Urban Environments
- uDALES/u-dales - uDALES: large-eddy-simulation software for urban flow, dispersion and microclimate modelling. 
- ladybug-tools/butterfly - :butterfly: A light python API for creating and running OpenFoam cases for CFD simulation. 
- NREL/EnergyPlus - EnergyPlus™ is a whole building energy simulation program that engineers, architects, and researchers use to model both energy consumption and water use in buildings. 
-
Shallow Water / Ocean Dynamics
- jostbr/shallow-water - Python model solving the shallow water equations (linear momentum, nonlinear continuity). 
- team-ocean/veros - The versatile ocean simulator, in pure Python, powered by JAX. 
- CliMA/Oceananigans.jl - Julia software for fast, friendly, flexible, data-driven, ocean-flavored fluid dynamics on CPUs and GPUs. 
- OceanParcels/parcels - Parcels (Probably A Really Computationally Efficient Lagrangian Simulator) is a set of Python classes and methods to create customisable particle tracking simulations using output from Ocean Circulation models.  [](https://github.com/OceanParcels/parcels/search?l=jupyter-notebook)
-
Lattice Boltzmann Methods (LBM)
- aromanro/LatticeBoltzmann - A 2D Lattice Boltzmann program. 
- lanl/MF-LBM - A Portable, Scalable and High-performance Lattice Boltzmann Code for DNS of Flow in Porous Media. 
- unigespc/palabos - Palabos is an open-source CFD solver based on the lattice Boltzmann method. 
-
Design and Optimization
- mdolab/dafoam - DAFoam: Discrete Adjoint with OpenFOAM for High-fidelity Gradient-based Design Optimization.  
- peterdsharpe/AeroSandbox - Aircraft design optimization made fast through modern automatic differentiation. 
- DARcorporation/xfoil-python - Stripped down version of XFOIL as compiled python module. 
-
Coupling
- precice/precice - A coupling library for partitioned multi-physics simulations, including, but not restricted to fluid-structure interaction and conjugate heat transfer simulations. 
-
Chemical Kinetics
- Cantera/cantera - Chemical kinetics, thermodynamics, and transport tool suite.  
-
Supersonic / Hypersonic Flow
- matteobernardini/STREAmS - STREAmS performs Direct Numerical Simulations of compressible turbulent flows in Cartesian geometry solving the unsteady, fully compressible Navier-Stokes equations for a perfect gas. 
- sergeas67/OpenHyperFLOW2D - 2D (flat/axisymmetrical) transient viscous compressible multicomponent sub/trans/supersonic reacting gas flow with RANS/URANS turbulence models. 
-
Differential programming
- taichi-dev/taichi - Parallel programming for everyone. 
- tum-pbs/PhiFlow - A differentiable PDE solving framework for machine learning. 
- google/jax-cfd - Computational Fluid Dynamics in JAX.  [](https://github.com/google/jax-cfd/search?l=jupyter-notebook)
-
Neural Networks for PDE
- lululxvi/deepxde - Deep learning library for solving differential equations and more. 
- SciML/NeuralPDE.jl - Physics-Informed Neural Networks (PINN) and Deep BSDE Solvers of Differential Equations for Scientific Machine Learning (SciML) accelerated simulation. 
- google/neural-tangents - Fast and Easy Infinite Neural Networks in Python. 
- isl-org/DeepLagrangianFluids - Lagrangian Fluid Simulation with Continuous Convolutions. 
- maxjiang93/space_time_pde - MeshfreeFlowNet: Physical Constrained Space Time Super-Resolution. 
-
Graphics
- PavelDoGreat/WebGL-Fluid-Simulation - Play with fluids in your browser (works even on mobile). 
- doyubkim/fluid-engine-dev - Fluid simulation engine for computer graphics applications. 
-
Other Techniques
- PyFR/PyFR - Framework for solving advection-diffusion type problems on streaming architectures using the Flux Reconstruction approach of Huynh. 
- pencil-code/pencil-code - A high-order finite-difference code for compressible hydrodynamic flows with magnetic fields and particles.  [](https://github.com/pencil-code/pencil-code/search?l=jupyter-notebook)
- NaluCFD/Nalu - Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of open applications of interest built on the Sierra Toolkit and Trilinos solver Tpetra solver stack. 
- lesgo-jhu/lesgo - The Large-Eddy Simulation framework from the Turbulence Research Group at Johns Hopkins University. 
- cornellius-gp/gpytorch - A highly efficient and modular implementation of Gaussian Processes in PyTorch. 
-
-
Experimental Fluid Dynamics
-
PIV / PTV
- JHU-NI-LAB/OpenLPT_Shake-The-Box - Open-source C++ code for Shake-the-box, particle tracking algorithm.  
- OpenPTV/openptv - OpenPTV - open source 3D-PTV software. 
- OpenPIV/openpiv-python - OpenPIV consists in a Python and Cython modules for scripting and executing the analysis of a set of PIV image pairs.   [](https://github.com/OpenPIV/openpiv-python/search?l=jupyter-notebook)
- OpenPTV/pyptv - Python GUI for OpenPTV - open source three-dimensional particle tracking velocimetry. 
- ronshnapp/MyPTV - Python based 3D-PTV - open source pure Python three-dimensional particle tracking velocimetry. 
-
ML / Optical Flow
- erizmr/UnLiteFlowNet-PIV - Unsupervised learning of Particle Image Velocimetry. (ISC 2020). 
- shengzesnail/PIV-LiteFlowNet-en - Particle image velocimetry via a deep neural network (LiteFlowNet).   
- yongleex/PIV-DCNN - Perform PIV image pair match using deep conv neural network.  
-
-
Post-processing and Data Analysis
-
ML / Optical Flow
- numpy/numpy - The fundamental package for scientific computing with Python. 
- mathLab/PyDMD - Python Dynamic Mode Decomposition.  [](https://github.com/mathLab/PyDMD/search?l=jupyter-notebook)
- dynamicslab/pysindy - A sparse regression package with several implementations for the Sparse Identification of Nonlinear Dynamical systems. 
- ritchieng/eigenvectors-from-eigenvalues - This repository implements a calculation of eigenvectors from eigenvectors elegantly through PyTorch. 
- mengaldo/PySPOD - A Python package for spectral proper orthogonal decomposition (SPOD). 
- belson17/modred - An easy-to-use and parallelized library for finding modal decompositions and reduced-order models. 
- Astroua/TurbuStat - Statistics of Turbulence Python Package. 
- SURGroup/UQpy - UQpy (Uncertainty Quantification with python) is a general purpose Python toolbox for modeling uncertainty in physical and mathematical systems.  [](https://github.com/SURGroup/UQpy/search?l=jupyter-notebook)
- haller-group/LCStool - LCStool: LCS Tool is a computational engine for analyzing fluid flows by extracting their most influential material surfaces, Lagrangian Coherent Structures. 
- mengaldo/PySPOD - A Python package for spectral proper orthogonal decomposition (SPOD). 
-
-
Visualization
-
2D Visualization
- matplotlib/matplotlib - matplotlib: plotting with Python. 
- scikit-image/scikit-image - Image processing in Python. 
- 3b1b/manim - Animation engine for explanatory math videos. 
- garrettj403/SciencePlots - Matplotlib styles for scientific plotting. 
- mwaskom/seaborn - Statistical data visualization in Python. 
- lukelbd/proplot - :art: A succinct matplotlib wrapper for making beautiful, publication-quality graphics. 
- lukelbd/proplot - :art: A succinct matplotlib wrapper for making beautiful, publication-quality graphics. 
-
3D Visualization
- K3D-tools/K3D-jupyter - K3D lets you create 3D plots backed by WebGL with high-level API (surfaces, isosurfaces, voxels, mesh, cloud points, vtk objects, volume renderer, colormaps, etc).   [](https://github.com/K3D-tools/K3D-jupyter/search?l=jupyter-notebook)
- sciapp/gr - GR framework: a graphics library for visualisation applications.  
- InsightSoftwareConsortium/itkwidgets - Interactive Jupyter widgets to visualize images, point sets, and meshes in 2D and 3D.   [](https://github.com/InsightSoftwareConsortium/itkwidgets/search?l=jupyter-notebook)
- NVIDIA/ipyparaview - iPython widget for server-side ParaView rendering in Jupyter.   [](https://github.com/NVIDIA/ipyparaview/search?l=jupyter-notebook)
- pyvista/pyvista - 3D plotting and mesh analysis through a streamlined interface for the Visualization Toolkit (VTK). 
- blender/blender - A free and open source 3D creation suite, supporting the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing. 
- QuantStack/ipygany - 3-D Scientific Visualization in the Jupyter Notebook.  [](https://github.com/QuantStack/ipygany/search?l=jupyter-notebook)
- Kitware/Vtk - Visualization Toolkit. 
- Kitware/paraview - An open-source, multi-platform data analysis and visualization application. 
-
-
Benchmarks and Datasets
-
Datasets
- shengzesnail/PIV_dataset - PIV dataset. 
- idies/pyJHTDB - Python wrapper for the Johns Hopkins turbulence database library.  [](https://github.com/idies/pyJHTDB/search?l=jupyter-notebook)
-
Benchmarks
- dionhaefner/pyhpc-benchmarks - A suite of benchmarks for CPU and GPU performance of the most popular high-performance libraries for Python. 
- su2code/TestCases - An extensive collection of common test cases for SU2.  
-
-
Reproducibility
-
Benchmarks
- iterative/dvc - Data Version Control, Git for Data & Models, ML Experiments Management. 
- sphinx-doc/sphinx - Sphinx is a tool that makes it easy to create intelligent and beautiful documentation for Python projects. 
-
-
Related Topics
-
Benchmarks
- alexlib/awesome_piv - A curated list of repositories related to PIV (particle image velocimetry). 
- qd-cae/awesome-CAE - A curated list of awesome CAE frameworks, libraries and software. 
- nschloe/awesome-scientific-computing - Curated list of awesome software for numerical analysis and scientific computing. 
- awesomedata/awesome-public-datasets - A topic-centric list of HQ open datasets. 
-
-
Community
-
Benchmarks
- CFD Online Forum - A free community for everyone interested in Computational Fluid Dynamics.
-
Programming Languages
Categories
Sub Categories
Books
16
Lecture Series
16
ML / Optical Flow
13
Finite Volume Methods (FVM)
9
Benchmarks
9
3D Visualization
9
Finite Element Methods (FEM)
7
2D Visualization
7
Vortex Methods / Panel Methods / Blade Element Methods
6
PIV / PTV
5
Other Techniques
5
Immersed Boundary Methods (IBM)
5
Neural Networks for PDE
5
Spectral Methods
4
Shallow Water / Ocean Dynamics
4
Building Energy and Urban Environments
3
Differential programming
3
Lattice Boltzmann Methods (LBM)
3
Design and Optimization
3
Notebooks
3
Graphics
2
Supersonic / Hypersonic Flow
2
Datasets
2
Finite Difference Methods (FDM)
1
Coupling
1
Chemical Kinetics
1
Weather and Climate
1
Keywords
python
28
cfd
23
simulation
11
computational-fluid-dynamics
10
fluid-dynamics
8
gpu
8
fortran
6
fem
6
turbulence
6
c-plus-plus
5
3d
5
mesh-generation
5
jax
5
dynamical-systems
4
hpc
4
fluid
4
partial-differential-equations
4
data-visualization
4
matplotlib
4
plotting
4
navier-stokes
4
high-performance-computing
4
pytorch
4
aerodynamics
4
machine-learning
4
physics
4
engineering
4
mathematics
4
mesh
4
fluid-simulation
3
neural-networks
3
les
3
computer-graphics
3
parallel-computing
3
mpi
3
meshing
3
animation
3
multiphase-flow
3
pde
3
flow
3
climate
3
spectral-methods
3
data-science
3
julia
3
open-source
3
pypi
3
scientific-computing
3
openfoam
3
point-cloud
3
visualization
3