1、1 什么叫松弛因子?松弛因子对计算结果有什么样的影响?它对计算的收敛情况又有什么样的影响?1、亚松驰(Under Relaxation):所谓亚松驰就是将本层次计算结果与上一层次结果的差值作适当缩减,以避免由于差值过大而引起非线性迭代过程的发散。用通用变量来写出时,为松驰因子(Relaxation Factors)。数值传热学-214 2、FLUENT 中的亚松驰:由于 FLUENT 所解方程组的非线性,我们有必要控制的变化。一般用亚松驰方法来实现控制,该方法在每一部迭代中减少了的变化量。亚松驰最简单的形式为:单元内变量等于原来的值 加上亚松驰因子 a 与 变化的积, 分离解算器使用亚松驰来控
2、制每一步迭代中的计算变量的更新。这就意味着使用分离解算器解的方程,包括耦合解算器所解的非耦合方程(湍流和其他标量)都会有一个相关的亚松驰因子。在FLUENT 中,所有变量的默认亚松驰因子都是对大多数问题的最优值。这个值适合于很多问题,但是对于一些特殊的非线性问题(如:某些湍流或者高 Rayleigh 数自然对流问题),在计算开始时要慎重减小亚松驰因子。使用默认的亚松驰因子开始计算是很好的习惯。如果经过 4 到 5 步的迭代残差仍然增长,你就需要减小亚松驰因子。有时候,如果发现残差开始增加,你可以改变亚松驰因子重新计算。在亚松驰因子过大时通常会出现这种情况。最为安全的方法就是在对亚松驰因子做任何
3、修改之前先保存数据文件,并对解的算法做几步迭代以调节到新的参数。最典型的情况是,亚松驰因子的增加会使残差有少量的增加,但是随着解的进行残差的增加又消失了。如果残差变化有几个量级你就需要考虑停止计算并回到最后保存的较好的数据文件。注意:粘性和密度的亚松驰是在每一次迭代之间的。而且,如果直接解焓方程而不是温度方程(即:对 PDF 计算),基于焓的温度的更新是要进行亚松驰的。要查看默认的亚松弛因子的值,你可以在解控制面板点击默认按钮。对于大多数流动,不需要修改默认亚松弛因子。但是,如果出现不稳定或者发散你就需要减小默认的亚松弛因子了,其中压力、动量、k 和 e 的亚松弛因子默认值分别为 0.2,0.
4、5,0.5和 0.5。对于 SIMPLEC 格式一般不需要减小压力的亚松弛因子。在密度和温度强烈耦合的问题中,如相当高的 Rayleigh 数的自然或混合对流流动,应该对温度和/或密度(所用的亚松弛因子小于 1.0)进行亚松弛。相反,当温度和动量方程没有耦合或者耦合较弱时,流动密度是常数,温度的亚松弛因子可以设为 1.0。对于其它的标量方程,如漩涡,组分,PDF 变量,对于某些问题默认的亚松弛可能过大,尤其是对于初始计算。你可以将松弛因子设为 0.8 以使得收敛更容易。SIMPLE 与 SIMPLEC 比较在 FLUENT 中,可以使用标准 SIMPLE 算法和 SIMPLEC(SIMPLE-
5、Consistent)算法,默认是 SIMPLE 算法,但是对于许多问题如果使用 SIMPLEC 可能会得到更好的结果,尤其是可以应用增加的亚松驰迭代时,具体介绍如下:对于相对简单的问题(如:没有附加模型激活的层流流动),其收敛性已经被压力速度耦合所限制,你通常可以用 SIMPLEC 算法很快得到收敛解。在 SIMPLEC 中,压力校正亚松驰因子通常设为 1.0,它有助于收敛。但是,在有些问题中,将压力校正松弛因子增加到 1.0 可能会导致不稳定。对于所有的过渡流动计算,强烈推荐使用 PISO 算法邻近校正。它允许你使用大的时间步,而且对于动量和压力都可以使用亚松驰因子 1.0。对于定常状态问
6、题,具有邻近校正的 PISO 并不会比具有较好的亚松驰因子的 SIMPLE 或SIMPLEC 好。对于具有较大扭曲网格上的定常状态和过渡计算推荐使用 PISO 倾斜校正。当你使用 PISO 邻近校正时,对所有方程都推荐使用亚松驰因子为 1.0 或者接近 1.0。如果你只对高度扭曲的网格使用 PISO 倾斜校正,请设定动量和压力的亚松驰因子之和为 1.0比如:压力亚松驰因子 0.3,动量亚松驰因子 0.7)。如果你同时使用 PISO 的两种校正方法,推荐参阅 PISO 邻近校正中所用的方法2 在 FLUENT 运行过程中,经常会出现“turbulence viscous rate”超过了极限值,
7、此时如何解决?而这里的极限值指的是什么值?修正后它对计算结果有何影响Lets take care of the warning “turbulent viscosity limited to viscosity ratio*“ which is not physical. This problem is mainly due to one of the following: 1)Poor mesh quality(i.e.,skewness 0.85 for Quad/Hex, or skewness 0.9 for Tri/Tetra elements). what values do yo
8、u have? 2)Use of improper turbulent boudary conditions. 3)Not supplying good initial values for turbulent quantities. 出现这个警告,一般来讲,最可能的就是网格质量的问题,尤其是 Y+值的问题;在划分网格的时候要注意,第一层网格高度非常重要,可以使用 NASA 的 Viscous Grid Space Calculator 来计算第一层网格高度;如果这方面已经注意了,那就可能是边界条件中有关湍流量的设置问题,3 在 FLUENT 运行计算时,为什么有时候总是出现“reversed
9、 flow”?其具体意义是什么?有没有办法避免?如果一直这样显示,它对最终的计算结果有什么样的影响?这个问题的意思是出现了回流,这个问题相对于湍流粘性比的警告要宽松一些,有些case 可能只在计算的开始阶段出现这个警告,随着迭代的计算,可能会消失,如果计算一段时间之后,警告消失了,那么对计算结果是没有什么影响的,如果这个警告一直存在,可能需要作以下处理:1.如果是模拟外部绕流,出现这个警告的原因可能是边界条件取得距离物体不够远,如果边界条件取的足够远,该处可能在计算的过程中的确存在回流现象;对于可压缩流动,边界最好取在 10 倍的物体特征长度之处;对于不可压缩流动,边界最好取在 4 倍的物体特
10、征长度之处。2.如果出现了这个警告,不论对于外部绕流还是内部流动,可以使用 pressure-outlet边界条件代替 outflow 边界条件改善这个问题。4 什么叫问题的初始化?在 FLUENT 中初始化的方法对计算结果有什么样的影响?初始化中的“patch”怎么理解?问题的初始化就是在做计算时,给流场一个初始值,包括压力、速度、温度和湍流系数等。理论上,给的初始场对最终结果不会产生影响,因为随着跌倒步数的增加,计算得到的流场会向真实的流场无限逼近,但是,由于 Fluent 等计算软件存在像离散格式精度(会产生离散误差)和截断误差等问题的限制,如果初始场给的过于偏离实际物理场,就会出现计算
11、很难收敛,甚至是刚开始计算就发散的问题。因此,在初始化时,初值还是应该给的尽量符合实际物理现象。这就要求我们对要计算的物理场,有一个比较清楚的理解。初始化中的 patch 就是对初始化的一种补充,比如当遇到多相流问题时,需要对各相的参数进行更细的限制,以最大限度接近现实物理场。这些就可以通过 patch 来实现,patch 可以对流场分区进行初始化,还可以通过编写简单的函数来对特定区域初始化。5 什么叫 PDF 方法?FLUENT 中模拟煤粉燃烧的方法有哪些?概率密度函数输运输运方程方法(PDF 方法) 是近年来逐步建立起来的描述湍流两相流动的新模型方法。所谓的概率密度函数(Probabili
12、ty Density Function,简称 PDF)方法是基于湍流场随机性和概率统计描述,将流场的速度、温度和组分浓度等特征量作为随机变量,研究其概率密度函数在相空间的传递行为的研究方法。PDF 模型介于统观模拟和细观模拟之间,是从随机运动的分子动力论和两相湍流的基本守恒定律出发,探讨两相湍流的规律,因此可作为发展双流体模型框架内两相湍流模型的理论基础。它实质上是沟通 E-L 模型和E-E 模型的桥梁,可以用颗粒运动的拉氏分析通过统计理论,即 PDF 方程的积分建立封闭的 E-E 两相湍流模型非预混湍流燃烧过程的正确模拟要求同时模拟混合和化学反应过程。FLUENT 提供了四种反应模拟方法:即
13、有限率反应法、混合分数 PDF 法、不平衡(火焰微元)法和预混燃烧法。火焰微元法是混合分数 PDF 方法的一种特例。该方法是基于不平衡反应的,混合分数 PDF 法不能模拟的不平衡现象如火焰的悬举和熄灭,NOx 的形成等都可用该方法模拟。但由于该方法还未完善,在 FLUENT 只能适用于绝热模型。对许多燃烧系统,辐射式主要的能量传输方式,因此在模拟燃烧系统时,对辐射能量的传输的模拟也是非常重要的。在 FLUENT 中,对于模拟该过程的模型也是非常全面的。包括 DTRM、 P-1、Rosseland、DO 辐射模型,还有用 WSGG 模型来模拟吸收系数。6 在 FLUENT 的学习过程中,通常会涉
14、及几个压力的概念,比如压力是相对值还是绝对值?参考压力有何作用?如何设置和利用它?GAUGE PRESSURE 就是静压。 GAUGE total PRESSURE 是总压。 这里需要强调一下 Gauge 为名义值, 什么意思呢?如果, INITIAL Gauge PRESSURE 0 那么 GAUGE PRESSURE 就是实际的静压 Pinf。 GAUGE total PRESSURE 是实际的总压 Pt。 如果 INITIAL Gauge PRESSURE 不等于零 GAUGE PRESSURE Pinf - INITIAL Gauge PRESSURE GAUGE total PRES
15、SURE Pt - INITIAL Gauge PRESSURE7 在 FLUENT 结果的后处理过程中,如何将美观漂亮的定性分析的效果图和定量分析示意图插入到论文中来说明问题? 三种方法来得到用于插入到论文的图片:1.在 Fluent 中显示你想得到的效果图的窗口,可以直接在任务栏中右键该窗口将其复制到剪贴板,保存;或者打印到文件,保存。2.在 Fluent 中,在你想要保存相关窗口的效果图时,首先激活效果图监视窗口,就是用鼠标左键监视窗口,然后在 Fluent 中操作,Fluent-File-Hardcopy.,选择好你想要的图片格式,然后就可以保存了。3.将计算结果或者相关数据导入到 T
16、ecplot 中,然后作出你想要的效果图,这种方法得出的图片,个人感觉比 Fluent 得到的图片美观简洁大方8 在 FLUENT 定义速度入口时,速度入口的适用范围是什么?湍流参数的定义方法有哪些?各自有什么不同?速度入口的边界条件适用于不可压流动,需要给定进口速度以及需要计算的所有标量值。速度入口边界条件不适合可压缩流动,否则入口边界条件会使入口处的总温或总压有一定的波动。关于湍流参数的定义方法,根据所选择的湍流模型的不同有不同的湍流参数组合,具体可以参考 Fluent 用户手册的相关章节,也可以参考王福军的书 计算流体动力学分析 CFD软件原理与应用的第 214-216 页,9 分离式求
17、解器和耦合式求解器的适用场合是什么?分析两种求解器在计算效率与精度方面的区别分离式求解器以前主要用于不可压缩流动和微可压流动,而耦合式求解器用于高速可压流动。现在,两种求解器都适用于从不可压到高速可压的很大范围的流动,但总的来讲,当计算高速可压流动时,耦合式求解器比分离式求解器更有优势。 Fluent 默认使用分离式求解器,但是,对于高速可压流动,由强体积力 (如浮力或者旋转力)导致的强耦合流动,或者在非常精细的网格上求解的流动,需要考虑耦合式求解器。耦合式求解器耦合了流动和能量方程,常常很快便可以收敛。耦合式求解器所需要的内存约是分离式求解器的 1.5 到 2 倍,选择时可以根据这一情况来权
18、衡利弊。在需要耦合隐式的时候,如果计算机内存不够,就可以采用分离式或耦合显式。耦合显式虽然也耦合了流动和能量方程,但是它还是比耦合隐式需要的内存少,当然它的收敛性也相应差一些。 需要注意的是,在分离式求解器中提供的几个物理模型,在耦合式求解器中是没有的。这些物理模型包括:流体体积模型(VOF),多项混合模型,欧拉混合模型,PDF 燃烧模型,预混合燃烧模型,部分预混合燃烧模型,烟灰和 NOx 模型,Rosseland 辐射模型,熔化和凝固等相变模型,指定质量流量的周期流动模型,周期性热传导模型和壳传导模型等。 而下列物理模型只在耦合式求解器中有效,在分离式求解器中无效:理想气体模型,用户定义的理
19、想气体模型,NIST 理想气体模型,非反射边界条件和用于层流火焰的化学模型。10 FLUENT 中常用的文件格式类型:dbs ,msh ,cas ,dat,trn,jou ,profile 等有什么用处? 在 Gambit 目录中,有三个文件,分别是 default_id.dbs,jou ,trn 文件,对 Gambit运行 save,将会在工作目录下保存这三个文件:default_id.dbs,default_id.jou,default_id.trn 。 jou 文件是 gambit 命令记录文件,可以通过运行 jou 文件来批处理 gambit 命令;dbs 文件是 gambit 默认的
20、储存几何体和网格数据的文件;trn 文件是记录 gambit 命令显示窗(transcript)信息的文件; msh 文件可以在 gambit 划分网格和设置好边界条件之后 export 中选择 msh 文件输出格式,该文件可以被 fluent 求解器读取。 Case 文件包括网格,边界条件,解的参数,用户界面和图形环境。 Data 文件包含每个网格单元的流动值以及收敛的历史纪录(残差值)。 Fluent 自动保存文件类型,默认为 date 和 case 文件 Profile 文件边界轮廓用于指定求解域的边界区域的流动条件。例如,它们可以用于指定入口平面的速度场。 读入轮廓文件,点击菜单 Fi
21、le/Read/Profile.弹出选择文件对话框,你就可以读入边界轮廓文件了。 写入轮廓文件,你也可以在指定边界或者表面的条件上创建轮廓文件。例如:你可以在一个算例的出口条件中创建一个轮廓文件,然后在其它算例中读入该轮廓文件,并使用出口轮廓作为新算例的入口轮廓。要写一个轮廓文件,你需要使用 Write Profile 面板(Figure 1),菜单:File/Write/Profile11 在计算区域内的某一个面(2D)或一个体(3D)内定义体积热源或组分质量源。如何把这个 zone 定义出来?而且这个 zone 仍然是流体流动的。在 gambit 中先将需要的 zone 定义出来,对于要随
22、流体流动我觉得这个可以用动网格来处理 在动网格设置界面 将这个随流体流动的 zone 设置成刚体 这样既可以作为 zone不影响流体流通 也可以随流体流动 只是其运动的 udf 不好定义 最好根据其流动规律编动网格 udf12 如何选择单、双精度解算器的选择Fluent 的单双精度求解器适合于所有的计算平台,在大多数情况下,单精度求解器就能很好地满足计算精度要求,且计算量小。但在有些情况下推荐使用双精度求解器:1, 如果几何体包含完全不同的尺度特征(如一个长而壁薄的管),用双精度的;2, 如果模型中存在通过小直径管道相连的多个封闭区域,不同区域之间存在很大的压差,用双精度。3, 对于有较高的热
23、传导率的问题或对于有较大的长宽比的网格,用双精度。13 求解器为 flunet5/6 在设置边界条件时,specify boundary types 下的 types 中有三项关于 interior,interface ,internal 设置,在什么情况下设置相应的条件?它们之间的区别是什么?interior 好像是把边界设置为内容默认的一部分;interface 是两个不同区域的边界区,比如说离心泵的叶轮旋转区和叶轮出口的交界面;internal;请问以上三种每个的功能?最好能举一两个例子说明一下,因为这三个都是内部条件吧,好像用的很多。interface,interior,interna
24、l boundary 区别?在 Fluent 中,Interface 意思为“交接面”,主要用途有三个:多重坐标系模型中静态区域与运动区域之间的交接面的定义;滑移网格交接处的交接面定义,例如:两车交会,转子与定子叶栅模型,等等,在 Fluent 中,interface 的交接重合处默认为 interior,非重合处默认为 wall;非一致网格交接处,例如:上下网格网格间距不同等。Interior 意思为“内部的”,在 Fluent 中指计算区域。Internal 意思为“内部的”,比如说内能,内部放射率等,具体应用不太清楚。14 FLUENT 并行计算中 Flexlm 如何对多个 Licens
25、e 的管理?在 FLEXlm LMTOOLS Utility-config services-service name 里选好你要启动的软件的配备的 service name,然后配置好下边的 path to the lmgrd.exe file 和 path to the license file,然后 save service,转到 FLEXlm LMTOOLS Utility-config services-start/stop/reread 下,选中要启动的 license,start server 即可15 在“solver”中 2D 、axisymmetric 和 axisymme
26、tric swirl 如何区别?对于 2D 和 3D各有什么适用范围?从字面的意思很好理解 axisymmetric 和 axisymmetric swirl 的差别:axisymmetric:是轴对称的意思,也就是关于一个坐标轴对称,2D 的 axisymmetric 问题仍为 2D 问题。而 axisymmetric swirl:是轴对称旋转的意思,就是一个区域关于一条坐标轴回转所产生的区域,这产生的将是一个回转体,是 3D 的问题。在 Fluent 中使用这个,是将一个 3D 的问题简化为 2D 问题,减少计算量,需要注意的是,在 Fluent 中,回转轴必须是 x 轴。16 在设置速度
27、边界条件时,提到了“Velocity formulation(Absolute 和 Relative)”都是指的动量方程的相对速度表示和绝对速度表示,这两个速度如何理解? 在定义速度入口边界条件时,Reference Frame 中有 Absolute 和 Relative to Adjacent Cell Zone 的选项,关于这个,Fluent 用户手册上是这样写的:“ If the cell zone adjacent to the velocity inlet is moving, you can choose to specify relative or absolute veloc
28、ities by selecting Relative to Adjacent Cell Zone or Absolute in the Reference Frame drop-down list. If the adjacent cell zone is not moving, Absolute and Relative to Adjacent Cell Zone will be equivalent, so you need not visit the list. ”如果速度入口处的单元在计算的过程中有运动发生的情况(如果你使用了运动参考系或者滑移网格),你可以选择使用指定相对于邻近单元
29、区域的速度或在参考坐标系中的绝对速度来定于入口处的速度;如果速度入口处的相邻单元在计算过程中没有发生运动,那么这两种方法所定义的速度是等价的。 Specifying Relative or Absolute Velocity If the cell zone adjacent to the wall is moving (e.g., if you are using a moving reference frame or a sliding mesh), you can choose to specify velocities relative to the zone motion by en
30、abling the Relative to Adjacent Cell Zone option. If you choose to specify relative velocities, a velocity of zero means that the wall is stationary in the relative frame, and therefore moving at the speed of the adjacent cell zone in the absolute frame. If you choose to specify absolute velocities
31、(by enabling the Absolute option), a velocity of zero means that the wall is stationary in the absolute frame, and therefore moving at the speed of the adjacent cell zone-but in the opposite direction-in the relative reference frame. If you are using one or more moving reference frames, sliding mesh
32、es, or mixing planes, and you want the wall to be fixed in the moving frame, it is recommended that you specify relative velocities (the default) rather than absolute velocities. Then, if you modify the speed of the adjacent cell zone, you will not need to make any changes to the wall velocities, as
33、 you would if you specified absolute velocities. Note that if the adjacent cell zone is not moving, the absolute and relative options are equivalent. 这个问题好像问的不是特别清楚,在 Fluent6.3 中,问题出现的这个 Velocity formulation(Absolute 和 Relative)设置,应该是设置求解器时出现的选项,在使用Pressure-based 的求解器时,Fluent 允许用户定义的速度形式有绝对的和相对的,使用相
34、对的速度形式是为了在 Fluent 中使用运动参考系以及滑移网格方便定义速度,关于这两个速度的理解很简单,可以参考上面的说明;如果使用 Density-based 的求解器,这个求解器的算法只允许统一使用绝对的速度形式。17 对于出口有回流的问题,在出口应该选用什么样的边界条件(压力出口边界条件、质量出口边界条件等)计算效果会更好?答:给定流动出口的静压。对于有回流的出口,压力出口边界条件比质量出口边界条件边界条件更容易收敛。 压力出口边界条件压力根据内部流动计算结果给定。其它量都是根据内部流动外推出边界条件。该边界条件可以处理出口有回流问题,合理的给定出口回流条件,有利于解决有回流出口问题的
35、收敛困难问题。 出口回流条件需要给定:回流总温(如果有能量方程),湍流参数(湍流计算),回流组分质量分数(有限速率模型模拟组分输运),混合物质量分数及其方差(PDF 计算燃烧)。如果有回流出现,给的表压将视为总压,所以不必给出回流压力。回流流动方向与出口边界垂直。18 对于不同求解器,离散格式的选择应注意哪些细节?实际计算中一阶迎风差分与二阶迎风差分有什么异同?离散格式对求解器性能的影响 控制方程的扩散项一般采用中心差分格式离散,而对流项则可采用多种不同的格式进行离散。Fluent 允许用户为对流项选择不同的离散格式(注意:粘性项总是自动地使用二阶精度的离散格式)。默认情况下,当使用分离式求解
36、器时,所有方程中的对流项均用一阶迎风格式离散;当使用耦合式求解器时,流动方程使用二阶精度格式,其他方程使用一阶精度格式进行离散。此外,当选择分离式求解器时,用户还可为压力选择插值方式。 当流动与网格对齐时,如使用四边形或六面体网格模拟层流流动,使用一阶精度离散格式是可以接受的。但当流动斜穿网格线时,一阶精度格式将产生明显的离散误差(数值扩散)。因此,对于 2D 三角形及 3D 四面体网格,注意使用二阶精度格式,特别是对复杂流动更是如此。一般来讲,在一阶精度格式下容易收敛,但精度较差。有时,为了加快计算速度,可先在一阶精度格式下计算,然后再转到二阶精度格式下计算。如果使用二阶精度格式遇到难于收敛
37、的情况,则可考虑改换一阶精度格式。 对于转动及有旋流的计算,在使用四边形及六面体网格式,具有三阶精度的 QUICK 格式可能产生比二阶精度更好的结果。但是,一般情况下,用二阶精度就已足够,即使使用 QUICK 格式,结果也不一定好。乘方格式(Power-law Scheme)一般产生与一阶精度格式相同精度的结果。中心差分格式一般只用于大涡模拟,而且要求网格很细的情况。19 对于 FLUENT 的耦合解算器,对时间步进格式的主要控制是 Courant 数(CFL),那么Courant 数对计算结果有何影响?courant number 实际上是指时间步长和空间步长的相对关系,系统自动减小 cou
38、rant数,这种情况一般出现在存在尖锐外形的计算域,当局部的流速过大或者压差过大时出错,把局部的网格加密再试一下。 在 Fluent 中,用 courant number 来调节计算的稳定性与收敛性。一般来说,随着 courant number 的从小到大的变化,收敛速度逐渐加快,但是稳定性逐渐降低。所以具体的问题,在计算的过程中,最好是把 courant number 从小开始设置,看看迭代残差的收敛情况,如果收敛速度较慢而且比较稳定的话,可以适当的增加courant number 的大小,根据自己具体的问题,找出一个比较合适的 courant number,让收敛速度能够足够的快,而且能够
39、保持它的稳定性。20 在分离求解器中,FLUENT 提供了压力速度耦和的三种方法:SIMPLE,SIMPLEC 及PISO,它们的应用有什么不同在 FLUENT 中,可以使用标准 SIMPLE 算法和 SIMPLEC(SIMPLE-Consistent)算法,默认是 SIMPLE 算法,但是对于许多问题如果使用 SIMPLEC 可能会得到更好的结果,尤其是可以应用增加的亚松驰迭代时,具体介绍如下: 对于相对简单的问题(如:没有附加模型激活的层流流动),其收敛性已经被压力速度耦合所限制,你通常可以用 SIMPLEC 算法很快得到收敛解。在 SIMPLEC 中,压力校正亚松驰因子通常设为 1.0,
40、它有助于收敛。但是,在有些问题中,将压力校正松弛因子增加到 1.0 可能会导致不稳定。 对于所有的过渡流动计算,强烈推荐使用 PISO 算法邻近校正。它允许你使用大的时间步,而且对于动量和压力都可以使用亚松驰因子 1.0。对于定常状态问题,具有邻近校正的 PISO 并不会比具有较好的亚松驰因子的 SIMPLE 或 SIMPLEC 好。对于具有较大扭曲网格上的定常状态和过渡计算推荐使用 PISO 倾斜校正。当你使用 PISO 邻近校正时,对所有方程都推荐使用亚松驰因子为1.0 或者接近 1.0。如果你只对高度扭曲的网格使用 PISO 倾斜校正,请设定动量和压力的亚松驰因子之和为 1.0 比如:压
41、力亚松驰因子 0.3,动量亚松驰因子 0.7)。如果你同时使用 PISO 的两种校正方法,推荐参阅 PISO 邻近校正中所用的方法21 对于大多数情况,在选择选择压力插值格式时,标准格式已经足够了,但是对于特定的某些模型使用其它格式有什么特别的要求?压力插值方式的列表只在使用 Pressure-based 求解器中出现。一般情况下可选择Standard;对于含有高回旋数的流动,高 Rayleigh 数的自然对流,高速旋转流动,多孔介质流动,高曲率计算区域等流动情况,选择 PRESTO 格式;对于可压缩流动,选择 Second Order;当然也可以选择 Second Order 以提高精度;对
42、于含有大体力的流动,选择 Body Force Weighted。注意:Second Order 格式不可以用于多孔介质;在使用 VOF 和 Mixture多相流模型时,只能使用 PRESTO 或 Body Force Weighted 格式。关于压力插值格式的详细内容,请参考 Fluent 用户手册22 讨论在数值模拟过程中采用四面体网格计算效果好,还是采用六面体网格更妙呢?在 2D 中,FLUENT 可以使用三角形和四边形单元以及它们的混合单元所构成的网格。在 3D 中,它可以使用四面体,六面体,棱锥,和楔形单元所构成的网格。选择那种类型的单元取决于你的应用。当选择网格类型的时候,应当考虑
43、以下问题: 设置时间(setup time) 计算成本(computational expense) 数值耗散(numerical diffusion )1.设置时间 在工程实践中,许多流动问题都涉及到比较复杂的几何形状。一般来说,对于这样的问题,建立结构或多块(是由四边形或六面体元素组成的)网格是极其耗费时间的。所以对于复杂几何形状的问题,设置网格的时间是使用三角形或四面体单元的非结构网格的主要动机。然而,如果所使用的几何相对比较简单,那么使用哪种网格在设置时间方面可能不会有明显的节省。 如果你已经有了一个建立好的结构代码的网格,例如 FLUENT 4,很明显,在 FLUENT 中使用这个网
44、格比重新再生成一个网格要节省时间。这也许是你在FLUENT 模拟中使用四边形或六面体单元的一个非常强的动机。注意,对于从其它代码导入结构网格,包括 FLUENT 4,FLUENT 有一个筛选的范围。 2.计算成本 当几何比较复杂或流程的长度尺度的范围比较大的时候,可以创建是一个三角形/四面体网格,因为它与由四边形/六面体元素所组成的且与之等价的网格比较起来,单元要少的多。这是因为一个三角形/ 四面体网格允许单元群集在被选择的流动区域中,而结构四边形/六面体网格一般会把单元强加到所不需要的区域中。对于中等复杂几何,非结构四边形/六面体网格能构提供许多三角形/ 四面体网格所能提供的优越条件。 在一
45、些情形下使用四边形/六面体元素是比较经济的,四边形/六面体元素的一个特点是它们允许一个比三角形/四面体单元大的多的纵横比。一个三角形/ 四面体单元中的一个大的纵横比总是会影响单元的偏斜(skewness),而这不是所希望的,因为它可能妨碍计算的精确与收敛。所以,如果你有一个相对简单的几何,在这个几何中流动与几何形状吻合的很好,例如一个瘦长管道,你可以运用一个高纵横比的四边形/六面体单元的网格。这个网格拥有的单元可能比三角形/ 四面体少的多。3.数值耗散 在多维情形中,一个错误的主要来源是数值耗散,术语也为伪耗散(false diffusion)。之所以称为“伪耗散”是因为耗散不是一个真实现象,
46、而是它对一个流动计算的影响近似于增加真实耗散系数的影响。 关于数值耗散的观点有: 当真实耗散小,即情形出现对流受控时(即本身物理耗散比较小时),数值的耗散是最值得注意的。 关于流体流动的所有实际的数值设计包括有限数量的数值耗散。这是因为数值耗散起于切断错误,而切断错误是一个表达离散形式的流体流动方程的结果。 用于 FLUENT 中的二阶离散方案有助于减小数值耗散对解的影响。 数值耗散的总数反过来与网格的分解有关。因此,处理数值耗散的一个方法是改进网格。 当流动与网格相吻一致时,数值耗散减到最小。 最后这一点与网格的选择非常有关。很明显,如果你选择一个三角形/ 四面体网格,那么流动与网格总不能一
47、致。另一方面,如果你使用一个四边形/六面体网格,这种情况也可能会发生,但对于复杂的流动则不会。在一个简单流动中,例如过一长管道的流动,你可以依靠一个四边形/六面体网格以尽可能的降低数值的耗散。在这种情形,使用一个四边形/六面体网格可能有些有利条件,因为与使用一个三角形/ 四面体单元比起来,你将能够使用比较少的单元而得到一个更好的解。23 在 UDF 中 compiled 型的执行方式和 interpreted 型的执行方式有什么不同编译型 UDF: 采用与 FLUENT 本身执行命令相同的方式构建的。采用一个称为Makefile 的脚本来引导 c 编译器构造一个当地目标编码库(目标编码库包含有
48、将高级 c 语言源代码转换为机器语言。)这个共享库在运行时通过“动态加载”过程载入到 FLUENT 中。目标库特指那些使用的计算机体系结构,和运行的特殊 FLUENT 版本。因此,FLUENT 版本升级,计算机操作系统改变以及在另一台不同类型的计算机上运行时,这个库必须进行重构。 编译型 UDF 通过用户界面将原代码进行编译,分为两个过程。这两个过程是:访问编译 UDF 面板,从源文件第一次构建共享库的目标文件中;然后加载共享库到 FLUENT 中。 采用与 FLUENT 本身执行命令相同的方式构建的。采用一个称为 Makefile 的脚本来引导 c 编译器构造一个当地目标编码库(目标编码库包
49、含有将高级 c 语言源代码转换为机器语言。)这个共享库在运行时通过“动态加载”过程载入到 FLUENT 中。目标库特指那些使用的计算机体系结构,和运行的特殊 FLUENT 版本。因此,FLUENT 版本升级,计算机操作系统改变以及在另一台不同类型的计算机上运行时,这个库必须进行重构。 编译型UDF 通过用户界面将原代码进行编译,分为两个过程。这两个过程是:访问编译 UDF 面板,从源文件第一次构建共享库的目标文件中;然后加载共享库到 FLUENT 中。解释型 UDF: 解释型 UDF 同样也是通过图形用户界面解释原代码,却只有单一过程。这一过程伴随着运行,包含对解释型 UDF 面板的访问,这一面板位于源文件中的解释函数。在 FLUENT 内部,源代码通过 c 编译器被编译为即时的、体系结构独立的机器语言。UDF 调用时,机器编码通过内部模拟器或者解释器执行。额外层次的代码导致操作不利,但是允许解释型 UDF 在不同计算结构,操作系统和 FLUENT 版本上很容易实现共享。如果迭代速度成为焦点时,解释型 UDF 可以不用修改就用编译编码直接运行。 解释型 UDF 使用的解释器不需要有标准的 c 编译器的所有功能。特别是解释型 UDF 不含有下列 C 程序语言部分: goto 语