CFDBench

14 downloads 4 likes on ModelScope updated

Model card

CFDBench

模型介绍

CFDBench 是由清华大学研究团队提出的面向计算流体力学机器学习方法的大规模评测基准,重点考察模型在不同边界条件、流体物性和几何构型下的泛化能力。

论文:CFDBench: A Large-Scale Benchmark for Machine Learning Methods in Fluid Dynamics

模型描述

CFDBench 基于多类典型计算流体力学数据构建,覆盖不同边界条件、流体物性和几何构型,面向机器学习方法开展流场预测性能与泛化能力评测。

适用场景

场景 说明
CFD代理模型基准评测 在统一数据划分和指标下比较不同神经算子或深度学习模型的流场预测能力
自回归流场演化预测 使用当前网格速度场逐步预测后续时刻的二维速度场,并观察多步误差累积
非自回归场查询 根据工况参数与时空坐标直接预测目标位置的速度,评估长时间范围查询能力

支持模型

类型 root.model.name 训练入口
非自回归 ffn python scripts/train.py
非自回归 deeponet python scripts/train.py
自回归 auto_ffn python scripts/train_auto.py
自回归 auto_deeponet python scripts/train_auto.py
自回归 auto_edeeponet python scripts/train_auto.py
自回归 auto_deeponet_cnn python scripts/train_auto.py
自回归 resnet python scripts/train_auto.py
自回归 unet python scripts/train_auto.py
自回归 fno python scripts/train_auto.py

使用说明

1. OneCode 使用

可通过 OneCode 在线环境体验智能化一键式 AI4S 编程:

点击体验智能化一键式 AI4S 编程

2. 手动安装使用

硬件要求

  • 推荐使用 GPU 或 DCU 运行。
  • CPU 可以用于导入和小配置连通性验证,完整训练和推理速度较慢。
  • DCU 用户需要预先安装 DTK,建议使用 DTK 25.04.2 以上版本或与当前集群匹配的 OneScience 推荐版本。

下载模型包

modelscope download --model OneScience/CFDBench --local_dir ./CFDBench
cd CFDBench

安装运行环境

DCU环境

# 请首先激活DTK及CONDA
conda create -n onescience311 python=3.11 -y
conda activate onescience311
# 支持uv安装
pip install onescience[cfd-dcu] -i http://mirrors.onescience.ai:3141/pypi/simple/  --trusted-host mirrors.onescience.ai

GPU环境

# 请首先激活CONDA
conda create -n onescience311 python=3.11 -y libstdcxx-ng=12 libgcc-ng=12 gcc_linux-64=12 gxx_linux-64=12
conda activate onescience311
# 支持uv安装
pip install onescience[cfd-gpu] -i http://mirrors.onescience.ai:3141/pypi/simple/  --trusted-host mirrors.onescience.ai

训练数据介绍

OneScience 社区提供可供训练的 cfdbench 数据,用户可通过下述命令下载,并确认 config/config.yaml 中数据路径设置正确:

modelscope download --dataset OneScience/cfdbench --local_dir ./data

训练

自回归训练

默认配置为 root.model.name: fno,因此使用自回归入口:

python scripts/train_auto.py

切换其他自回归模型可修改 conf/config.yaml:

root:
  model:
    name: "auto_ffn"

非自回归训练

python scripts/train.py --model deeponet

训练权重

本仓库在weights/文件夹内提供 CFDBench 下的模型预训练权重,所有权重即将上传。

推理与可视化

推理脚本会按当前模型名自动选择任务类型,并默认读取:

./weight/<model.name>.pt

默认 FNO 推理与可视化

python scripts/inference.py
python scripts/result.py

非自回归模型推理同样通过参数选择:

python scripts/inference.py --model ffn
python scripts/result.py --model ffn

OneScience 官方信息

平台 OneScience 主仓库 Skills 仓库
Gitee https://gitee.com/onescience-ai/onescience https://gitee.com/onescience-ai/oneskills
GitHub https://github.com/onescience-ai/OneScience https://github.com/onescience-ai/oneskills

引用与许可证