Skip to main content

A library for scientific machine learning

Project description

PaddleScience

Developed with PaddlePaddle

Version Python Version Doc Code Style Hydra License

PaddleScience使用文档

👀简介

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

📝案例列表

数学(AI for Math)

问题类型 案例名称 优化算法 模型类型 训练方式 数据集 参考资料
微分方程 拉普拉斯方程 机理驱动 MLP 无监督学习 - -
微分方程 伯格斯方程 机理驱动 MLP 无监督学习 Data Paper
微分方程 非线性偏微分方程 机理驱动 PIRBN 无监督学习 - Paper
微分方程 洛伦兹方程 数据驱动 Transformer-Physx 监督学习 Data Paper
微分方程 若斯叻方程 数据驱动 Transformer-Physx 监督学习 Data Paper
算子学习 DeepONet 数据驱动 MLP 监督学习 Data Paper
微分方程 梯度增强的物理知识融合PDE求解coming soon 机理驱动 gPINN 半监督学习 - Paper
积分方程 沃尔泰拉积分方程 机理驱动 MLP 无监督学习 - Project

技术科学(AI for Technology)

问题类型 案例名称 优化算法 模型类型 训练方式 数据集 参考资料
定常不可压流体 2D 定常方腔流 机理驱动 MLP 无监督学习 -
定常不可压流体 2D 达西流 机理驱动 MLP 无监督学习 -
定常不可压流体 2D 管道流 机理驱动 MLP 无监督学习 - Paper
定常不可压流体 3D 血管瘤 机理驱动 MLP 无监督学习 Data Project
定常不可压流体 任意 2D 几何体绕流 数据驱动 DeepCFD 监督学习 - Paper
非定常不可压流体 2D 非定常方腔流 机理驱动 MLP 无监督学习 - -
非定常不可压流体 Re100 2D 圆柱绕流 机理驱动 MLP 半监督学习 Data Paper
非定常不可压流体 Re100~750 2D 圆柱绕流 数据驱动 Transformer-Physx 监督学习 Data Paper
可压缩流体 2D 空气激波 机理驱动 PINN-WE 无监督学习 - Paper
飞行器设计 MeshGraphNets 数据驱动 GNN 监督学习 Data Paper
飞行器设计 火箭发动机真空羽流 数据驱动 CNN 监督学习 Data -
飞行器设计 Deep-Flow-Prediction 数据驱动 TurbNetG 监督学习 Data Paper
流固耦合 涡激振动 机理驱动 MLP 半监督学习 Data Paper
多相流 气液两相流 机理驱动 BubbleNet 半监督学习 Data Paper
多相流 twophasePINN 机理驱动 MLP 无监督学习 - Paper
多相流 非高斯渗透率场估计coming soon 机理驱动 cINN 监督学习 - Paper
流场高分辨率重构 2D 湍流流场重构 数据驱动 tempoGAN 监督学习 Train Data
Eval Data
Paper
流场高分辨率重构 2D 湍流流场重构 数据驱动 cycleGAN 监督学习 Train Data
Eval Data
Paper
流场高分辨率重构 基于Voronoi嵌入辅助深度学习的稀疏传感器全局场重建 数据驱动 CNN 监督学习 Data1
Data2
Data3
Paper
流场高分辨率重构 基于扩散的流体超分重构coming soon 数理融合 DDPM 监督学习 - Paper
求解器耦合 CFD-GCN 数据驱动 GCN 监督学习 Data
Mesh
Paper
受力分析 1D 欧拉梁变形 机理驱动 MLP 无监督学习 - -
受力分析 2D 平板变形 机理驱动 MLP 无监督学习 - Paper
受力分析 3D 连接件变形 机理驱动 MLP 无监督学习 Data Tutorial
受力分析 结构震动模拟 机理驱动 PhyLSTM 监督学习 Data Paper
受力分析 2D 弹塑性结构 机理驱动 EPNN 无监督学习 Train Data
Eval Data
Paper
拓扑优化 2D 拓扑优化 数据驱动 TopOptNN 监督学习 Data Paper

材料科学(AI for Material)

问题类型 案例名称 优化算法 模型类型 训练方式 数据集 参考资料
材料设计 散射板设计(反问题) 数理融合 数据驱动 监督学习 Train Data
Eval Data
Paper
材料生成 面向对称感知的周期性材料生成coming soon 数据驱动 SyMat 监督学习 - -

地球科学(AI for Earth Science)

问题类型 案例名称 优化算法 模型类型 训练方式 数据集 参考资料
天气预报 FourCastNet 气象预报 数据驱动 FourCastNet 监督学习 ERA5 Paper
天气预报 GraphCast 气象预报coming soon 数据驱动 GraphCastNet* 监督学习 - Paper
大气污染物 UNet 污染物扩散 数据驱动 UNet 监督学习 Data -

🕘最近更新

✨特性

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

🚀安装使用

安装 PaddlePaddle

请在 PaddlePaddle 官网按照您的运行环境,安装 develop 版的 PaddlePaddle。

安装完毕之后,运行以下命令,验证 Paddle 是否安装成功。

python -c "import paddle; paddle.utils.run_check()"

如果出现 PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now. 信息,说明您已成功安装,可以继续安装 PaddleScience。

安装 PaddleScience

  1. 执行以下命令,从 github 上 clone PaddleScience 源代码,并以 editable 的方式安装 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
    
    # windows 用户安装前请执行如下命令,否则可能因为gbk编码问题导致安装失败
    set PYTHONUTF8=1
    
    # install paddlesci with editable mode
    pip install -e . -i https://pypi.tuna.tsinghua.edu.cn/simple
    
  2. 验证安装

    python -c "import ppsci; ppsci.utils.run_check()"
    
  3. 开始使用

    import ppsci
    
    # write your code here...
    

如需读取复杂几何文件,并进行解析、采样等操作,请参考完整安装流程:安装与使用

⚡️快速开始

请参考 快速开始

💬支持与建议

如使用过程中遇到问题或想提出开发建议,欢迎在 Discussion 提出建议,或者在 Issue 页面新建 issue,会有专业的研发人员进行解答。

👫开源共建

PaddleScience 项目欢迎并依赖开发人员和开源社区中的用户,会不定期推出开源活动。

在开源活动中如需使用 PaddleScience 进行开发,可参考 PaddleScience 开发与贡献指南 以提升开发效率和质量。

  • 🎁快乐开源

    旨在鼓励更多的开发者参与到飞桨科学计算社区的开源建设中,帮助社区修复 bug 或贡献 feature,加入开源、共建飞桨。了解编程基本知识的入门用户即可参与,活动进行中: PaddleScience 快乐开源活动表单

  • 🔥第五期黑客松

    面向全球开发者的深度学习领域编程活动,鼓励开发者了解与参与飞桨深度学习开源项目与文心大模型开发实践。活动进行中:【PaddlePaddle Hackathon 5th】开源贡献个人挑战赛

🎯共创计划

PaddleScience 作为一个开源项目,欢迎来各行各业的伙伴携手共建基于飞桨的 AI for Science 领域顶尖开源项目, 打造活跃的前瞻性的 AI for Science 开源社区,建立产学研闭环,推动科研创新与产业赋能。点击了解 飞桨AI for Science共创计划

❤️致谢

🤝合作单位

cooperation

📜证书

Apache License 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

paddlesci-1.2.0-py3-none-any.whl (263.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page