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

相关文章

Java中使用Hutool进行AES加密解密的方法举例

《Java中使用Hutool进行AES加密解密的方法举例》AES是一种对称加密,所谓对称加密就是加密与解密使用的秘钥是一个,下面:本文主要介绍Java中使用Hutool进行AES加密解密的相关资料... 目录前言一、Hutool简介与引入1.1 Hutool简介1.2 引入Hutool二、AES加密解密基础

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

Pyserial设置缓冲区大小失败的问题解决

《Pyserial设置缓冲区大小失败的问题解决》本文主要介绍了Pyserial设置缓冲区大小失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录问题描述原因分析解决方案问题描述使用set_buffer_size()设置缓冲区大小后,buf

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

Redis实现延迟任务的三种方法详解

《Redis实现延迟任务的三种方法详解》延迟任务(DelayedTask)是指在未来的某个时间点,执行相应的任务,本文为大家整理了三种常见的实现方法,感兴趣的小伙伴可以参考一下... 目录1.前言2.Redis如何实现延迟任务3.代码实现3.1. 过期键通知事件实现3.2. 使用ZSet实现延迟任务3.3

idea maven编译报错Java heap space的解决方法

《ideamaven编译报错Javaheapspace的解决方法》这篇文章主要为大家详细介绍了ideamaven编译报错Javaheapspace的相关解决方法,文中的示例代码讲解详细,感兴趣的... 目录1.增加 Maven 编译的堆内存2. 增加 IntelliJ IDEA 的堆内存3. 优化 Mave

Java String字符串的常用使用方法

《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St

Spring Security方法级安全控制@PreAuthorize注解的灵活运用小结

《SpringSecurity方法级安全控制@PreAuthorize注解的灵活运用小结》本文将带着大家讲解@PreAuthorize注解的核心原理、SpEL表达式机制,并通过的示例代码演示如... 目录1. 前言2. @PreAuthorize 注解简介3. @PreAuthorize 核心原理解析拦截与

一文详解JavaScript中的fetch方法

《一文详解JavaScript中的fetch方法》fetch函数是一个用于在JavaScript中执行HTTP请求的现代API,它提供了一种更简洁、更强大的方式来处理网络请求,:本文主要介绍Jav... 目录前言什么是 fetch 方法基本语法简单的 GET 请求示例代码解释发送 POST 请求示例代码解释

Feign Client超时时间设置不生效的解决方法

《FeignClient超时时间设置不生效的解决方法》这篇文章主要为大家详细介绍了FeignClient超时时间设置不生效的原因与解决方法,具有一定的的参考价值,希望对大家有一定的帮助... 在使用Feign Client时,可以通过两种方式来设置超时时间:1.针对整个Feign Client设置超时时间