Developed with PaddlePaddle
PaddleScience 是一个基于深度学习框架 PaddlePaddle 开发的科学计算套件,利用深度神经网络的学习能力和 PaddlePaddle 框架的自动(高阶)微分机制,解决物理、化学、气象等领域的问题。支持物理机理驱动、数据驱动、数理融合三种求解方式,并提供了基础 API 和详尽文档供用户使用与二次开发。
- 添加二维血管案例(LabelFree-DNN-Surrogate)、空气激波案例(ShockWave)、去噪网络模型(DUCNN)、风电预测模型(Deep Spatial Temporal)、域分解模型(XPINNs)、积分方程求解案例(Volterra Equation)、分数阶方程求解案例(Fractional Poisson 2D)。
- 针对串联方程和复杂方程场景,
Equation
模块支持基于 sympy 的符号计算,并支持和 python 函数混合使用(#507、#505)。 Geometry
模块和InteriorConstraint
、InitialConstraint
支持计算 SDF 微分功能(#539)。- 添加 MultiTaskLearning(
ppsci.loss.mtl
) 多任务学习模块,针对多任务优化(如 PINN 方法)进一步提升性能,使用方式:多任务学习指南(#493、#492)。
- 支持简单几何和复杂 STL 几何的采样与布尔运算。
- 支持包括 Dirichlet、Neumann、Robin 以及自定义边界条件。
- 支持物理机理驱动、数据驱动、数理融合三种问题求解方式。涵盖流体、结构、气象等领域 20+ 案例。
- 支持结果可视化输出与日志结构化保存。
- 完善的 type hints,用户使用和代码贡献全流程文档,经典案例 AI studio 快速体验,降低使用门槛,提高开发效率。
- 支持基于 sympy 符号计算库的方程表示。
- 更多特性正在开发中...
-
执行以下命令,从 github 上克隆 PaddleScience 项目,进入 PaddleScience 目录,并将该目录添加到系统环境变量中
git clone -b develop https://github.com/PaddlePaddle/PaddleScience.git # 若 github clone 速度比较慢,可以使用 gitee clone # git clone -b develop https://gitee.com/paddlepaddle/PaddleScience.git cd PaddleScience # install paddlesci with editable mode pip install -e .
-
安装必要的依赖包
pip install -r requirements.txt
-
验证安装
python -c "import ppsci; ppsci.utils.run_check()"
-
开始使用
import ppsci # write your code here...
更多安装方式请参考 安装与使用
请参考 快速开始
请参考 经典案例
如使用过程中遇到问题或想提出开发建议,欢迎在 Discussion 提出建议,或者在 Issue 页面新建 issue。
PaddleScience 项目欢迎并依赖开发人员和开源社区中的用户,请参阅 贡献指南。
PaddleScience 的部分模块和案例设计受 NVIDIA-Modulus、DeepXDE、PaddleNLP、PaddleClas 等优秀开源套件的启发。