Commit 79f25a88 authored by mashun1's avatar mashun1
Browse files

jax-cfd

parent 5e31fa1f
Pipeline #1016 failed with stages
in 0 seconds
# jax-cfd_jax
## 仓库介绍
<!-- ## 仓库介绍
JAX-CFD是一个探索机器学习、自动微分和硬件加速器(GPU/TPU)在计算流体动力学中潜在应用的实验研究项目。它是用JAX实现的。
......@@ -38,30 +38,28 @@ JAX-CFD目前专注于非稳态湍流流动:
- 稳态模拟(例如,雷诺平均N-S方程RANS)
- 在多个TPU/GPU上的分布式模拟
我们欢迎在这些方面的任何合作!在开始重要工作之前,请通过GitHub或电子邮件与我们联系以协调。
我们欢迎在这些方面的任何合作!在开始重要工作之前,请通过GitHub或电子邮件与我们联系以协调。 -->
## 应用案例
### 论文
## 论文
**Machine learning–accelerated computationalfluid dynamics**
* https://www.pnas.org/doi/epdf/10.1073/pnas.2101784118
### 模型结构
## 模型结构
该模型包括一个卷积神经网络,该网络控制在标准数值求解器的对流计算中的学习近似。ψ和u分别指的是被输送和输送速度分量。对于空间维度,有d*d个对流通量模块的副本,对应于每个空间方向中每个速度分量的通量。
![alt text](asset/model_structure.png)
### 算法原理
## 算法原理
CNN网络具有平移不变性。这意味着网络对输入数据的平移不敏感,即使图像中的对象位置发生了变化,网络也能识别出对象。在流体动力学的上下文中,网络能够识别出流动中相同的模式,无论它们在空间中如何移动。此外,卷积神经网络在空间上是局部化的,网络的操作集中在输入数据的局部区域。在流体动力学的背景下,网络专注于网格点周围的局部流速场,而不是整个流速场。这种局部化允许网络捕捉局部流动特征,如涡旋、边界层等,这对于准确模拟流体行为至关重要。
![alt text](asset/alg.png)
### 环境配置
## 环境配置
#### Docker(方法一)
### Docker(方法一)
docker pull image.sourcefind.cn:5000/dcu/admin/base/jax:0.4.23-ubuntu20.04-dtk24.04-py310
......@@ -71,7 +69,7 @@ CNN网络具有平移不变性。这意味着网络对输入数据的平移不
pip install dask jupyter
#### Dockerfile(方法二)
### Dockerfile(方法二)
docker build -t <IMAGE_NAME>:<TAG> .
......@@ -81,7 +79,7 @@ CNN网络具有平移不变性。这意味着网络对输入数据的平移不
pip install dask jupyter
#### Anaconda(方法三)
### Anaconda(方法三)
DTK驱动:dtk24.04
python:python3.10
......@@ -93,7 +91,7 @@ Tips:以上dtk驱动、python、jax等DCU相关工具版本需要严格一一
pip install dask jupyter
### 数据集
## 数据集
1、安装gsutil
......@@ -120,7 +118,7 @@ Tips:以上dtk驱动、python、jax等DCU相关工具版本需要严格一一
gsutil -m cp gs://gresearch/jax-cfd/public_eval_datasets/kolmogorov_re_1000/long_eval*.nc ./content
### 推理
## 推理
1、下载模型
......@@ -153,12 +151,12 @@ Tips:以上dtk驱动、python、jax等DCU相关工具版本需要严格一一
注意:跳过代码中需要下载数据的部分。
### result
## result
![alt text](asset/result1.png)
#### 精度
### 精度
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment