HPC软件使用之ANSYS Fluent

news2025/5/16 12:48:36

目录

一、软件介绍

二、脚本编写

2.1 jou文件

2.2 slurm脚本文件

三、作业提交及查看

四、案例演示

4.1 网格模型

4.2 jou脚本

4.3 slurm脚本

4.4 计算

4.5 结果查看


        从本文开始,我们将介绍如何在超级计算机上使用科学计算、工程仿真计算软件开展计算,包括计算流体力学、有限元、热分析、电磁、多物理场耦合、分子动力学等,涵盖流体力学、固体力学、热力学、电磁等领域。各软件内容主要包括软件介绍脚本编写作业提交及查看案例演示等。所有软件均采用命令行的形式进行使用

一、软件介绍

        ANSYS Fluent是全球领先的通用计算流体力学软件,主要用于模拟从不可压缩到高度可压缩范围内的各种复杂流动,它在转捩与湍流、热传递与相变、化学反应、燃烧、多相流等多方面有广泛应用,具有丰富的物理模型、数值方法和非常强大的前后处理功能。Fluent拥有多种多相流模型及传热燃烧模型,可以应用于从可压到不可压、低速到高超音速、单相流到多相流、化学反应、燃烧、气固混合等几乎所有与流体相关的领域。用户可对显式或隐式差分格式进行选择,从而在计算速度、稳定性和精度方面达到最佳。同时,经过大量算例验证,Fluent稳定性好,计算精度高。

        软件主要应用于航空航天、汽车设计、船舶制造、电子电气、化工机械、生物医药等领域。

二、脚本编写

        以命令行模式使用软件,需要编写软件脚本.jou文件、slurm脚本文件。

2.1 jou文件

        jou脚本文件主要用于fluent软件计算流程控制。其中以“;”开头的语句为注释语句,大致的计算流程为:读取case文件→读入data→设置迭代步数→计算结果case保存→退出

        ①稳态计算  run.jou

;算例输入文件
/file/read-case "steady.cas"
;从头开始计算,初始化
/solve/initialize/initialize-flow
;数据输入文件(如果从头开始计算,则无需该语句)
/file/read-data "steady.dat"
;设置迭代步数
/solve/iterate 1000
;保存结果case文件
/file/write-case "results.cas"
;保存结果data文件
/file/write-data "results.dat"
;退出
exit
yes

        ②瞬态计算  run.jou

;算例输入文件
/file/read-case "unsteady.cas"
;从头开始计算,初始化
/solve/initialize/initialize-flow
;数据输入文件(如果从头开始计算,则无需该语句)
/file/read-data "unsteady.dat"
;每迭代100步保存一次
/file/auto-save/data-frequency 100
;时间步长为0.01s
/solve/set/time-step 0.01
;设置总迭代步数10000,每步迭代50次
/solve/dua-time-iterate  10000 50
;保存结果case文件
/file/write-case "results.cas"
;保存结果data文件
/file/write-data "results.dat"
;退出
exit
yes

        ③瞬态计算(包含UDF)  run.jou

;算例输入文件
/file/read-case "unsteady-UDF.cas"
;从头开始计算,初始化
/solve/initialize/initialize-flow
;数据输入文件(如果从头开始计算,则无需该语句)
/file/read-data "unsteady-UDF.dat"
;编译test.c UDF文件,c文件与cas、dat文件放在同一个目录下
/define/user-defined/compiled-function/compiler libudf yes test.c
;每迭代100步保存一次
/file/auto-save/data-frequency 100
;时间步长为0.01s
/solve/set/time-step 0.01
;设置总迭代步数10000,每步迭代50次
/solve/dua-time-iterate  10000 50
;保存结果case文件
/file/write-case "results-UDF.cas"
;保存结果data文件
/file/write-data "results-UDF.dat"
;退出
exit
yes

2.2 slurm脚本文件

        针对采用slurm作业调度系统的超算集群,需要通过编写slurm脚本文件进行作业提交。Fluent.slurm内容如下:

#!/bin/bash
#SBATCH -J Fluent                        #指定作业名称
#SBATCH -p test                          #指定分区队列
#SBATCH -N 2                             #指定节点数
#SBATCH -n 64                            #指定进程数
#SBATCH --ntasks-per-node=32             #指定单个节点使用多少核
#SBATCH --cpus-per-task=1                #指定单个核使用多少线程

export PATH=/path/your/fluent:$PATH        #添加Fluent软件路径

MACHINEFILE="nodes.$SLURM_JOB_ID"
srun -l /bin/hostname | sort -n | awk '{print $2}' > $MACHINEFILE

fluent 3ddp -g -mpi=intel -cnf=$MACHINEFILE -t $SLURM_NTASKS -slurm -i run.jou
#3d为三维单精度   3ddp为三维双精度   2d为二维单精度    2ddp为二维双精度

三、作业提交及查看

        采用sbatch命令提交Fluent作业。

sbatch Fluent.slurm

        使用squeue命令查看作业提交情况。

squeue

四、案例演示

        这里我们使用Fluent 2022R1对鼓风机进行仿真模拟。

4.1 网格模型

        采用双精度计算,总网格数为300万。

        Viscous Model采用Transition SST模型,参数设置如下:

4.2 jou脚本

        算例的run.jou脚本文件如下:

/file set-tui-version "20.1"
/file read-case "./air-blower.cas"
/define named-expressions edit "H" definition "123.9[m]" q
/solve iterate 100
parallel/time/usage
/file/write-case "results.cas"
/file/write-data "results.dat"
exit
yes

4.3 slurm脚本

        算例的Fluent.slurm脚本文件如下:

#!/bin/bash
#SBATCH -J Fluent                        
#SBATCH -p test                          
#SBATCH -N 4                            
#SBATCH -n 64                            
#SBATCH --ntasks-per-node=16             
#SBATCH --cpus-per-task=1                

export PATH=/path/your/fluent:$PATH        #添加Fluent软件路径

MACHINEFILE="nodes.$SLURM_JOB_ID"
srun -l /bin/hostname | sort -n | awk '{print $2}' > $MACHINEFILE

fluent 3ddp -g -mpi=intel -cnf=$MACHINEFILE -t $SLURM_NTASKS -slurm -i run.jou

4.4 计算

        使用sbatch提交作业:

sbatch Fluent.slurm

        迭代计算完成。

4.5 结果查看

        计算结果保存在results.cas文件中,可以将文件下载到本地,使用可视化软件进行结果查看。这里使用Fluent 2022R1进行查看。

湍动强度分布云图

速度分布云图

静压分布云图

速度流线分布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2376856.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

YOLO11解决方案之距离计算探索

概述 Ultralytics提供了一系列的解决方案,利用YOLO11解决现实世界的问题,包括物体计数、模糊处理、热力图、安防系统、速度估计、物体追踪等多个方面的应用。 测量两个物体之间的间距被称为特定空间内的距离计算,YOLO11使用两个边界框的中心…

论文学习_Precise and Accurate Patch Presence Test for Binaries

摘要:打补丁是应对软件漏洞的主要手段,及时将补丁应用到所有受影响的软件上至关重要,然而这一点在实际中常常难以做到,研究背景。因此,准确检测安全补丁是否已被集成进软件发行版本的能力,对于防御者和攻击…

Ascend的aclgraph(九)AclConcreteGraph:e2e执行aclgraph

1回顾 前面的几章内容探讨了aclgraph运行过程中的涉及到的关键模块和技术。本章节将前面涉及到的模块串联起来,对aclgraph形成一个端到端的了解。 先给出端到端运行的代码,如下: import torch import torch_npu import torchair import log…

c++从入门到精通(四)--动态内存,模板与泛型编程

文章目录 动态内存直接管理内存Shared_ptr类Unique_ptrWeak_ptr动态数组allocator类文本查询程序 模板与泛型编程定义模板函数模板类模板模板参数成员模板控制实例化 模板实参推断重载与模板可变参数模板模板特例化 动态内存 c中动态内存的管理是通过new和delete运算符来实现的…

寻找两个正序数组的中位数 - 困难

************* Python topic: 4. 寻找两个正序数组的中位数 - 力扣(LeetCode) ************* Give the topic an inspection. Do the old topic will give you some new sparks. Before that, I do some really good craetive things about my logo. …

国产密码新时代!华测国密 SSL 证书解锁安全新高度

在数字安全被提升到国家战略高度的今天,国产密码算法成为筑牢网络安全防线的关键力量。华测国密SSL证书凭借其强大性能与贴心服务,为企业网络安全保驾护航,成为符合国家安全要求的不二之选!​ 智能兼容,告别浏览器适配…

【金仓数据库征文】从云计算到区块链:金仓数据库的颠覆性创新之路

目录 一、引言 二、金仓数据库概述 2.1 金仓数据库的背景 2.2 核心技术特点 2.3 行业应用案例 三、金仓数据库的产品优化提案 3.1 性能优化 3.1.1 查询优化 3.1.2 索引优化 3.1.3 缓存优化 3.2 可扩展性优化 3.2.1 水平扩展与分区设计 3.2.2 负载均衡与读写分离 …

股指期货套期保值怎么操作?

股指期货套期保值就是企业或投资者通过持有与其现货市场头寸相反的期货合约,来对冲价格风险的一种方式。换句话说,就是你在股票市场上买了股票(现货),担心股价下跌会亏钱,于是就在期货市场上卖出相应的股指…

基于IBM BAW的Case Management进行项目管理示例

说明:使用IBM BAW的难点是如何充分利用其现有功能根据实际业务需要进行设计,本文是示例教程,因CASE Manager使用非常简单,这里重点是说明如何基于CASE Manager进行项目管理,重点在方案设计思路上,其中涉及的…

黑马k8s(七)

1.Pod介绍 查看版本: 查看类型,这里加s跟不加s没啥区别,可加可不加 2.Pod基本配置 3.镜像拉去策略 本地没有这个镜像,策略是Never,启动失败 查看拉去策略: 更改拉去策略: 4.启动命令 运行的是nginx、busv…

九、HQL DQL七大查询子句

作者:IvanCodes 日期:2025年5月15日 专栏:Hive教程 Apache Hive 的强大之处在于其类 SQL 的查询语言 HQL,它使得熟悉 SQL 的用户能够轻松地对存储在大规模分布式系统(如 HDFS)中的数据进行复杂的查询和分析…

RTSP 播放器技术探究:架构、挑战与落地实践

RTSP 播放器为什么至今无法被淘汰? 在实时视频传输领域,RTSP(Real-Time Streaming Protocol)作为最基础、最常见的协议之一,至今依然被广泛用于监控设备、IP Camera、视频服务器等设备中。然而,要构建一个稳…

实验5 DNS协议分析与测量

实验5 DNS协议分析与测量 1、实验目的 了解互联网的域名结构、域名系统DNS及其域名服务器的基本概念 熟悉DNS协议及其报文基本组成、DNS域名解析原理 掌握常用DNS测量工具dig使用方法和DNS测量的基本技术 2、实验环境 硬件要求:阿里云云主机ECS 一台。 软件要…

【鸿蒙开发】性能优化

语言层面的优化 使用明确的数据类型,避免使用模糊的数据类型,例如ESObject。 使用AOT模式 AOT就是提前编译,将字节码提前编译成机器码,这样可以充分优化,从而加快执行速度。 未启用AOT时,一边运行一边进…

2025-05-13 学习记录--Python-循环:while循环 + while-else循环 + for循环 + 循环控制

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻 一、循环 ⭐️ (一)、while循环 🍭 初始条件设置 -- 通常是重复执行的 计数器while 条件(判…

Vue3学习(组合式API——生命周期函数基础)

目录 一、Vue3组合式API中的生命周期函数。 &#xff08;1&#xff09;各阶段生命周期涉及函数简单介绍。 <1>创建挂载阶段的生命周期函数。 <2>更新阶段的生命周期函数。 <3>卸载阶段的生命周期函数。 <4>错误处理的生命周期函数。 &#xff08;2&…

计量——检验与代理变量

1.非嵌套模型的检验 1Davidson-Mackinnon test 判断哪个模型好 log&#xff08;y&#xff09;β0β1x1β2x2β3x3u log&#xff08;y&#xff09;β0β1log&#xff08;x1&#xff09;β2log&#xff08;x2&#xff09;β3log&#xff08;x3&#xff09;u 1.对log&#xff…

HTML-实战之 百度百科(影视剧介绍)

本系列可作为前端学习系列的笔记&#xff0c;代码的运行环境是在HBuilder中&#xff0c;小编会将代码复制下来&#xff0c;大家复制下来就可以练习了&#xff0c;方便大家学习。 系列文章目录 HTML-1.1 文本字体样式-字体设置、分割线、段落标签、段内回车以及特殊符号 HTML…

计算机视觉---目标追踪(Object Tracking)概览

一、核心定义与基础概念 1. 目标追踪的定义 定义&#xff1a;在视频序列或连续图像中&#xff0c;对一个或多个感兴趣目标&#xff08;如人、车辆、物体等&#xff09;的位置、运动轨迹进行持续估计的过程。核心任务&#xff1a;跨帧关联目标&#xff0c;解决“同一目标在不同…

Weblogic SSRF漏洞复现(CVE-2014-4210)【vulhub靶场】

漏洞概述&#xff1a; Weblogic中存在一个SSRF漏洞&#xff0c;利用该漏洞可以发送任意HTTP请求&#xff0c;进而攻击内网中redis、fastcgi等脆弱组件。 漏洞形成原因&#xff1a; WebLogic Server 的 UDDI 组件&#xff08;uddiexplorer.war&#xff09;中的 SearchPublicR…