Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

【快乐开源】迁移 DeepCFD 案例至 PaddleScience #439

Closed
HydrogenSulfate opened this issue Jul 22, 2023 · 0 comments
Closed

【快乐开源】迁移 DeepCFD 案例至 PaddleScience #439

HydrogenSulfate opened this issue Jul 22, 2023 · 0 comments
Assignees

Comments

@HydrogenSulfate
Copy link
Collaborator

HydrogenSulfate commented Jul 22, 2023

This project will be mentored by @HydrogenSulfate

1. 背景

计算流体力学(Computational fluid dynamics, CFD)通过求解Navier-Stokes方程(N-S方程),可以获得流体的各种物理量的分布,如密度、压力和速度等,在微电子系统、土木工程和航空航天等领域应用广泛。然而,在某些复杂的应用场景中,如机翼优化和流体与结构相互作用方面,需要使用千万级甚至上亿的网格对问题进行建模(如下图所示,下图展示了F-18战斗机的全机内外流一体结构化网格模型),导致CFD的计算量非常巨大。因此,目前亟需发展出一种相比于传统CFD方法更高效,且可以保持计算精度的方法。这篇文章的作者提到,可以使用深度学习的方法,通过训练少量传统CFD仿真的数据,构建一种数据驱动(data-driven)的CFD计算模型,来解决上述的问题。

image

在 AIStudio 上已经有使用 PaddlePaddle 框架API 复现的项目:基于PaddlePaddle的DeepCFD复现 - 飞桨AI Studio,现在希望能将这个项目迁移至 PaddleScience,也就是基于 PaddleScience 的 API 实现该项目,最终合入 PaddleScience 仓库

2. 收益

2.1 个人收益

  • 同时熟悉 CV 领域的经典模型结构 U-Net,并从该项目中了解相关流体力学知识,以及如何将物理公式融入到深度学习方法中
  • 学习 PaddleScience 套件代码,掌握开源套件开发基本知识

2.2 PaddleScience 收益

  • 补充 U-Net 结构至 Arch 模块
  • 补充 DeepCFD 案例至流体相关案例中,提升案例丰富度

3. 开发流程

3.1 安装 PaddleScience

下载安装 PaddleScience 套件:https://paddlescience-docs.readthedocs.io/zh/latest/zh/install_setup/#121-git

3.2 代码开发

参考 基于PaddlePaddle的DeepCFD复现 - 飞桨AI Studio项目,以及 PaddleScience 的开发与复现指南,使用 PaddleScience API 文档 等价实现该项目,开发代码风格与已有案例保持一致(如 Darcy 2D),训练精度与原论文对齐,并仿照已有文档撰写 DeepCFD 的案例文档,最终合入 PaddleScience。

3.3 整理代码并提交PR

参考 PaddleScience文档-贡献指南-整理代码并提交

4. 参考资料

奖励

500 京东卡

@HydrogenSulfate HydrogenSulfate changed the title 【快乐开源】为PaddleScience 添加 DeepCFD 模型 【快乐开源】迁移 DeepCFD 案例至 PaddleScience Jul 22, 2023
@luotao1 luotao1 closed this as completed Sep 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

2 participants