Skip to content

PaddleScience

paddlescience_icon

Developed with PaddlePaddle

Version Conda Python Version Doc Code Style Hydra License Update

👀Description

PaddleScience 是一个基于深度学习框架 PaddlePaddle 开发的科学计算套件,利用深度神经网络的学习能力和 PaddlePaddle 框架的自动(高阶)微分机制,解决物理、化学、气象等领域的问题。支持物理机理驱动、数据驱动、数理融合三种求解方式,并提供了基础 API 和详尽文档供用户使用与二次开发。

推荐使用 DeepWiki 辅助编程 👉Ask DeepWiki

✨Feature

  • 支持 实验源码跟踪一键启动并行实验,提高科研效率。
  • 支持简单几何和复杂 STL 几何的采样与布尔运算。
  • 支持包括 Dirichlet、Neumann、Robin 以及自定义边界条件。
  • 支持物理机理驱动、数据驱动、数理融合三种问题求解方式。涵盖流体、结构、气象等领域 20+ 案例。
  • 支持结果可视化输出与日志结构化保存。
  • 完善的 type hints,用户使用和代码贡献全流程文档,经典案例 AI studio 快速体验,降低使用门槛,提高开发效率。
  • 支持基于 sympy 符号计算库的方程表示与联立方程组计算。
  • 更多特性正在开发中...

panorama

📝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
python -m pip install -U paddlesci

Complete Installation Guide: Installation and Setup

🕘Recent Updates

🎈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-ModulusDeepXDEPaddleNLPPaddleClas 等优秀开源套件的启发。

  • Part of PaddleScience's code is contributed by the following outstanding developers (sorted by Contributors):

🤝Partner Organizations

cooperation

📜License

Apache License 2.0