A differentiable PDE solving framework for machine learning
Python
1,947
3,343 commits
updated Jul 16, 2026

ΦFlow is an open-source simulation toolkit built for optimization and machine learning applications. It is written mostly in Python and can be used with NumPy, PyTorch, Jax or TensorFlow. The close integration with these machine learning frameworks allows it to leverage their automatic differentiation functionality, making it easy to build end-to-end differentiable functions involving both learning models and physics simulations.
![]() | ![]() | ![]() | ![]() |
| Gradient Descent | Optimize throw | Learning to throw | PIV |
![]() | ![]() | ![]() | |
| Close packing | Learning Φ(x,y) | Differentiable pressure |
Installation with pip on Python 3.6 and above:
$ pip install phiflow
Install PyTorch, TensorFlow or Jax in addition to ΦFlow to enable machine learning capabilities and GPU execution. To enable the web UI, also install Dash. For optimal GPU performance, you may compile the custom CUDA operators, see the detailed installation instructions.
You can verify your installation by running
$ python3 -c "import phi; phi.verify()"
This will check for compatible PyTorch, Jax and TensorFlow installations as well.
Documentation Overview
• ▶ YouTube Tutorials
• API
• Demos
•
Playground
Φ-Flow builds on the tensor functionality from ΦML. To understand how ΦFlow works, check named and typed dimensions first.
Please use the following citation:
@inproceedings{holl2024phiflow,
title={${\Phi}_{\text{Flow}}$ ({PhiFlow}): Differentiable Simulations for PyTorch, TensorFlow and Jax},
author={Holl, Philipp and Thuerey, Nils},
booktitle={International Conference on Machine Learning},
year={2024},
organization={PMLR}
}
We will upload a whitepaper, soon. In the meantime, please cite the ICLR 2020 paper.
ΦFlow has been used in the creation of various public data sets, such as PDEBench and PDEarena.
See more packages that use ΦFlow
The Version history lists all major changes since release. The releases are also listed on PyPI.
Contributions are welcome! Check out this document for guidelines.
This work is supported by the ERC Starting Grant realFlow (StG-2015-637014) and the Intel Intelligent Systems Lab.
Overall
Maintained
Code review
PyPI
Latest release
Releases this year
79 followers · starred Jun 2023
13,725 followers · starred May 2020
2,516 followers · starred Dec 2019
198 followers · starred Oct 2025
A differentiable PDE solving framework for machine learning
Python
1,947
3,343 commits
updated Jul 16, 2026

ΦFlow is an open-source simulation toolkit built for optimization and machine learning applications. It is written mostly in Python and can be used with NumPy, PyTorch, Jax or TensorFlow. The close integration with these machine learning frameworks allows it to leverage their automatic differentiation functionality, making it easy to build end-to-end differentiable functions involving both learning models and physics simulations.
![]() | ![]() | ![]() | ![]() |
| Gradient Descent | Optimize throw | Learning to throw | PIV |
![]() | ![]() | ![]() | |
| Close packing | Learning Φ(x,y) | Differentiable pressure |
Installation with pip on Python 3.6 and above:
$ pip install phiflow
Install PyTorch, TensorFlow or Jax in addition to ΦFlow to enable machine learning capabilities and GPU execution. To enable the web UI, also install Dash. For optimal GPU performance, you may compile the custom CUDA operators, see the detailed installation instructions.
You can verify your installation by running
$ python3 -c "import phi; phi.verify()"
This will check for compatible PyTorch, Jax and TensorFlow installations as well.
Documentation Overview
• ▶ YouTube Tutorials
• API
• Demos
•
Playground
Φ-Flow builds on the tensor functionality from ΦML. To understand how ΦFlow works, check named and typed dimensions first.
Please use the following citation:
@inproceedings{holl2024phiflow,
title={${\Phi}_{\text{Flow}}$ ({PhiFlow}): Differentiable Simulations for PyTorch, TensorFlow and Jax},
author={Holl, Philipp and Thuerey, Nils},
booktitle={International Conference on Machine Learning},
year={2024},
organization={PMLR}
}
We will upload a whitepaper, soon. In the meantime, please cite the ICLR 2020 paper.
ΦFlow has been used in the creation of various public data sets, such as PDEBench and PDEarena.
See more packages that use ΦFlow
The Version history lists all major changes since release. The releases are also listed on PyPI.
Contributions are welcome! Check out this document for guidelines.
This work is supported by the ERC Starting Grant realFlow (StG-2015-637014) and the Intel Intelligent Systems Lab.
Overall
Maintained
Code review
PyPI
Latest release
Releases this year
79 followers · starred Jun 2023
13,725 followers · starred May 2020
2,516 followers · starred Dec 2019
198 followers · starred Oct 2025