PaddleScience¶
Developed with PaddlePaddle
👀Description¶
PaddleScience 是一个基于深度学习框架 PaddlePaddle 开发的科学计算套件,利用深度神经网络的学习能力和 PaddlePaddle 框架的自动(高阶)微分机制,解决物理、化学、气象等领域的问题。支持物理机理驱动、数据驱动、数理融合三种求解方式,并提供了基础 API 和详尽文档供用户使用与二次开发。
✨Feature¶
- 支持 实验源码跟踪,一键启动并行实验,提高科研效率。
- 支持简单几何和复杂 STL 几何的采样与布尔运算。
- 支持包括 Dirichlet、Neumann、Robin 以及自定义边界条件。
- 支持物理机理驱动、数据驱动、数理融合三种问题求解方式。涵盖流体、结构、气象等领域 20+ 案例。
- 支持结果可视化输出与日志结构化保存。
- 完善的 type hints,用户使用和代码贡献全流程文档,经典案例 AI studio 快速体验,降低使用门槛,提高开发效率。
- 支持基于 sympy 符号计算库的方程表示与联立方程组计算。
- 更多特性正在开发中...
📝Case List¶
| Problem Type | Case Name | Optimization Method | Model Type | Training Method | Dataset | References |
|---|---|---|---|---|---|---|
| Helmholtz Equation | SPINN(Helmholtz3D) | Physics-driven | SPINN | Unsupervised Learning | - | Paper |
| Phase Field Equation | Allen-Cahn | Physics-driven | MLP | Unsupervised Learning | Data | Paper |
| Differential Equation | Laplace Equation | Physics-driven | MLP | Unsupervised Learning | - | - |
| Differential Equation | Burgers Equation | Physics-driven | MLP | Unsupervised Learning | Data | Paper |
| Differential Equation | Nonlinear PDE | Physics-driven | PIRBN | Unsupervised Learning | - | Paper |
| Differential Equation | Lorenz Equation | Data-driven | Transformer-Physx | Supervised Learning | Data | Paper |
| Differential Equation | Rössler Equation | Data-driven | Transformer-Physx | Supervised Learning | Data | Paper |
| Operator Learning | DeepONet | Data-driven | MLP | Supervised Learning | Data | Paper |
| Differential Equation | Gradient-Enhanced Physics-Informed PDE Solving | Physics-driven | gPINN | Unsupervised Learning | - | Paper |
| Integral Equation | Volterra Integral Equation | Physics-driven | MLP | Unsupervised Learning | - | Project |
| Differential Equation | Fractional Differential Equation | Physics-driven | MLP | Unsupervised Learning | - | - |
| Optical Soliton | Optical soliton | Physics-driven | MLP | Unsupervised Learning | - | Paper |
| Optical Rogue Wave | Optical rogue wave | Physics-driven | MLP | Unsupervised Learning | - | Paper |
| Domain Decomposition | XPINN | Physics-driven | MLP | Unsupervised Learning | - | Paper |
| Brusselator Diffusion System | 3D-Brusselator | Data-driven | LNO | Supervised Learning | - | Paper |
| Symbolic Regression | Transformer4SR | Data-driven | Transformer | Supervised Learning | - | Paper |
| Operator Learning | Latent Neural Operator LNO | Data-driven | Transformer | Supervised Learning | - | Paper |
| Problem Type | Case Name | Optimization Method | Model Type | Training Method | Dataset | References |
|---|---|---|---|---|---|---|
| Vehicle Surface Drag Prediction | Transolver | Data-driven | Transolver | Supervised Learning | Data | Paper |
| Vehicle Surface Drag Prediction | DrivAerNet | Data-driven | RegDGCNN | Supervised Learning | Data | Paper |
| 1D Linear Convection Problem | 1D Linear Convection | Data-driven | ViT | Supervised Learning | Data | Paper |
| Unsteady Incompressible Flow | 2D Buoyancy-Driven Cavity Flow | Data-driven | ViT | Supervised Learning | Data | Paper |
| Steady Incompressible Flow | Re3200 2D Steady Cavity Flow | Physics-driven | MLP | Unsupervised Learning | - | |
| Steady Incompressible Flow | 2D Darcy Flow | Physics-driven | MLP | Unsupervised Learning | - | |
| Steady Incompressible Flow | 2D Pipe Flow | Physics-driven | MLP | Unsupervised Learning | - | Paper |
| Steady Incompressible Flow | 3D Intracranial Aneurysm | Physics-driven | MLP | Unsupervised Learning | Data | Project |
| Steady Incompressible Flow | Arbitrary 2D Geometry Flow | Data-driven | DeepCFD | Supervised Learning | - | Paper |
| Unsteady Incompressible Flow | 2D Unsteady Cavity Flow | Physics-driven | MLP | Unsupervised Learning | - | - |
| Unsteady Incompressible Flow | Re100 2D Cylinder Flow | Physics-driven | MLP | Semi-supervised Learning | Data | Paper |
| Unsteady Incompressible Flow | Re100~750 2D Cylinder Flow | Data-driven | Transformer-Physx | Supervised Learning | Data | Paper |
| Compressible Flow | 2D Air Shock Wave | Physics-driven | PINN-WE | Unsupervised Learning | Data | - |
| Aircraft Design | MeshGraphNets | Data-driven | GNN | Supervised Learning | Data | Paper |
| Aircraft Design | Rocket Engine Vacuum Plume | Data-driven | CNN | Supervised Learning | Data | - |
| Aircraft Design | Deep-Flow-Prediction | Data-driven | TurbNetG | Supervised Learning | Data | Paper |
| General Flow Simulation | Aerodynamic Shape Design | Data-driven | AMGNet | Supervised Learning | Data | Paper |
| Fluid-Structure Interaction | Vortex-Induced Vibration | Physics-driven | MLP | Semi-supervised Learning | Data | Paper |
| Multiphase Flow | Gas-Liquid Two-Phase Flow | Physics-driven | BubbleNet | Semi-supervised Learning | Data | Paper |
| Multiphase Flow | twophasePINN | Physics-driven | MLP | Unsupervised Learning | - | Paper |
| High-Resolution Flow Field Reconstruction | 2D Turbulent Flow Field Reconstruction | Data-driven | tempoGAN | Supervised Learning | Train Data Eval Data |
Paper |
| High-Resolution Flow Field Reconstruction | 2D Turbulent Flow Field Reconstruction | Data-driven | cycleGAN | Supervised Learning | Train Data Eval Data |
Paper |
| High-Resolution Flow Field Reconstruction | Global Field Reconstruction from Sparse Sensors via Voronoi Embedding-Assisted Deep Learning | Data-driven | CNN | Supervised Learning | Data1 Data2 Data3 |
Paper |
| Flow Field Prediction | Catheter | Data-driven | FNO | Supervised Learning | Data | Paper |
| Solver Coupling | CFD-GCN | Data-driven | GCN | Supervised Learning | Data Mesh |
Paper |
| Force Analysis | 1D Euler Beam Deformation | Physics-driven | MLP | Unsupervised Learning | - | - |
| Force Analysis | 2D Plate Deformation | Physics-driven | MLP | Unsupervised Learning | - | Paper |
| Force Analysis | 3D Bracket Deformation | Physics-driven | MLP | Unsupervised Learning | Data | Tutorial |
| Force Analysis | Structural Vibration Simulation | Physics-driven | PhyLSTM | Supervised Learning | Data | Paper |
| Force Analysis | 2D Elastoplastic Structure | Physics-driven | EPNN | Unsupervised Learning | Train Data Eval Data |
Paper |
| Force Analysis and Inverse Problem | 3D Vehicle Control Arm Deformation | Physics-driven | MLP | Unsupervised Learning | - | - |
| Force Analysis and Inverse Problem | 3D Heart Simulation | Physics-Data Fusion | PINN | Supervised Learning | - | - |
| Topology Optimization | 2D Topology Optimization | Data-driven | TopOptNN | Supervised Learning | Data | Paper |
| Topology Optimization | 2/3D Topology Optimization | Physics-driven | DenseSIRENModel | Unsupervised Learning | - | Paper |
| Thermal Simulation | 1D Heat Exchanger Thermal Simulation | Physics-driven | PI-DeepONet | Unsupervised Learning | - | - |
| Thermal Simulation | 2D Thermal Simulation | Physics-driven | PINN | Unsupervised Learning | - | Paper |
| Thermal Simulation | 2D Chip Thermal Simulation | Physics-driven | PI-DeepONet | Unsupervised Learning | - | Paper |
| Problem Type | Case Name | Optimization Method | Model Type | Training Method | Dataset | References |
|---|---|---|---|---|---|---|
| Material Design | Diffuser Design (Inverse Problem) | Physics-driven | Transformer | Unsupervised Learning | Train Data Eval Data |
Paper |
| Crystal Material Property Prediction | CGCNN | Data-driven | GNN | Supervised Learning | MP / Perovskite / C2DB / test | Paper |
| 2D Material Generation and Database | ML2DDB | Data-driven | GNN/Diffusion | Supervised Learning | Coming Soon | Paper |
| Problem Type | Case Name | Optimization Method | Model Type | Training Method | Dataset | References |
|---|---|---|---|---|---|---|
| Meteorological Downscaling | KMCast | Data-driven | Diffusion | Supervised Learning | GFS | - |
| Weather Forecasting | Extformer-MoE Weather Forecasting | Data-driven | Transformer | Supervised Learning | enso | - |
| Weather Forecasting | FourCastNet Weather Forecasting | Data-driven | AFNO | Supervised Learning | ERA5 | Paper |
| Weather Forecasting | NowCastNet Weather Forecasting | Data-driven | GAN | Supervised Learning | MRMS | Paper |
| Weather Forecasting | GraphCast Weather Forecasting | Data-driven | GNN | Supervised Learning | - | Paper |
| Weather Forecasting | GenCast Weather Forecasting | Data-driven | Diffusion+Graph transformer | Supervised Learning | Gencast | Paper |
| Weather Forecasting | Fuxi Weather Forecasting | Data-driven | Transformer | Supervised Learning | - | Paper |
| Weather Forecasting | FengWu Weather Forecasting | Data-driven | Transformer | Supervised Learning | - | Paper |
| Weather Forecasting | Pangu-Weather Weather Forecasting | Data-driven | Transformer | Supervised Learning | - | Paper |
| Atmospheric Pollutants | UNet Pollutant Diffusion | Data-driven | UNet | Supervised Learning | Data | - |
| Atmospheric Pollutants | STAFNet Pollutant Concentration Prediction | Data-driven | STAFNet | Supervised Learning | Data | Paper |
| Weather Forecasting | DGMR Weather Forecasting | Data-driven | GAN | Supervised Learning | UK dataset | Paper |
| Seismic Waveform Inversion | VelocityGAN Seismic Waveform Inversion | Data-driven | VelocityGAN | Supervised Learning | OpenFWI | Paper |
| Remote Sensing Image Segmentation | UNetFormer Image Segmentation | Data-driven | UNetformer | Supervised Learning | Vaihingen | Paper |
| Traffic Prediction | TGCN Traffic Flow Prediction | Data-driven | GCN & CNN | Supervised Learning | PEMSD4 & PEMSD8 | - |
| Weather Forecasting | Meteoformer Multi-Meteorological Element Prediction | Data-driven | Transformer | Supervised Learning | ERA5 | - |
| Weather Forecasting | Preformer Short-Term Precipitation Prediction | Data-driven | Transformer | Supervised Learning | ERA5 | Paper |
| Weather Forecasting | Climateformer Climate Prediction | Data-driven | Transformer | Supervised Learning | ERA5 | - |
| Generative Model | Gradient Penalty Application in Image Generation | Data-driven | WGAN GP | Supervised Learning | Data1 Data2 |
Paper |
| Remote Sensing Image Segmentation | UTAE Remote Sensing Time Series Semantic/Panoptic Segmentation | Data-driven | UTAE | Supervised Learning | PASTIS | Paper |
| Problem Type | Case Name | Optimization Method | Model Type | Training Method | Dataset | References |
|---|---|---|---|---|---|---|
| Chemical Molecule Generation | Moflow | Data-driven | moflow | Supervised Learning | qm9/ zink250k | MoFlow: An Invertible Flow Model for Generating Molecular Graphs |
| Chemical Reaction Prediction | IFM | Data-driven | IFM-MLP | Supervised Learning | tox21/sider/hiv/bace/bbbp | Understanding the Limitations of Deep Models for Molecular property prediction: Insights and Solutions |
🚀Quick Installation¶
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
python -m pip install -e . -i https://pypi.tuna.tsinghua.edu.cn/simple
Complete Installation Guide: Installation and Setup
🕘Recent Updates¶
- 沐曦MetaX 和 太初元碁Tecorigin 完成与 PaddleScience 的第一阶段适配工作,详见:多硬件支持。
- 基于 PaddleScience 的 ADR 方程求解方法 Physics-informed neural networks for advection–diffusion–Langmuir adsorption processes 被 Physics of Fluids 2024 接受。
- 添加 IJCAI 2024: 任意三维几何外形车辆的风阻快速预测竞赛,track A, B, C 的 paddle/pytorch 代码链接。
- 添加 SPINN(基于 Helmholtz3D 方程求解) helmholtz3d。
- 添加 CVit(基于 Advection 方程和 N-S 方程求解) CVit(Navier-Stokes)、CVit(Advection)。
- 添加 PirateNet(基于 Allen-cahn 方程和 N-S 方程求解) Allen-Cahn、LDC2D(Re3200)。
- 基于 PaddleScience 的快速热仿真方法 A fast general thermal simulation model based on MultiBranch Physics-Informed deep operator neural network 被 Physics of Fluids 2024 接受。
- 添加多目标优化算法 Relobralo 。
- 添加气泡流求解案例(Bubble)、机翼优化案例(DeepCFD)、热传导仿真案例(HeatPINN)、非线性短临预报模型(Nowcasting(仅推理))、拓扑优化案例(TopOpt)、矩形平板线弹性方程求解案例(Biharmonic2D)。
- 添加二维血管案例(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)。
🎈Ecosystem Tools¶
除 PaddleScience 外,Paddle 框架同时支持了科学计算领域相关的研发套件和基础工具:
| 工具 | 简介 | 支持情况 |
|---|---|---|
| DeepXDE | 方程求解套件 | 全量支持 |
| DeepMD-kit | 分子动力学套件 | 部分支持 |
| Modulus-sym | AI仿真套件 | 全量支持 |
| NVIDIA/warp | 基于 Python 的 GPU 高性能仿真和图形库 | 全量支持 |
| tensorly | 张量运算库 | 全量支持 |
| Open3D | 三维图形库 | 全量支持 |
| neuraloperator | 神经算子库 | 全量支持 |
| paddle_scatter | 张量稀疏聚合库 | 全量支持 |
| paddle_cluster | 几何采样聚合库 | 全量支持 |
| paddle_sparse | 张量稀疏计算库 | 全量支持 |
| paddle_harmonics | 球面谐波变换库 | 全量支持 |
| deepali | 图像、点云配准库 | 全量支持 |
| DLPACK(v0.8) | 跨框架张量内存共享协议 | 全量支持 |
💬Support¶
如在使用过程中遇到问题或想提出开发建议,欢迎在 Discussion 中提出,或者在 Issue 页面新建 issue,会有专业的研发人员进行解答。
👫Contribution¶
PaddleScience 项目欢迎并依赖开发人员和开源社区中的用户,会不定期推出开源活动。
在开源活动中如需使用 PaddleScience 进行开发,可参考 PaddleScience 开发与贡献指南 以提升开发效率和质量。
-
🎁快乐开源
旨在鼓励更多的开发者参与到飞桨科学计算社区的开源建设中,帮助社区修复 bug 或贡献 feature,加入开源、共建飞桨。了解编程基本知识的入门用户即可参与,活动进行中: PaddleScience 快乐开源活动表单
🎯Collaboration¶
PaddleScience 作为一个开源项目,欢迎来各行各业的伙伴携手共建基于飞桨的 AI for Science 领域顶尖开源项目, 打造活跃的前瞻性的 AI for Science 开源社区,建立产学研闭环,推动科研创新与产业赋能。点击了解 飞桨AI for Science共创计划。
❤️Thanks¶
-
PaddleScience 的部分模块和案例设计受 NVIDIA-Modulus、DeepXDE、PaddleNLP、PaddleClas 等优秀开源套件的启发。
-
Part of PaddleScience's code is contributed by the following outstanding developers (sorted by Contributors):

