tum-pbs/PhiFlow

A differentiable PDE solving framework for machine learning

解決的問題

PhiFlow 是一個旨在彌合物理模擬與機器學習之間差距的模擬工具包。它允許使用者建立完全可微分的模擬,這表示可直接整合至神經網路訓練迴圈中,以優化基於物理的參數或學習控制物理系統。

工作原理

該工具包使用 Python 編寫,並與 PyTorch、Jax 和 TensorFlow 等主要機器學習框架緊密整合。透過利用這些後端的自動微分功能,PhiFlow 可在模擬過程中計算梯度。它提供內建的偏微分方程(PDE)運算、高階線性方程求解器,以及對多種模擬方法的支援,包括基於網格的流體、粒子(SPH、FLIP)和網格。

適用對象

從事基於物理的深度學習、物理系統優化以及可微分物理模擬的研究人員與開發者。

主要亮點

  • 多後端支援:相同的模擬程式碼可在 NumPy、PyTorch、Jax 或 TensorFlow 上執行,支援在 CPU 與 GPU 之間輕鬆切換執行。
  • 可微分模擬:與機器學習框架完全整合,支援包含物理的模型端對端訓練。
  • 多樣的模擬類型:支援基於網格的流體、粒子模擬和基於網格的有限體積法(FVM)。
  • 互動式 Web UI:包含一個 Web 界面,可用於即時可視化模擬或網路訓練的即時控制。
  • 維度無關:模擬程式碼可在不同維度(例如 2D 與 3D)之間重用,無需修改。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案