当前位置: 首页 > article >正文

Linux下OpenCFD-SCU源码编译安装及使用

目录

软件介绍

基本依赖

一、源码下载

二、解压缩

三、编译安装

四、算例测试


软件介绍

        OpenCFD-SCU是基于中国科学院力学研究所李新亮研究员自主开发的高精度计算流体力学软件OpenCFD-SC(Open Computational Fluid Dynamic code for Scientific Computation)进行异构移植优化,软件针对可压缩NS方程采用有限差分法离散求解,数值精度高。无粘项的差分离散除了常规的线性差分格式和常见的激波捕捉格式外,还集成了自主构造的带有迎风性质的混合格式,兼具高精度、低耗散、高鲁棒性;粘性项离散采用中心型差分格式,时间推进方法采用显式TVD型三步三阶龙格库塔(R-K)方法,能够最大程度保证计算程序的并行可扩展性。软件支持GPU加速,可以在英伟达CUDA、AMD的ROCM异构计算平台上执行并行计算。

基本依赖

1、gcc/g++ 编译器

2、Fortran 编译器

3、make自动化编译工具

4、cmake跨平台安装工具

5、python(版本≥3.8)

6、MPI

7、DTK 开发工具

一、源码下载

   目前软件完全开源,版本V1.00,可通过下面的链接进行源码访问。

OpenCFD-IMECH/OpenCFD-SCU: GPU 高精度有限差分CFDhttps://github.com/OpenCFD-IMECH/OpenCFD-SCU/danggl / OpenCFD-SCU · GitLabhttps://developer.sourcefind.cn/codes/danggl/opencfd-scu

二、解压缩

三、编译安装

       编译平台:海光CPU+DCU

       编译环境:MPI(hpcx-2.4.1)、ROCM(dtk-23.04)

        ①源码文件夹结构为:

        其中,src文件夹存放程序源码文件:

        src_hip文件夹存储着使用hipify-perl将CUDA代码转换为HIP代码的源码文件。

        head文件夹存放源程序的头文件:

        head_hip文件夹存储着使用hipify-perl将CUDA代码转换为HIP代码的头文件。

        benchmark_comp文件夹为基准测试算例。

        ②编译

        修改makefile中"MPI_PATH”变量值,对应用户安装环境中MPI的路径;修改makefile中“DEV_PATH”变量值,对应用户安装环境中HIP的路径。

        执行“make”命令,开始编译。安装完成后,在当前路径下生成可执行程序“opencfd-scu.out”。

四、算例测试

        使用程序自带算例“超声速压缩折角流动”进行测试,来流速度2.9马赫,坡面角24度。

        算例位于benchmark_comp文件夹中。

        按照README.md中的顺序依次编译网格生成工具Mesh、计算初始化工具init,并生成网格、执行计算初始化。

        执行计算。

./opencfd-scu.out

        计算中。

        编译后处理工具Post,执行后处理,将结果文件OCFD00001000.dat转换为tecplot支持的文件data07.dat。使用Tecplot软件进行结果查看。


http://www.kler.cn/a/592073.html

相关文章:

  • C++反向迭代器
  • Unity导出WebGL
  • $.ajax的contentType设置及对应后端数据获取方式
  • 如何取消GitHub Copilot订阅付费?
  • 制造业数字化转型,汽车装备制造企业数字化转型案例,智能制造数字化传统制造业数字化制造业数字化转型案例
  • PyTorch深度学习框架60天进阶学习计划 - 第22天:命名实体识别实战
  • <link>标签在网页中的常见用途及与<script>标签引入资源方式的区别
  • Nodejs使用redis
  • 【QT】编写 QT Hello World程序 对象树 Qt 编程事项
  • Docker 镜像优化:如何避免重复安装软件,加速服务的构建与部署
  • turfijs合并相邻或者相交多边形
  • 华为手机新品将采用新屏幕形态,3月20日揭晓谜底
  • Qt | 网络编程+面试题
  • Linux主机持久化技术
  • Qwen2.5-VL 开源视觉大模型,模型体验、下载、推理、微调、部署实战
  • VS Code + Git 分支操作指南(附流程图)
  • 解决 HTTP 请求中的编码问题:从乱码到正确传输
  • Redis 使用入门与进阶指南
  • 《算法笔记》9.2小节——数据结构专题(2)->二叉树的遍历 问题 A: 复原二叉树(同问题 C: 二叉树遍历)
  • 【MySQL数据库】多表查询(笛卡尔积现象,联合查询、内连接、左外连接、右外连接、子查询)-通过练习快速掌握法