Fluent固体运动的设置方法(1)

2024-06-15 23:28

本文主要是介绍Fluent固体运动的设置方法(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 概述

固体运动是某些CFD问题中必须要考虑的因素,如风扇的旋转。相关问题可分类如下:

问题类型是否为刚体运动规律是否已知
无特定称呼YY
六自由度运动问题YN
流固耦合问题NN

在 Fluent 中,有多种方法表征固体运动,包括:

  • MRF(multiple reference frame,多重坐标系)
  • 滑移网格(sliding mesh)
  • 动网格(dynamic mesh)
  • 重叠网格(overset mesh)

本文作为第一部分,仅讲述 MRF 和滑移网格的设置。动网格和重叠网格部分另外讲述。

2 应用场景

MRF和滑移网格方法通常应用于绕轴旋转、平动等运动规律简单的问题,工程中以绕轴旋转应用较多。

MRF方法可支持稳态仿真和瞬态仿真,滑移网格方法仅支持瞬态仿真。

3 网格划分

计算域通常计算域包括静止域和运动域两个部分。运动域指运动固体附近区域被单独分割出来的区域,静止域为计算域剩余部分。

离心机等整体运动的场景,可将整个计算域作为运动域,无需对静止域建模。

如图所示搅拌器模型,黄色部分为搅拌器叶片附近的区域被单独切割出来作为旋转域,灰色部分为静止域。

4 计算设置

4.1 MRF设置

在Fluent中,需要在运动域设置面板勾选“frame motion”选项,并设置运动规律。

旋转的定义需要同时定义旋转轴和转速。

旋转轴是三维空间的直线,其定义需要方向向量和经过的点两类信息。方向向量在“rotation-axis direction”部分设置,其可以为任意长度的向量,如(0,0,1)和(0,0,2)对于定义旋转轴方向是等效的。经过的点在“rotation-axis origin”部分设置,可以为旋转轴上的任意点。

旋转方向采用右手螺旋法则确定,旋转轴的方向向量符号对旋转方向有影响。例如,(0,0,1)和(0,0,-1)所表示的旋转方向是相反的。

由于MRF方法不涉及网格变化,无需额外设置旋转域和静止域区域之间的网格交界面,可直接使用共节点网格。

4.2 滑移网格设置

在 Fluent 中,需要在运动域设置面板勾选“mesh motion”选项,并设置运动规律。

面板上运动规律的设置内容和MRF相同。

由于运动域网格随时间变化,需要创建网格交界面(mesh interface)以进行数据插值,且不可使用共节点网格。

对已有的MRF设置,Fluent命令“mesh/modify-zones/mrf-to-sliding-mesh”可自动转换为滑移网格设置。

4.3 边界条件设置

Fluent中默认的壁面边界条件为无滑移边界条件,且相对于从属的区域静止,不是绝对静止。默认设置中,壁面的边界速度由区域的运动规律设置决定。

由于几何特征限制等原因,很难保证各个壁面和所属区域的运动规律相同。对于部分壁面需要单独设置运动速度,使其和物理实际一致。

在设置界面,建议壁面的运动规律基于绝对坐标系定义,避免出错。

5 后处理

后处理中,Fluent速度可分为绝对速度和相对速度两类。速度的参考系为绝对坐标系,相对速度的参考系为运动坐标系。两者对比如图所示。

6 MRF和滑移网格的区别

低转速下,MRF和滑移网格计算结果较接近,转速越高两者偏差越大。

若需要获得精确结果和流动特征的周期性波动规律,可先用MRF运行稳态仿真获得初步结果,再用滑移网格运行瞬态仿真,且MRF的稳态结果作为瞬态仿真初始条件。

这篇关于Fluent固体运动的设置方法(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1064884

相关文章

C++初始化数组的几种常见方法(简单易懂)

《C++初始化数组的几种常见方法(简单易懂)》本文介绍了C++中数组的初始化方法,包括一维数组和二维数组的初始化,以及用new动态初始化数组,在C++11及以上版本中,还提供了使用std::array... 目录1、初始化一维数组1.1、使用列表初始化(推荐方式)1.2、初始化部分列表1.3、使用std::

oracle DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

Go路由注册方法详解

《Go路由注册方法详解》Go语言中,http.NewServeMux()和http.HandleFunc()是两种不同的路由注册方式,前者创建独立的ServeMux实例,适合模块化和分层路由,灵活性高... 目录Go路由注册方法1. 路由注册的方式2. 路由器的独立性3. 灵活性4. 启动服务器的方式5.

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

Spring排序机制之接口与注解的使用方法

《Spring排序机制之接口与注解的使用方法》本文介绍了Spring中多种排序机制,包括Ordered接口、PriorityOrdered接口、@Order注解和@Priority注解,提供了详细示例... 目录一、Spring 排序的需求场景二、Spring 中的排序机制1、Ordered 接口2、Pri

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

Idea实现接口的方法上无法添加@Override注解的解决方案

《Idea实现接口的方法上无法添加@Override注解的解决方案》文章介绍了在IDEA中实现接口方法时无法添加@Override注解的问题及其解决方法,主要步骤包括更改项目结构中的Languagel... 目录Idea实现接China编程口的方法上无法添加@javascriptOverride注解错误原因解决方

MySql死锁怎么排查的方法实现

《MySql死锁怎么排查的方法实现》本文主要介绍了MySql死锁怎么排查的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录前言一、死锁排查方法1. 查看死锁日志方法 1:启用死锁日志输出方法 2:检查 mysql 错误

Java通过反射获取方法参数名的方式小结

《Java通过反射获取方法参数名的方式小结》这篇文章主要为大家详细介绍了Java如何通过反射获取方法参数名的方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、前言2、解决方式方式2.1: 添加编译参数配置 -parameters方式2.2: 使用Spring的内部工具类 -