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)之间复用,无需修改。
相关
- 项目
- 项目
- 项目
- 项目
- 项目