Go to file
2025-03-24 20:51:21 +01:00
latex-helpers pdf export update 2021-04-22 10:26:01 +08:00
resources missing file 2025-03-20 20:19:42 +01:00
temp notebooks update 2021-01-07 19:28:50 +08:00
_config.yml updated intro discussion 2025-02-03 15:28:55 +08:00
_toc.yml prob models introduction with code from Benjamin 2025-03-17 15:32:01 +01:00
.gitignore Initial commit 2021-01-04 16:32:39 +08:00
bayesian-code.ipynb beautified ipynb outupt, removed stderr cells 2022-09-06 10:17:40 +02:00
bayesian-intro.md unified writing of data set 2022-04-18 10:00:44 +02:00
diffphys-code-burgers.ipynb added prob models discussion, phi33 notebook fixes 2025-02-14 12:12:53 +08:00
diffphys-code-control.ipynb large update of differentiable physics chapter 2025-02-17 14:01:59 +08:00
diffphys-code-ns.ipynb large update of differentiable physics chapter 2025-02-17 14:01:59 +08:00
diffphys-code-sol.ipynb cleanup of code examples 2025-02-19 09:53:02 +08:00
diffphys-discuss.md large update of differentiable physics chapter 2025-02-17 14:01:59 +08:00
diffphys-dpvspinn.md large update of differentiable physics chapter 2025-02-17 14:01:59 +08:00
diffphys-examples.md large update of differentiable physics chapter 2025-02-17 14:01:59 +08:00
diffphys.md large update of differentiable physics chapter 2025-02-17 14:01:59 +08:00
favicon.ico updated config and overview 2021-08-30 19:39:02 +02:00
fixup-latex.py smaller fixes 2022-04-24 20:41:49 +02:00
intro-teaser.ipynb updated intro teaser 2025-03-20 15:55:14 +01:00
intro.md smaller tweaks 2025-03-19 17:01:16 +01:00
json-cleanup-for-pdf.py fixed cleanup script 2024-10-09 10:36:24 +08:00
json-ipynb-removeImgs.py script cleanup 2021-06-30 19:35:47 +02:00
LICENSE Initial commit 2021-01-04 16:32:39 +08:00
make-pdf.sh fixes Mario (arch) and equation cleanup 2025-03-18 20:33:37 +01:00
notation.md update of overview chapter 2025-02-05 11:34:07 +08:00
others-GANs.md cleanup of code examples 2025-02-19 09:53:02 +08:00
others-intro.md fixing PDf output, removing citations in figure captions for now as these are causing problem in the tex output 2025-02-17 09:57:48 +08:00
others-lagrangian.md fixing PDf output, removing citations in figure captions for now as these are causing problem in the tex output 2025-02-17 09:57:48 +08:00
others-metrics.md cleanup, added other topics chapter 2021-04-14 19:08:51 +08:00
others-timeseries.md fixing PDf output, removing citations in figure captions for now as these are causing problem in the tex output 2025-02-17 09:57:48 +08:00
outlook.md updated intro and outlook 2025-02-19 09:52:46 +08:00
overview-burgers-forw.ipynb update physloss chapter 2025-02-10 11:35:22 +08:00
overview-equations.md update of overview chapter 2025-02-05 11:34:07 +08:00
overview-ns-forw.ipynb notebook updates 2025-02-10 14:08:54 +08:00
overview-optconv.md update of overview chapter 2025-02-05 11:34:07 +08:00
overview.md updated references 2025-02-20 09:49:35 +08:00
physgrad-code.ipynb updated notebooks to phiflow 3.1 2024-10-09 12:17:46 +08:00
physgrad-comparison.ipynb numerous smaller fixes in physgrad chapter 2022-04-24 13:59:09 +02:00
physgrad-discuss.md numerous smaller fixes in physgrad chapter 2022-04-24 13:59:09 +02:00
physgrad-hig-code.ipynb phiflow version updates, preparing for 2.2 2022-08-18 13:32:11 +02:00
physgrad-hig.md numerous smaller fixes in physgrad chapter 2022-04-24 13:59:09 +02:00
physgrad-nn.md physgrad sin images as jpgs 2025-02-17 13:49:12 +08:00
physgrad.md Fix minor typos 2022-09-11 10:25:40 +02:00
physicalloss-code.ipynb added prob models discussion, phi33 notebook fixes 2025-02-14 12:12:53 +08:00
physicalloss-discuss.md added prob models discussion, phi33 notebook fixes 2025-02-14 12:12:53 +08:00
physicalloss-div.ipynb cleanup of code examples 2025-02-19 09:53:02 +08:00
physicalloss.md update physloss chapter 2025-02-10 11:35:22 +08:00
probmodels-ddpm-fm.ipynb added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-diffusion.ipynb added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-discuss.md added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-dppm-fm.ipynb added references, minor typos, TOC, todo: move dppm to ddpm notebook 2024-12-09 10:31:53 +08:00
probmodels-flowmatching.ipynb added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-graph-ellipse.ipynb added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-graph.md fixed pm graph equations 2025-03-24 20:51:21 +01:00
probmodels-intro.md added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-normflow.ipynb added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-phys.md added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-sbisim.ipynb cleanup of code examples 2025-02-19 09:53:02 +08:00
probmodels-score.ipynb added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-time.ipynb added genAI dividers 2025-03-20 13:56:40 +01:00
probmodels-uncond.md added genAI dividers 2025-03-20 13:56:40 +01:00
README.md fixed typo in README title 2025-03-22 21:59:31 +01:00
references.bib Updated readme 2025-03-21 12:26:57 +01:00
references.md initial checkin 2021-01-04 16:36:09 +08:00
reinflearn-code.ipynb beautified ipynb outupt, removed stderr cells 2022-09-06 10:17:40 +02:00
reinflearn-intro.md cleanup of code examples 2025-02-19 09:53:02 +08:00
supervised-airfoils.ipynb notebook updates 2025-02-10 14:08:54 +08:00
supervised-arch.md added transformer block figure 2025-03-19 21:28:54 +01:00
supervised-discuss.md update supervised chapter 2025-02-06 14:05:50 +08:00
supervised.md update physloss chapter 2025-02-10 11:35:22 +08:00

Welcome to the Physics-based Deep Learning book (PBDL) v0.3

This is the source code repository for the Jupyter book “Physics-based Deep Learning”. You can find the full, readable version online at: https://physicsbaseddeeplearning.org/

A single-PDF version is also available on arXiv: https://arxiv.org/pdf/2109.05237.pdf

PBDL

A Short Synopsis

The PBDL book contains a hands-on, comprehensive guide to deep learning in the realm of physical simulations. Rather than just theory, we emphasize practical application: every concept is paired with interactive Jupyter notebooks to get you up and running quickly. Beyond traditional supervised learning, we dive into physical loss-constraints, differentiable simulations, diffusion-based approaches for probabilistic generative AI, as well as reinforcement learning and advanced neural network architectures. These foundations are paving the way for the next generation of scientific foundation models. We are living in an era of rapid transformation. These methods have the potential to redefine whats possible in computational science.

The key aspects that we will address in the following are:

  • How to train neural networks to predict the fluid flow around airfoils with diffusion modeling. This gives a probabilistic surrogate model that replaces and outperforms traditional simulators.
  • How to use model equations as residuals to train networks that represent solutions, and how to improve upon these residual constraints by using differentiable simulations.
  • How to more tightly interact with a full simulator for inverse problems. E.g., well demonstrate how to circumvent the convergence problems of standard reinforcement learning techniques by leveraging simulators in the training loop.
  • Well also discuss the importance of choosing the right network architecture: whether to consider global or local interactions, continuous or discrete representations, and structured versus unstructured graph meshes.

The focus of this book lies on:

  • how to use deep learning techniques to solve PDE problems,
  • how to combine them with existing knowledge of physics,
  • without discarding numerical methods.

At the same time, its worth noting what we wont be covering:

  • Theres no in-depth introduction to deep learning and numerical simulations,
  • and the aim is neither a broad survey of research articles in this area.

The name of this book, Physics-based Deep Learning, denotes combinations of physical modeling and numerical simulations with methods based on artificial neural networks. The general direction of Physics-Based Deep Learning represents a very active, quickly growing and exciting field of research.

The aim is to build on all the powerful numerical techniques that we have at our disposal, and use them wherever we can. As such, a central goal of this book is to reconcile the data-centered viewpoint with physical simulations.

The resulting methods have a huge potential to improve what can be done with numerical methods: in scenarios where a solver targets cases from a certain well-defined problem domain repeatedly, it can for instance make a lot of sense to once invest significant resources to train a neural network that supports the repeated solves. Based on the domain-specific specialization of this network, such a hybrid could vastly outperform traditional, generic solvers.

Divider

Whats new?

Whats new in v0.3? This latest edition takes things even further with a major new chapter on generative modeling, covering cutting-edge techniques like denoising, flow-matching, autoregressive learning, physics-integrated constraints, and diffusion-based graph networks. Weve also introduced a dedicated section on neural architectures specifically designed for physics simulations. All code examples have been updated to leverage the latest frameworks.

Teasers

To mention a few highlights: the book contains a notebook to train hybrid fluid flow (Navier-Stokes) solvers via differentiable physics to reduce numerical errors. Try it out in Colab: https://colab.research.google.com/github/tum-pbs/pbdl-book/blob/main/diffphys-code-sol.ipynb

PBDL also has example code to train diffusion denoising and flow matching networks for RANS flow predictions around airfoils that yield uncertainty estimates. You can run the code right away here: https://colab.research.google.com/github/tum-pbs/pbdl-book/blob/main/probmodels-ddpm-fm.ipynb

Theres a notebook for an improved learning scheme which jointly computes update directions for neural networks and physics (via half-inverse gradients): https://colab.research.google.com/github/tum-pbs/pbdl-book/blob/main/physgrad-hig-code.ipynb

And a notebook to compare proximal policy-based reinforcement learning with physics-based learning for controlling PDEs (spoiler: the physics-aware version does better in the end). Give it a try: https://colab.research.google.com/github/tum-pbs/pbdl-book/blob/main/reinflearn-code.ipynb

Divider