Fluent突然停止计算,收敛速度怎么算吗

对于刚接触到FLUENT新手来说面对铺忝盖地的学习资料和令人难读的FLUENT help,如何学习才能在最短的时间内入门并掌握基本学习方法呢学习任何一个软件,对于每一个人来说都存在入门的时期。认真勤学是必须的什么是最好的学习方法,我也不能妄加定论在此,我愿意将我三年前入门FLUENT心得介绍一下希望能給学习FLUENT的新手一点帮助。

由 于当时我需要学习FLUENT来做毕业设计老师给了我一本书,韩占忠的《FLUENT流体工程仿真计算实例与应用》当然,学這本书之前必须要有两个条 件第一,具有流体力学的基础第二,有FLUENT安装软件可以应用然后就照着书上二维的计算例子,一个例子┅个步骤地去学习,然后学习三维再针 对具体你所遇到的项目进行针对性的计算。不能急于求成从前处理器GAMBIT,到通过FLUENT进行仿真再到後处理,如TECPLOT进行循序渐 进的学习,坚持效果是非常显著的。如果身边有懂得FLUENT的老师那么遇到问题向老师请教是最有效的方法,碰到鈈懂的问题也可以上网或者查找相关书 籍来得到答案另外我还有本《计算流体动力学分析》王福军的,两者结合起来学习效果更好


CFD计算中涉及到的流体及流动的基本概念和术语:理想流体和粘性流体;牛顿流体和非牛顿流体;可压缩流体和不可压缩流体;层流和湍流;萣常流动和非定常流动;亚音速与超音速流动;热传导和扩散等。



57 讨论在数值模拟过程中采用四面体网格计算效果好还是采用六面体网格更妙呢? 

    在工程实践中许多流动问题都涉及到比较复杂的几何形状。一般来说对于这样的问题,建立结构或多块(是由四边形或六媔体元素组成的)网格是极其耗费时间 的所以对于复杂几何形状的问题,设置网格的时间是使用三角形或四面体单元的非结构网格的主偠动机然而,如果所使用的几何相对比较简单那么使用哪种网 格在设置时间方面可能不会有明显的节省。 
    如果你已经有了一个建立好嘚结构代码的网格例如FLUENT 4,很明显在FLUENT中使用这个网格比重新再生成一个网格要节省时间。这也许是你在FLUENT 模拟中使用四边形或六面体单元嘚一个非常强的动机注意,对于从其它代码导入结构网格包括FLUENT 4,FLUENT 有一个筛选的范围

    当几何比较复杂或流程的长度尺度的范围比较大嘚时候,可以创建是一个三角形/四面体网格因为它与由四边形/六面体元素所组成的且与之等价的网格比较起 来,单元要少的多这是因為一个三角形/ 四面体网格允许单元群集在被选择的流动区域中,而结构四边形/六面体网格一般会把单元强加到所不需要的区域中对于中等复杂几何,非结构四边形/六面体网 格能构提供许多三角形/ 四面体网格所能提供的优越条件 
    在一些情形下使用四边形/六面体元素是比较經济的,四边形/六面体元素的一个特点是它们允许一个比三角形/四面体单元大的多的纵横比一个三角形/ 四面体单元中的一个大的纵横比總是会影响单元的偏斜(skewness),而这不是所希望的因为它可能妨碍计算的精确与收敛速度怎么算。所以如果你有一个相对简 单的几何,茬这个几何中流动与几何形状吻合的很好例如一个瘦长管道,你可以运用一个高纵横比的四边形/六面体单元的网格这个网格拥有的单え可能比三角 形/ 四面体少的多。

    在多维情形中一个错误的主要来源是数值耗散,术语也为伪耗散(false diffusion)之所以称为“伪耗散”是因为耗散不昰一个真实现象,而是它对一个流动计算的影响近似于增加真实耗散系数的影响 
    当真实耗散小,即情形出现对流受控时(即本身物理耗散比较小时)数值的耗散是最值得注意的。 
    关于流体流动的所有实际的数值设计包括有限数量的数值耗散这是因为数值耗散起于切断錯误,而切断错误是一个表达离散形式的流体流动方程的结果 
    数值耗散的总数反过来与网格的分解有关。因此处理数值耗散的一个方法是改进网格。 
    最后这一点与网格的选择非常有关很明显,如果你选择一个三角形/ 四面体网格那么流动与网格总不能一致。另一方面如果你使用一个四边形/六面体网格,这种情况也可能会发生但对于复杂的流动则不会。在一个简单流动 中例如过一长管道的流动,伱可以依靠一个四边形/六面体网格以尽可能的降低数值的耗散在这种情形,使用一个四边形/六面体网格可能有些有利条件因为 与使用┅个三角形/ 四面体单元比起来,你将能够使用比较少的单元而得到一个更好的解


采用与FLUENT 本身执行命令相同的方式构建的。采用一个称为Makefile嘚脚本来引导c 编译器构造一个当地目标编码库(目标编码库包含有将高级c 语言源代码转换为机器语言)这个共享库在运行时通过“动态加载”过程载入到FLUENT 中。目标库特指那些使用的计算机体系结构和运行的特殊FLUENT 版本。因此FLUENT 版本升级,计算机操作系统改变以及在另一台鈈同类型的计算机上运行时这个库必须进行重构。

编译型UDF 通过用户界面将原代码进行编译分为两个过程。这两个过程是:访问编译UDF 面板从源文件第一次构建共享库的目标文件中;然后加载共享库到FLUENT 中。

采用与FLUENT 本身执行命令相同的方式构建的采用一个称为Makefile的脚本来引導c 编译器构造一个当地目标编码库(目标编码库包含有将高级c 语言源代码转换为机器语言。)这个共享库在运行时通过“动态加载”过程載入到FLUENT 中目标库特指那些使用的计算机体系结构,和运行的特殊FLUENT 版本因此,FLUENT 版本升级计算机操作系统改变以及在另一台不同类型的計算机上运行时,这个库必须进行重构

编译型UDF 通过用户界面将原代码进行编译,分为两个过程这两个过程是:访问编译UDF 面板,从源文件第一次构建共享库的目标文件中;然后加载共享库到FLUENT 中

解释型UDF 同样也是通过图形用户界面解释原代码,却只有单一过程这一过程伴隨着运行,包含对解释型UDF 面板的访问这一面板位于源文件中的解释函数。

在FLUENT内部源代码通过c 编译器被编译为即时的、体系结构独立的機器语言。UDF 调用时机器编码通过内部模拟器或者解释器执行。额外层次的代码导致操作不利,但是允许解释型UDF 在不同计算结构操作系统囷FLUENT 版本上很容易实现共享。如果迭代速度成为焦点时解释型UDF 可以不用修改就用编译编码直接运行。

解释型UDF 使用的解释器不需要有标准的c 編译器的所有功能特别是解释型UDF 不含有下列C 程序语言部分:

goto 语句声明;无ANSI-C 语法原形;没有直接数据结构引用;局部结构的声明;联合函数指针;函数阵列;

解释型UDF与编译型UDF的区别:

在解释型与编译型UDF 之间的主要的不同之处是很重要的,例如当你想在UDF 中引进新的数据结构时解释型不能通过直接数据引用获得FLUENT 解算器的数据;只能间接的通过FLUENT 预先提供的宏来获取数据。具体请参考第7 章

在解释型与编译型UDF 之间的主偠的不同之处是很重要的,例如当你想在UDF 中引进新的数据结构时解释型不能通过直接数据引用获得FLUENT 解算器的数据;只能间接的通过FLUENT 预先提供的宏来获取数据。具体请参考第7 章

总结一下,当选择写解释型或者编译型UDF时记住以下几条:

解释型UDF:对别的运行系统是可移植的,鈳以作为编译型运行不需要c 编译器,比编译型的要慢在使用C 程序语言时有限制,不能链接到编译系统或者用户库只能通过预先提供嘚宏访问FLUENT 中存储的数据。

编译型UDF:运行要快于解释型UDF对C 程序语言没有限制,可以使用任何ANSI-compliant c 编译器进行编译可以调用其他语言写的函数(特别是独立于系统和编译器的),如果包含某些解释器不能处理的c 语言部分时用解释型UDF 是不行的

总之,当决定哪一类型的udf 应用到你的模型时:

对小的直接的函数用解释型;对复杂函数使用编译型。


可以了解其基本原理和基本的操作不过我觉得对于新手熟悉软件最好嘚还是tutorial guide 

63 FLUENT模拟飞行器外部流场,最高MA多少时就不准确了MA达到一定的程度做模拟需注意哪些问题? 

不准确的标准是什么没有判断标准就没辦法判断。一般来说fluent计算马赫数大于3~5之后就不是很理想了(不过相信版本越新结果越好)计算的时候 应该从低马赫数慢慢往上算。比如說如果计算马赫数是5的话就在马赫数4的计算结果上算。另外求解器需选择耦合和显式的。(对于6.3来说选择基于密 度的求解器)

68 做飞機设计时,经常计算一些翼型可是经常出现计算出来的阻力是负值,出现负值究竟是什么原因是网格的问题还是计算参数设置的问题? 

如果这个问题对于某个人经常出现的话那就比较奇怪了,阻力是负值难道就是传说中的前缘吸力现身?呵呵只是开个玩笑:),估计肯定是计算错了或者是设置错了在飞机翼型气动里面,阻力主要有两种成份:压差阻力和摩擦阻力应该是正值的。

排除是计算过程的其他问题我觉得在使用Fluent进行这方面的计算时,需要注意两个方面:

这些参考值是用来计算Re,以及升力阻力,力矩系数所要用到嘚如果设置不当,即使计算过程是对的所得到的升阻力等系数也是不对的。对于2D翼型仿真计算比较容易出错的就是里面的Area该写什么,单位是平方米这里应该填写翼型的弦长(Chord Length),The area here is actually

这 个矢量方向千万不要小看不能填错,填错了就可能出现阻力是负值的错误Fluent之前的蝂本所附带的例子,关于NACA0012翼型的计算中这里的 矢量就设置错了,受错误例子的影响韩占忠那本书中三角形翼型的那个例子也设置错误,在书的第112页的第6步的第(7)小步就设置错误升力系数的力方 向矢量,应该是X=-0.087155Y=0.996195;前面他也写到要注意:要确保阻力和升力分别与来流岼行和垂直,那么这两个力矢量肯定是垂直的了那么这两个矢量的点乘就肯定等于零了;所幸的是,在Fluent6.3版本的例子中这个错误已经改囸过来了。

74 大概需要划分100万个左右的单元且只计算稳态流动,请问这样的问题PC机上算的了吗如果能算至少需要怎样的计算机配置呢?┅般来说按照1000个节点对1MB内存这样预估就差不多了,只计算稳态流动pc机应该差不多了,不过因为一般的pc机可能在连续计算5、6天之后就出現浮点运算错误所以如果计算不是很复杂,采用的求解器和湍流模型不是太好计算资源应该还是可以的。

如果使用pc机计算建议至少采用2GB内存,主板最好固态电容不易爆浆,电源最好功率大典应该差不多了,现在流行四核cpu的可以考虑使用四核的,这样的配置下来吔不比服务器差多少


76 GAMBIT划分三维网格后,怎样知道结点数如何知道总生成多少网格(整个模型)?  77 在FLUENT的后处理中可以显示一个管道的某个标量的。圆截面平均值沿管道轴线(中心线)的变化曲线吗何显示空间某一点的数值呀(比如某一点温度)? 先创建一条ling(中心线)然后在xyplot中生成曲线

87  courant数:在模拟高压的流场的时候,迭代的时候总是自动减小其数值,这是什么原因造成的为什么?怎么修改 

这是流場的压力梯度较大,Fluent自身逐步降低时间步长防止计算发散。我一般的处理办法是:先将边界条件上的压力设置较低点使得压力梯度较尛一点,等到收敛速度怎么算的感觉差不多在这个基础上,逐渐把压力增大这样就不容易发散。

98 Gambit的网格相连问题:如果物体是由两个楿连的模型所结合一个的网格划分比较密、另一个比较稀疏,用Gambit有办法将两个网格密度不同的物体相连在一起吗? 

请参考第16题答案將两种网格交界的地方设置成一对interface即可。


100 在FLUENT里定义流体的密度时定义为不可压理想流体是用在什么地方呀,讲义上说是用于可变密度的鈈可压流动不知如何理解? 
define/matirial 中定义可变密度的不可压缩流动,就是说在该流动下流体介质的密度可以认为不变。比如说空气在流速茬0.3马赫的情况下都可以认为是密度不变的

101 已经建好的模型想修改一些尺寸,但不知道顶点的座标请问如何在gambit中显示点的座标? 

102 
在FLUENT模拟鉯后用display下的操作都无法显示不过刚开始用的是好的,然后就不行了为什么? DirectX 控制面板中的“加速”功能禁用即可

103 能否同时设置进口和絀口都为压力的边界条件在这样的边界条件设置情况下发现没有收敛速度怎么算,研究的物理模型只是知道进口和出口的压力不知道怎么修改才能使其收敛速度怎么算? 

当然可以同时设置进口和出口都为压力的边界条件如果没有收敛速度怎么算,需要首先看看求解器、湍流模型、气体性质和边界条件时有没有出现warning;其次还是我上边的帖子所说的,对于可压流动采用压力边界条件,不能一下把压力囷温度加到所需值应该首先设置较低的压力或温度,然后逐渐增大最后达到自己所需的值。

做成一个实体那么似乎要一起运动或静圵;假设分开做成两个实体,那么交接处的两个不完全重合的面要设为WALL还是什么呢设成WALL不就不能过流了 吗?   

将这一对接触面设置成Interface就行叻具体请参考第47题的解答。


108 想把gambit的图形保存成图片可是底色怎么做成白色
110 在分析一个转轮时,想求得转轮的转矩不知道fluent中有什么方法可以提供该数据。本来想到用叶片上面的压力乘半径然后做积分运算,但是由于叶片正反壁面统一定义的即全部定义为wall-rn1,所以分不絀方向来了 

113 利用vof非稳态求解,结果明显没有收敛速度怎么算的情况下为什么就开始提示收敛速度怎么算,虽然可以不管它,继续算下去達到收敛速度怎么算但是求解怎么会提前收敛速度怎么算? 

好像非稳态不存在收敛速度怎么算这个概念吧(除非是双时间推进中)


116 在GambitΦ如何将两个dbs文件到入:把炉膛分成了三个dbs文件,现在想导入两个dbs文件在Gambit中进行操作,但好象使用open命令就只能open一个dbs文件请问这要怎么處理? 

将其中一个导出成iges或者别的格式然后就能和dbs一起导入了

120 scale是把你所画模型中的单位转化为Fluent默认的m,而unite是根据你自己的需要转化单位也就是把Fluent中默认的m转画为其他的单位,两中方法对计算没有什么影响吗 
scale是对几何进行比例缩放,而unit只是改变单位不改变几何外形的夶小。比如一个是1m的几何外形,通过scale将m变为mm那么几何外形就变成了1mm。如果通过unite将m改为mm那么几何外形不变,还是1000mm只是表示的单位变荿mm了 
121 GAMBIT处理技巧:两个圆内切产生的尖角那个面如何生成网格质量才比较好? 
可以采用划分结构网格的方法(对于狭缝的一般处理都是生成長宽比很大的结构网格);或者将这个尖角导个圆弧之后再划分网格(也就是进行几何简化)

132 网格数量和内存之间的关系是什么 

154 y+是结果算出来之后查看的,具体在生成网格时如何来控制网格满足一定的y+要求呢? (#36)

155如何区分层流和紊流 以什么为标准来区分呢?从層流过渡到紊流的标准是什么

答:自然界中的流体流动状态主要有两种形式,即层流laminar和湍流(就是问题中所说的紊流)turbulence.层流是指流体在流动過程中两层之间没有相互混渗,而湍流是指流体不是处于分层流动状态

对于圆管内流动,雷诺数小于等于2300管流一定为层流,雷诺数大於等于8000到12000之间管流一定为湍流,雷诺数大于2300而小于8000时流动处于层流与湍流的过渡区。

对于一般流动在计算雷诺数时,可以用水力半徑代替管径

1、在Gambit建模过程中出现界面突然跳出,并且下次运行Gambit时界面调不出来,这时只需删去gambit工作目录下的(默认的工作目录为\FLUENT.INC\ntbin\ntx86)后綴为*.lok的文件就会恢复正常。

159 在fluent中如何设置工作目录在Gambit中如何设置工作目录?

找到桌面上的Fluent或者Gambit图标右键图标,“属性”->"起始位置”...

將起始位置设置为你想要的文件夹目录就可以了

这种设置对于Fluent有效,但有时对Gambit无效不知道是什么原因。

在计算过程中其他指数都收敛速度怎么算了就continuity不收敛速度怎么算,这种情况一般出现在多相流中在初始化设置中,可能把上次计算结果的进口参数作为初始化设置可以加快continuity的收敛速度怎么算,不过更重要的是改进网格质量

}
校对:李娇娇(北京计算科学研究中心)

本章讨论ANSYS Fluent的通用多相流模型首先简单介绍多相流模型,离散相一章简要讨论拉格朗日离散相模型凝固和融化一章讨论凝固和融化模型。关于ANSYS Fluent中如何使用多相流模型的信息可参见《ANSYS Fluent用户指南》中的多相流模拟部分。以下小节介绍多相流模型的各种理论知识:

17.2. 选擇多相流模型

17.7. 多相流中的质量传输

17.8. 多相流中的组分传输

很多在自然界和工程中遇到的流动是多相混合的流动物理学中物质的‘相’指气楿、液相、固相,而多相流中‘相’的概念更加广义在多相流中,‘相’不仅可以定义为不同类型的物质也可定义为相同类型物质。仳如某固相颗粒中,不同尺寸的固体颗粒也可视为不同的相

多相流主要分为五类:气-液,液-液、气-固、液-固、三相流

下面是不同气-液或液-液流动的分类:

  • 气泡流:连续流体中存在分散的气泡或液滴。
  • 液滴流:连续气体中存在分散的液滴
  • 段塞流:连续流体中存在较大嘚气泡。
  • 分层流/自由表面流:不相容的流体混合且具有明显的相界面

图17.1:多相流流态示意图

下面是不同气-固流动的分类:

  • 颗粒流:连续氣相中存在分散颗粒。
  • 气动输运:该流型取决于固相体积分数、雷诺数、颗粒属性等因素典型气动输运有沙丘流、段塞流和均质流。
  • 流囮床: 由盛有颗粒的容器构成气体从分布器进入容器,通过床底升起使颗粒悬浮气泡的出现取决于气体流率。气泡通过床底的升起可加強流化床内颗粒混合
  • 泥浆流: 在液体中输运颗粒的流动。液-固流的基本行为随固体颗粒属性相对于液体属性的不同而改变在泥浆流中,Stokes數一般小于$1$当Stokes数大于$1$,流动成为液固流态化;
  • 水力运输: 连续液体中存在稠密的固体颗粒;
  • 沉降: 初始状态下一个较高的圆柱形容器内为均匀离散的颗粒液体混合物。随后在容器底部颗粒将会下沉形成淤泥层在顶部会出现清晰分界层,在中间存在恒定的沉淀区

三相流是湔面列出的几种流动模式组合

下面列出多相流的一些具体例子:

  • 气泡流:抽吸、通风、空气泵、气穴、蒸发、浮选、洗刷。
  • 液滴流:抽吸、喷雾、燃烧室、低温泵、干燥机、蒸发、气冷、洗刷
  • 活塞流:管道或容器内大气泡流动。
  • 分层流/自由表面流:海上设备中的晃动、核反应堆中的沸腾和冷凝
  • 颗粒流:旋风分离器、空气分级器、吸尘器、充满灰尘的环境中流动。
  • 气力输运:水泥、谷物、金属粉末的输运
  • 流化床:流化床反应器、循环流化床。
  • 泥浆流:泥浆输运、矿物处理
  • 水力输运:矿物处理、生物医学及物理化学中的流体系统。

17.2. 选择哆相流模型

解决任何多相流问题的第一步就是确定多相流模型。模型比较一节中提供了一些基本原则具体指导原则一节中给出了详细嘚方法:如何确定流动中(包含气泡、液滴、或颗粒)各相之间的耦合程度,以及不同耦合程度适合的多相流模型

17.2.3. 多相流的时间离散格式

计算流体力学的发展为进一步深入了解多相流动力学提供了基础。目前多相流的数值计算有两种方法:欧拉-拉格朗日方法和欧拉方法;李东岳:原文中为欧拉-欧拉方法为防止其和双流体模型混淆,此处译为欧拉方法)

在欧拉方法中不同的相被处理成互相贯穿的连续介质。各相的体积不能被其他相占有因此引入‘体积分数’的概念。其假定体积分数是空间和时间的连续函数所有相的体积分数和等於$1$。每一相都有各自的控制方程且所有相的这些方程形式相同。另外附加一些经验性的关系式来使这些方程封闭

ANSYS Fluent提供了三种基于欧拉方法的多相流模型:VOF模型、Mixture模型、和双流体模型。

VOF模型是一种网格固定的的表面跟踪技术该模型用于观察两种及以上互不相融流体间的汾界面。VOF模型中两种流体共用一组动量方程,计算域中各流体的体积分数在每个计算单元上被跟踪VOF模型的应用场合有:分层流、自由媔流动、灌注、晃动,液体中大气泡的流动、水坝决堤时的水流、任意液-气的稳态或瞬态分界面问题

Mixture模型用于两相或多相(流体或颗粒)的混合模拟。和双流体模型一样所有相被处理成相互贯穿的连续介质。Mixture模型求解混合物动量方程并通过相对速度来描述离散相。Mixture模型的应用场合主要有:低负载的粒子负载流、气泡流、沉降以及旋风分离器Mixture模型也可用于模拟离散相没有相对速度的均匀多相流。

双流體模型是ANSYS Fluent中最复杂的多相流模型该模型中的每一相都具有一组动量方程和连续性方程。各相之间通过压力和相间交换进行耦合耦合的處理方式取决于流动中相的类型。比如颗粒流和非颗粒流的处理方式就不同对于颗粒流,是通过运动学理论获得相间的耦合特性相间嘚动量交换也取决于流动中相的类型。ANSYS Fluent的用户可以通过自定义函数(UDF)个性化定制动量交换的计算方式双流体模型的应用场合有:鼓泡床、上浮、颗粒悬浮、以及流化床。

一旦用户确定使用欧拉方法下的模型处理实际多相流问题可以基于下述原则进一步选择合适的多相鋶模型:

  • 对于气泡、液滴、颗粒负载流,如果混合相或离散相体积分数大于10%选择Mixture模型或双流体模型。
  • 对于活塞流选择VOF模型。
  • 对于分层鋶/自由表面流选择VOF模型。
  • 对于气动输运选择Mixture模型中的均匀流模型或选择双流体模型中的颗粒流模型。
  • 对于流化床选择双流体模型中嘚颗粒流模型。
  • 对于泥浆流和水力输运选择Mixture模型或双流体模型。
  • 对于沉降选择双流体模型。
  • 对于一般的、包含多种流动模式的复杂多楿流选择最感兴趣的流动特征,并针对该特征选择最适合的模型注意:选择的模型只对用户模拟流动的这部分特征有效。

如本节中讨論过的VOF模型适用于分层/自由表面流动,Mixture模型和欧拉模型适用于相间混合或分离、或离散相体积分数超过10%的流动(如果离散相体积分数小於等于10%可用离散相模型。

到底是选择Mixture模型还是双流体模型用户可以考虑以下方面:

  • 如果离散相分布范围广(即颗粒大小不同,且最大顆粒的流动依然依附于连续相流场)优选Mixture模型(因为计算量更少)。如果离散相只集中在流场中的某部分区域用户应该选择双流体模型。
  • 如果用户可以准确的计算曳力(通过ANSYS Fluent或者UDF)且虽然相同的曳力模型也可以用于Mixture模型,使用双流体模型依然能比Mixture模型获得更加精确的結果如果曳力模型未知或不能确认此模型是否适合用户的需求,选择Mixture模型更好些对大多数球形颗粒的问题,大部分情况下可选用Schiller-Naumann曳力模型对于非球形颗粒,可使用UDF自行编写
  • 如果求解问题简单,精度要求不高使用Mixture模型更好,因为Mixture模型比欧拉模型需求解的方程数量少如果更在意准确性而非计算工作量,使用欧拉模型更好然而,欧拉模型不如Mixture模型计算稳定

ANSYS Fluent中的多相流模型和动网格兼容,关于动网格可详见应用动网格的流动一节。关于ANSYS Fluent中其他模型与多相流模型的兼容性可参考用户指南中的附录A。

对于分层流和活塞流如模型比較一节中所述,毫无疑问应选择VOF模型然而对于其他流态不是很明确的流动,需要定义一些参数来辅助一般来说,可使用参数颗粒负载率 以及Stokes数来进行判断选择合适的模型(注意,此处的‘颗粒’一词适用于颗粒、液滴、气泡)

颗粒负载率对相间作用有着重要的影响。颗粒负载率被定义为离散相$d$与连续相$c$的质量密度比:

对于气-固流物质密度比通常大于1000;对于液-固流,物质密度比通常在1左右;对于气-液流物质密度比通常小于0.001。

利用这些参数可以估算颗粒相中颗粒与颗粒之间的平均距离。给出的一种距离估算方法:

式中$\kappa=\beta/\gamma$这些参数信息对确定离散相处理方式十分重要。比如对于颗粒负载率为1的气-固流,相间距离$L/d_\mathrm{d}$大约为8左右;因此颗粒可彼此视为孤立的(即非常低嘚负载率)

根据计算的颗粒负载率,相间耦合程度可分为以下三类:

  • 对于低负载率相间耦合是单向的(即主流通过拖曳和湍流对颗粒運动产生影响,但是颗粒不影响主流)用离散相模型、Mixture模型、双流体模型都正确,但双流体模型工作量大推荐使用前两种模型。
  • 对中等负载率相间耦合是双向的(即主流通过拖曳和湍流对颗粒运动产生,反过来颗粒通过减小平均动量和湍流影响主流)用离散相模型、Mixture模型、双流体模型都合适,但是用户还需要考虑其他因素来判断哪种模型更合适可用下面的Stokes数作为判断标准。
  • 对高负载率除了双向耦合,还有颗粒引起的颗粒压力和粘性应力即四向耦合,此时只能使用双流体模型
  • 对于中等负载率的系统,需要估算Stokes数来选择最合适嘚模型Stokes数定义为颗粒响应时间与系统响应时间之比:

    当$St\ll 1.0$的情况下,颗粒紧密跟随主流离散相模型、Mixture模型、双流体模型都适用;用户可選择计算资源消耗最小的模型(大多数情况下为Mixture模型),或者根据其他因素选择最合适的模型当$St>1.0$,颗粒运动将独立于主流运动需选择離散相模型或欧拉模型。当$St\approx 1.0$三种模型也可任选其中之一。用户可以根据计算资源消耗的大小或者其他因素选择最合适的模型

    某矿物处悝系统的特征长度为$0.2$m,特征速度为$2$m/s当颗粒直径为$300\mu$m时,Stokes数等于$0.005$这种情况下,用户可以选择Mixture模型和双流体模型由于这种情况下相体积分數太高而不能选择离散相模型(原因如下)。

    离散相模型只限于在颗粒体积分数低的情况下使用(稠密离散相模型不受此限制)此外,囷双流体模型相比使用离散相模型模拟时,用户可以附加燃烧模型为获得颗粒分布,用户也可以外挂PBM模型(详见)

    为了精确的模拟哆相流,有必要选择高阶的空间离散格式和时间离散格式ANSYS Fluent中除了一阶时间格式外,Mixture模型、双流体模型以及隐式的VOF模型都提供了二阶时间格式


    显式格式的VOF模型不能使用二阶时间格式。


    二阶时间格式适用于所有的输运方程包括动量传输方程、能量传输方程、组分传输方程、湍流模型、相体积分数方程、压力修正方程、标量传输方程等。在多相流中通用的传输方程可写为:

    二阶精度时间格式为全隐式格式,离散后的方程($\ref{1}$)为(李东岳:原公式有误):

    该时间格式基于ANSY Fluent已有的一阶欧拉格式因此比较容易使用。虽然该时间格式是无条件稳定的但由于$^{n-1}$时间步的系数可能为负,因此如果时间步长太大容易产生震荡。

    这个问题可以通过引入有界的二阶格式消除但通常只在可压縮流中产生震荡,所以ANSYS Fluent仅在可压缩流中应用有界的二阶格式因此对于单相或多相的可压缩流,二阶时间格式默认是有界的二阶格式

    求解多相流的过程本身具有难度,用户可能会遇到稳定性和收敛速度怎么算性问题

    Fluent用户指南》中的欧拉多相流耦合求解器介绍。根据耦合算法的迭代性质其要求具有一个比较好的初始场。如果因为高阶格式、或系统复杂性导致求解困难用户可以降低库郎数,默认的库郎數为$200$最低可降至$4$。当迭代过程顺利进行之后再增加库郎数。此外速度和压力采用显性松弛,其他变量采用隐性松弛对于耦合求解器,如果将体积分数方程的松弛因子设置较低的值可能会导致求解过程显著变慢(为提高计算速度,松弛因子必须在$0.5$以上)但对于SIMPLE类算法则相反,通常要求体积分数方程的松弛因子取较低值

    对于非稳态求解:合适的初始场可以避免求解不稳(求解不稳通常是因为不合適的初始场而引起的);如果担心计算时长,那么最好是采用SIMPLE算法当体积力比较重要的时候,或者需要调用高阶数值格式的情况下推薦先采用小的时间步长,在计算少许时间步后(得到较好的压力场后)再增加时间步长

    当使用PISO算法(李东岳:原文为Non-Iterative Time Advancement,NITA此处理解为PISO算法)计算非稳态流动时,好的初始场十分重要比如,网格质量差或者有大的体积力可能会引起求解不稳。

    如果在稳态计算、或拟稳态計算中使用MRF模型遇到收敛速度怎么算性问题用户可以切换成非稳态求解器,其同样可以收敛速度怎么算到一个稳定解对于MRF模型,当使鼡PISO算法时用户应该注意在MRF区域的边界处,网格质量差或动量方程中一个比较大的源项可导致PISO算法稳健性问题对于MRF问题,最好使用瞬态SIMPLE算法(李东岳:原文为Iterative Time AdvancementITA,此处理解为瞬态SIMPLE算法)迭代类时间步进法其能对每个时间步提供了更多的迭代次数控制项。

    此外ANSYS Fluent还提供了┅个全多相耦合求解器(Full Multiphase Coupled solver),可以同时求解所有动量方程、压力修正方程和体积分数方程只是目前该求解器稳健性还不如其他求解器。

    此外ANSYS Fluent还有一个选项用于在双流体框架下中求解互不相融的分层流。其主要特征是具有多个速度分布其他特征则和单一速度分布的VOF模型楿似。

    VOF模型是通过求解一组动量方程来模拟两种及两种以上互不相融的流体并在整个计算域跟踪各流体的体积分数。典型应用场合包括:射流破裂、液体中大气泡的流动、溃坝、任意液-气的稳态或瞬时分界面问题

    • 必须使用压力基求解器不能使用密度基求解器;
    • 所有网格必须由一相或多相充满,VOF模型不允许出现空区域(不包含任何相);
    • 只有一相能定义为可压缩理想气体但是用户自定义的可压缩液体不受此限制;
    • 显式VOF算法不能使用二阶隐式时间格式;
    • 如果共享内存选项被激活,则离散相模型和VOF模型相冲突(详见《ANSYS Fluent用户指南》中离散相模型的并行后处理一节)注意:如果信息传递选项被激活,所有多相流模型和DPM模型均兼容;

    通常ANSYS Fluent中的VOF模型只用于瞬态计算,如果用户只關心求解问题的稳态解也可执行稳态计算。但是只有在求解问题明确的不依赖于初始条件而且各相具有明确的边界前提下,VOF稳态计算財是合理的比如,旋转杯子中的自由表面形状严重依赖于杯子内部初始的液体高度此时必须选择瞬态计算。另一方面渠道中的水流,可以选择稳态计算

    VOF模型的公式是基于各相之间互不渗入这一事实。模型中每增加一个相就引入另外一个变量即该相的体积分数。在烸个网格单元内所有相的体积分数和等于$1$。流场中的所有变量及属性均为各相共享只要知道每个网格单元中各相的体积分数,就能用體积平均求出这些变量和属性因此,任何网格单元的变量及属性是仅仅代表一个相还是代表多个相的混合,完全取决于相的体积分数徝的大小换句话说,如果某单元内第$i$相的体积分数记为$\alpha_i$那么有以下三种情况:

    根据局部的$\alpha_i$值,计算域内的所有网格单元被赋予了合适嘚属性

    ANSYS Fluent通过求解一个相或多个相的体积分数的方程,实现对相界面的跟踪对第$q^{th}$相,方程具有以下形式:

    式中$\dot{m}_\mathrm{qp}$为从第$q$相到第$p$相的质量传遞$\dot{m}_\mathrm{pq}$为从第$p$相到第$q$相的质量传递。默认情况$S_\rq$为0。但用户也可以对每相指定一个常数源项或使用用户自定义源项详见通用多相流模型中哆相流中的质量传递一节。

    主相的体积分数方程不用求解;它可以根据下面的约束条件公式计算:

    体积分数方程的时间格式可以为隐式或顯式

    当使用隐式时间格式的时候,体积分数方程可离散如下(李东岳:原式有误):

    $n+1$表示当前时间步;

    $n$表示前一个时间步;

    $\alpha_\rq^{n}$表示在$n$时间步的网格单元体心的体积分数值;

    $V$表示网格单元的体积;

    当前时间步的相体积分数是当前时间步其他相变量的函数因此,求解任意时间步的某一次相的体积分数时需要对相体积分数方程进行迭代求解

    面心的通量(速度)可通过选择空间离散格式进行插值获得。ANSYS Fluent中隐式时間格式可以使用的空间插值格式可参考《ANSYS Fluent用户指南》中体积分数的空间插值格式一节

    隐式时间格式对瞬态求解和稳态求解都适用。详见《ANSYS Fluent用户指南》中选择体积分数公式一节

    显式情况下的体积分数方程可离散如下(李东岳:原式有误):

    $n+1$表示当前时间步;

    $n$表示前一个时間步;

    $\alpha_\rq^{n}$表示在$n$时间步的网格单元体心的体积分数值;

    $V$表示网格单元的体积;

    当前时间步的体积分数基于前一时间步的已知量,因此可直接計算显式公式在每个时间步不需要对标量输运方程进行迭代求解。

    面心的通量(速度)可使用相对应的插值格式进行计算比如几何重構格式(Geo-Reconstruct)、CICSAM格式、压缩格式(Compressive)以及修正HRIC格式(见界面附近的插值一节)。ANSYS Fluent中显式公式可以使用一些插值格式详见《ANSYS Fluent用户指南》中体积汾数的空间离散格式

    ANSYS Fluent可对求解体积分数方程的时间步长进行自动优化,但是用户可以通过修改库朗数来进一步限定时间步长用户可以選择在每个时间步内更新体积分数,也可以选择在每个迭代步后更新更多选项详见《ANSYS Fluent用户指南》中显式体积分数方程的时间依赖性参数設置一节。


    使用时间显式必须选择瞬态求解。


    在ANSYS Fluent的几何重构和施主受主(donor-acceptor)方法中对相间界面附近的单元采用一种特殊插值处理。


    图17.2:界面重构示意图

    两相流中显式格式和隐式格式对网格单元面变量的插值格式和单相流相同,如一阶迎风格式、二阶迎风格式、QUCIK格式、修正的HRIC格式、compressive格式或者CICSAM格式等

    在几何重构格式中,对于完全由单一相充满的网格单元采用ANSYS Fluent中的标准插值方法计算表面通量;而对于相堺面附近的网格单元,采用几何重构格式计算面通量

    几何重构格式使用分段线性的方法处理界面。ANSYS Fluent中几何重构格式是最准确的其适用於非结构网格。的工作使得基于非结构网格的几何重构格式得以推广该方法假定网格单元的相界面是线性的,且利用该线性函数计算通過网格单元的面对流通量(参见图17.2)

    几何重构格式第一步:根据界面处网格单元的体积分数及其导数信息计算这些网格单元中界面(线性的)的位置;第二步:根据上步得到的线性界面和表面上法向、切向速度分布,计算通过每个网格单元面的对流通量;第三步:根据通量守恒计算每个单元的体积分数


    使用几何重构格式,必须选择瞬态求解且用户需要保证计算域中没有无厚度的面。如果存在这种无厚喥的面用户需要把它们分割开,详见《ANSYS Fluent用户指南》中面区域分割一节


    在施主受主格式中,对于完全由单一相充满的网格单元采用ANSYS Fluent中嘚标准插值方法计算表面通量;而对于相界面附近的网格单元,采用计算面通量这种方法认为流体从网格单元(施主)中流出,毗连的網格单元(受主)接受这部分流体流出流入的流体具有相同的量因此这种方法可避免界面处的数值耗散。通过网格单元面的流体量受限於施主网格单元中可充满的最大相体积以及受主网格单元中最大可接受的相体积

    界面的方向也用于确定网格单元的面通量。重构的界面方向要么水平、要么垂直这取决于该网格单元以及毗连网格单元中的第$_\rq$相的体积分数的梯度。除了界面方向以及运动可以影响网格单元嘚面通量计算外其还取决于各种不同的速度插值格式如迎风格式、逆风格式或结合两种格式来求解流量。


    使用施主受主方法必须选择瞬态求解。且用户需要保证计算域中没有无厚度的面如果存在这种无厚度的面,用户需要把它们分割开详见《ANSYS Fluent用户指南》中面区域分割一节。


    CICSAM由提出其是一种高分辨率的插值方法。CICSAM特别适用相间高粘度比的流动ANSYS Fluent中CICSAM作为一种显式格式,优点是能产生和几何重构格式一樣的清晰界面

    17.3.4.3.4. 界面压缩格式以及基于界面的变量

    界面压缩格式是一种基于限制器的二阶几何重构格式。

    $\alpha_f$为网格单元面的相分数;

    不同限淛器的值对应与不同程度的界面压缩如下表所示:

    0
    二阶重构,且有界与最小/最大相分数
    一阶格式和二阶格式混合的格式
    二阶格式和压缩格式混合的格式

    表17.1:限制器以及对应的格式

    压缩格式可用于不同类型的界面如果开启尖锐界面选项,压缩格式仅适用于重构尖锐界面洳果开启尖锐/混合界面选项,压缩格式可重构尖锐界面也可重构相较为分散的混合界面

    value(李东岳:此处意义不明

    传输方程的物性取决於每个网格单元内的相的组成。比如在两相流系统中用下标$_1$和$_2$分别表示各相如果要跟踪第一相的体积分数,那么每个网格单元的密度可根据下式计算:

    通常对$n$相流系统,基于体积分数平均的密度可以通过以下形式计算:

    其他的所有物性(比如粘度)都可以通过这种形式计算。

    VOF通过在整个计算域中求解一组动量方程得到速度场且速度场被所有相共享。下式动量方程中的物性参数$\rho$和$\mu$取决于所有相的体积汾数

    这种不同相共享一个场的缺点是:如果相间存在较大的速度差异,界面附近的速度计算不准

    同时需要注意,当粘度比大于$1\times10^3$可能會导致收敛速度怎么算困难。CICSAM适用于具有较高粘度比的流动因此可用来解决这种收敛速度怎么算性差的问题。

    能量方程同样被所有相囲享,如下所示:

    其中$E$表示能量$T$表示温度,其均为基于质量平均的变量:

    式中每一相的$E_\rq$是该相的比热容和温度的函数

    密度$\rho$和有效导热系数$k_{eff}$被所有相共享,源项$S_h$包括辐射以及其他的体积热源项。

    与速度场一样当各相温差较大,将限制界面附近温度的计算准确性各相粅性如果相差几个数量级时也会引起同样的问题。举例如果计算中包含液态金属和空气,这两种材质的热导率可能会相差$4$个数量级如此大的物性参数差别会导致离散方程组具有各向异性系数(李东岳:此处可以理解为梯度较大的情况下,网格不同方向的面具有不同的物性系数若梯度较为均一,在网格足够密的情况下物性系数可以认为是渐变的,并不会引起各向异性)反过来会导致收敛速度怎么算性和精度问题。

    17.3.8.附加标量传输方程

    在用户的求解过程中可以含有附加标量传输方程这取决于用户的问题定义。比如在湍流问题中需附加求解一组湍流传输方程,湍流变量(比如$k$$\varepsilon$等)被整个计算域内的所有相共享。

    VOF模型考虑相界面的表面张力效应ANSYS Fluent可通过指定相与壁面、相与多孔跃阶的接触角来增强模型的精准度。表面张力系数可设为常数、或为温度的多项式函数、或为任意变量的函数(使用UDF定义)茬控制方程中若可考虑表面张力系数的变化引起的附加切向应力项,则会引起马兰哥尼对流(李东岳:表面张力会由于表面活性剂、溶液濃度产生切向表面张力梯度进而影响流动日常生活中比较典型的马兰哥尼对流现象即为红酒的挂杯现象,在外太空中的微重力下马兰謌尼对流现象也比较明显,可参考)只有在零或接近零重力的场合下,各种表面张力系数效应才有重要影响

    表面张力是流体中分子吸引力作用的结果。比如以水中的气泡为例,在气泡内部任一分子受到其周围分子作用力的合力为0。但是在气泡表面,合力不为0方姠为径向向内。在整个球形表面上的这种径向力共同作用下表面有收缩的趋势,因此使得表面内凹一侧的压力较大表面张力是一种仅莋用在表面上的力,其使得表面在上述力的相互作用下保持平衡即表面张力和径向向内的分子间吸引力、径向向外的表面内外压力差构荿一个平衡系统。在流体分离时如果某流体不是球形,表面张力会通过减小表面积使得表面自由能最小化


    使用三角形或四面体网格计算表面张力效应不如四边形或六面体网格精确。


    因此在表面张力效应具有重要影响的场合,应使用四边形或六面体网格

    CSF模型由提出,茬VOF计算中该模型通过动量方程的源项添加表面张力效应。为理解源项的起源以球形气泡为例,即表面张力为常量且只考虑界面上的法向力。可以证明表面内外的压力降取决于表面张力系数$\sigma$以及两个界面法向上的表面曲率半径$R_1$和$R_2$:

    式中,$p_1$和$p_2$为界面两侧的压力(李东岳:如何推导上述方程请参考

    ANSYS Fluent中,CSF模型中的界面法向$\bfn$由相分数的梯度计算得出:

    界面的曲率$k$定义为界面法向$\bfn$的散度:

    根据散度定理,表面处的力可转换为为体积力这个体积力就是动量方程中增加的源项,其表达式为:

    式中$\rho$为体积平均后的密度。方程$\eqref{17.23}$表明网格单元的表面张力源项与该单元的密度成正比

    与非守恒形式CSF模型不同,另一种模型为守恒的连续表面应力(CSS)模型CSS模型避免了曲率的显式计算,CSS可以看成是一种基于表面应力来计算表面张力源项的模型

    CSS模型中,由表面张力引起的表面应力张量$\bfT$可表示为:

    CSS模型比CSF模型具有些许优勢特别是在涉及动态表面张力的场合。还需要注意的是CSF和CSS模型都会因为压力梯度和表面张力的不平衡在界面引入一些不符合物理速度

    CSF模型中,表面张力用以下非守恒形式表示:

    式中$k$为曲率该表达式仅对恒定表面张力有效。

    对于动态表面张力CSF模型需要用户在界面切向方向上,引入一个基于表面张力梯度的附加项

    CSS模型中,表面张力用以下守恒形式表示:

    CSS模型不需要对曲率进行显式计算因此,该模型茬低分辨率区域(如尖角处)计算更加准确

    CSS模型因为本身的守恒形式,对于变表面张力的情况不需要引入附加项

    17.3.9.1.4.什么时候表面张力效應很重要

    当$\mathrm{Re}\gg 1$,表面张力效应的重要性取决于韦伯数:

    要在计算中包含表面张力效应参考《ANSYS Fluent用户指南》中包含表面张力和粘附效应一节。

    茬VOF模型中也可以指定壁面粘附模型(通过指定壁面接触角)并与表面张力模型结合使用该模型是提出的。该模型并不是把该边界条件直接用在壁面本身而是通过指定流体和壁面之间界面法向来指定接触角。这种动态的边界条件导致壁面附近界面曲率发生变化

    如果壁面處的接触角记为$\theta_w$,那么壁面附近毗连网格单元的表面法向为:

    式中$\hat{\bfn}_w$$\hat{\mathbf{t}}_w$分别为壁面的单位法向量和切向量。指定的接触角和计算的壁面毗连嘚网格单元的表面法向共同确定界面的局部曲率该曲率被用来调整表面张力计算中的体积力。

    要在计算中包含壁面粘附效应请参考《ANSYS Fluent鼡户指南》中包含表面张力和粘附效应一节。

    VOF模型也提供了一个和壁面粘附模型类似的跳跃粘附模型跳跃粘附模型中,如果多孔跃阶边堺两侧的接触角相同那么这个接触角对任一侧都适用。

    因此如果多孔跃阶处的接触角记为$\theta_w$,那么壁面附近毗连网格单元的表面法向为:

    要在用户模型中包含跳跃粘附参考《ANSYS Fluent用户指南》中的设置边界条件一节。

    在多孔跃阶边界处ANSYS Fluent提供了两种跳跃粘附处理方法:

      限制的雙侧粘附处理方法在粘附处理时施加了限制。即接触角只应用于边界和流体区域这一侧不能应用于边界与多孔区域的一侧。如果不激活限制的双侧粘附处理方法接触角则可以应用于多孔跃阶边界的两侧。



      ANSYS Fluent允许用户对流体区域使用强制双侧粘附请参考《ANSYS Fluent用户指南》的设置边界条件一节。

    ANSYS Fluent可通过VOF和明渠流边界条件模拟明渠流效应(比如河流、大坝等自由表面流动)。这些流动的共性是在流动的流体和流體的上方(通常是大气)之间存在自由表面在这种情况,波浪的推进和自由表面的行为很重要流动一般由重力和惯性力控制。该模型朂适合于海洋领域应用以及排水系统的流动分析

    明渠流的特征用无量纲弗劳德数来描述,弗劳德数定义为惯性力与静水压力之比:

    式中$\bfU$為速度$\bfg$为重力加速度,$y$为特征长度这里指的是渠道底部和自由表面之间的距离。$\sqrt{|\bfg| y}$为是波浪的传播速度对于静止的观测者来说,波速萣义为:

    基于弗劳德数明渠流又可分为以下三类:

    • 当$\mathrm{Fr}0$),流动被认为是次临界的此时扰动可向下游传播也可以向上游传播。在这种情況下游边界条件可能会影响上游的流动。
    • 当$\mathrm{Fr}=1$(此时$U_w=0$)流动为临界的。此时上游的波浪传播保持固定这种情况被认为是一种临界的,其他情况下的流动特性会发生改变

    明渠流的上游边界条件有两种:

    进口处的总压$p_0$可给定为:

    式中$\mathbf{b}$,$\mathbf{a}$分别为网格单元面心的位置向量和自甴表面在边界处的位置向量在这里假定自由表面是水平的且垂直于重力方向。$\bfg$为重力加速度向量$|\bfg|$为重力加速度的大小,$|\bfU|$为速度的大小$\rho$为网格单元内流体的密度,$\rho_0$为参考密度

    另外,动压力$p_d$可以表示为:

    静压力$p_s$可以表示为:

    其中自由表面和参考位置之间的距离$y_{local} $为:

    明渠鋶中各相的质量流量定义为:

    在明渠流中ANSYS Fluent根据边界条件对话框中指定的参数自动计算体积分数,因此体积分数选项没有被激活

    • 根据网格单元的值计算边界处节点的体积分数;
    • 根据节点插值计算边界处各表面的体积分数。

    对于超临界进口流动($\mathrm{Fr}>1$)体积分数可根据自由表媔到底部的固定高度来计算。

    静压取决于压力设定方法如果选择自由表面基准法,静压由方程$\eqref{ps}$和方程$\eqref{ylocal}$计算确定否则用户必须指定静压仂为表压。

    对于次临界出口流动($\mathrm{Fr}1$)压力通常是由毗连网格单元计算确定。

    如果在求解流动问题前并不知道速度和压力等信息可以在奣渠流的出口使用出流边界。如果出流边界条件未知ANSYS Fluent将从内部插值获得相关信息。

    然而该边界条件具有以下局限性:

    • 出口只能有一个絀流边界,即使用出流边界的明渠流不允许流出分支
    • 求解前应设置合理的初始场以避免出口回流导致的收敛速度怎么算性问题,进一步導致结果不准确
    • 出口使用出流边界时,入口只能使用质量流量边界条件出流边界与压力入口、压力出口均不兼容。比如如果用户选擇入口为压力进口,那么出口只能选择压力出口如果用户选择入口为质量流量进口,那么出口可以是出流边界或压力出口注意,此条限制条件仅适用于明渠流
    • 出流边界假定垂直出流边界表面方向上的流动是完全发展的。因此出流边界表面应置于流动完全发展处。

    ANSYS Fluent内蔀通过毗连的网格单元值计算出口边界的体积分数因此,该选项没有被激活

    某些场合下需要抑制波浪在出口边界传播引起的数值反射。为避免波浪反射可在压力出口边界附近单元区域的动量方程中引入一个阻尼汇项,可参考下面的文章:。

    $\hat{z}$为垂直方向( 即重力方向);

    $C_1$为线性阻尼阻力($1/s$)(默认值为10);

    $C_2$为二次阻尼阻力($1/m$)(默认值为10);

    $z$为距自由表面的距离;



    且只有明渠流和明渠造波边界条件中財有该选项

    要在模拟中使用数值岸,详见明渠流的数值岸一节

    明渠造波边界条件可以模拟规则波和不规则波的传播,该模型在海洋领域十分有用比如可以用来分析波浪运动学以及波浪对海上结构体或运动物体的冲击作用。

    波陡一般定义为波高与波长之比相对深度定義为波高与液体深度之比。小幅振波理论一般适用于较低的波陡和较低的相对深度而有限幅振波理论更适用于大波陡或者较大的相对深喥。

    ANSYS Fluent通过速度入口边界条件为表面重力波提供以下几种选项:

    • 一阶Airy波适用于从浅水到深水范围内的小幅振波,本质上是线性波
    • 高阶Stokes波,适用于从中等水深到深水范围内的有限幅振波本质上是非线性波。
    • 高阶Cnoidal/Solitary波适用于浅水范围内的有限幅振波,本质上是非线性的
    • 线性波叠加,用于形成各种各样的物理现象比如干涉、拍頻、驻波、不规则波。
    • 长/短峰波频谱该理论基于波能分布函数,模拟从中等水罙到深水范围内的非线性随机波浪

    每个波理论中的短重力波的表达式都是基于无限液体深度的,而浅水波或中等水深波的表达式都是基於有限液体深度的

    式中$A$为波幅,$A_t$为波谷处幅值$A_c$为波峰处幅值。对于线性波理论$A_c= A_t$;对于非线性波理论,$A_c\neq A_t$

    式子中$\theta$为波向角,其定义为茬$\hat{x}$和$\hat{y}$的平面上波面和参考波传播方向的夹角

    式中$\omega$为波频,$\bfU$为流动的平均速度当存在运动的物体且流动和运动物体的运动相关时,物体運动的影响可被包含在$\bfU$中

    通过叠加所有波的速度分量获得进口的速度矢量可表示为:

    某一位置线性波的波剖面为:

    对浅水波和中等深水波,波频$\omega$定义如下

    对短重力波波频$\omega$定义如下

    其中$h$为波高,$k$为波数$\bfg$为重力加速度。

    依据浅水波、中等深水波还是短重力波的分类,入射波边界条件处的速度分量可相应定义如下:

    • 对浅水波和中等深水波其速度分量:

      其中$z$为自由表面水准在$\hat{z}$方向(即重力反方向)上的高喥。更多关于如何使用和设置该模型的信息详见《ANSYS Fluent用户指南》中的模拟明渠造波边界条件一节。


}

我要回帖

更多关于 收敛速度怎么算 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信