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)之間重用,無需修改。
相關
- 專案
- 專案
- 專案
- 專案
- 專案