Lune

ICML2024Top-tier venue

ΦFlow: Differentiable Simulations for PyTorch, TensorFlow and Jax

Philipp Holl, Nils Thuerey

2024Year
29Citations

Abstract

Differentiable processes have proven an invaluable tool for machine learning (ML) in scientific and engineering settings, but most ML libraries are not primarily designed for such applications. We present Φ Flow , a Python toolkit that seamlessly integrates with PyTorch, Tensor-Flow, Jax and NumPy, simplifying the process of writing differentiable simulation code at every step. Φ Flow provides many essential features that go beyond the capabilities of the base libraries, such as differential operators, boundary conditions, the ability to write dimensionalityagnostic code, floating-point precision management, fully differentiable preconditioned (sparse) linear solves, automatic matrix generation via function tracing, integration of SciPy optimizers, simulation vectorization, and visualization tools. At the same time, Φ Flow inherits all important traits of the base ML libraries, such as GPU / TPU support, just-in-time compilation, and automatic differentiation. Put together, these features drastically simplify scientific code like PDE or ODE solvers on grids or unstructured meshes, and Φ Flow even includes out-of-the-box support for fluid simulations. Φ Flow has been used in various publications and as a ground-truth solver in multiple scientific data sets. It is available at https: //github.com/tum-pbs/PhiFlow .

Ask about this paper

Your agent reads all of it.

Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.

Questions to start from

Your agent calls

Luneget_paper_fulltext

Ask in Lune

Free to start. No credit card required.

lune papers fulltext 105d153d-689c-4b8f-9a22-75ddb2661fc2

Builds on12

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines