CFD常见问题(转载)

2017-02-21  by:CAE仿真在线  来源:互联网

1、流场数值计算的目的是什么?主要方法有哪些?其基本思路是什么?各自的适用范围是什么? 答:这个问题的范畴好大啊。简要的说一下个人的理解吧:流场数值求解的目的就是为了得到某个流动状态下的相关参数,这样可以节省实验经费,节约实验时间,并且可以模拟一些不可能做实验的流动状态。主要方法有有限差分,有限元和有限体积法,好像最近还有无网格法和波尔兹曼 法(格子法)。基本思路都是将复杂的非线性差分/积分方程简化成简单的代数方程。相对来说,有限差分法对网格的要求较高,而其他的方法就要灵活的多。 2、可压缩流动和不可压缩流动,在数值解法上各有何特点?为何不可压缩流动在求解时反而比可压缩流动有更多的困难? 答:注:这个问题不是一句两句话就能说清楚的,大家还是看下面的两篇小文章吧,摘自《计算流体力学应用》,读完之后自有体会。 3、可压缩Euler及Navier-Stokes方程数值解 描述无粘流动的基本方程组是Euler方程组,描述粘性流动的基本方程组是Navier-Stokes方程组。用数值方法通过求解Euler方程和Navier-Stokes方程模拟流场是计算流体动力学的重要内容之一。由于飞行器设计实际问题中的绝大多数流态都具有较高的雷诺数,这些流动粘性区域很小,由 对流作用主控,因此针对Euler方程发展的计算方法,在大多数情况下对Navier-Stokes方程也是有效的,只需针对粘性项用中心差分离散。 用数值方法求解无粘Euler方程组的历史可追溯到20世纪50年代,具有代表性的方法是1952年Courant等人以及1954年Lax和Friedrichs提出的一阶方法。从那时开始,人们发展了大量的差分格式。Lax和Wendroff的开创性工作是非定常Euler(可压缩Navier-Stokes)方程组数值求解方法发展的 里程碑。二阶精度Lax-Wendroff格式应用于非线性方程组派生出了一类格式,其共同特点是格式空间对称,即在空间上对一维问题是三点中心格式,在时间上是显式格式,并且该类格式是从时间空间混合离散中导出的。该类格式中最流行的是MacCormack格式。 采用时空混合离散方法,其数值解趋近于定常时依赖于计算中采用的时间步长。尽管由时间步长项引起的误差与截断误差在数量级上相同,但这却体现了一个概念上的缺陷,因为在计算得到的定常解中引进了一个数值参数。将时间积分从空间离散中分离出来就避免了上述缺陷。常用的时空 分别离散格式有中心型格式和迎风型格式。空间二阶精度的中心型格式(一维问题是三点格式)就属于上述范畴。该类格式最具代表性的是Beam-Warming隐式格式和Jameson等人采用的Runge-Kutta时间积分方法发展的显式格式。迎风型差分格式共同特点是所建立起的特征传播特性与差分空间 离散方向选择的关系是与无粘流动的物理特性一致的。第一个显式迎风差分格式是由Courant等人构造的,并推广为二阶精度和隐式时间积分方法。基于通量方向性离散的Steger-Warming和Van Leer矢通量分裂方法可以认为是这类格式的一种。该类格式的第二个分支是Godunov方法,该方法在每个网格步求解描述相邻间断(Riemann问题)的当地一维Euler方程。根据这一方法Engquist、Osher和Roe等人构造了一系列引入近似Riemann算子的格式,这就是著名的通量差分方法。 对于没有大梯度的定常光滑流动,所有求解Euler方程格式的计算结果都是令人满意的,但当出现诸如激波这样的间断时,其表现确有很大差异。绝大多数最初发展起来的格式,如Lax-Wendroff格式中心型格式,在激波附近会产生波动。人们通过引入人工粘性构造了各种方法来控制和限制?庑┎ǘT谝桓鍪逼诶铮饫喔袷皆诟丛恿鞒〖扑阒械玫搅擞τ谩H欢捎诟袷街泻凶杂刹问圆煌侍庖械髡唤龈褂蒙洗戳酥疃嗖槐悖腋袷蕉约げǚ直媛适艿接跋欤蚨湓诟丛恿鞫扑阒械挠τ檬艿搅艘欢ㄏ拗啤? 另外一种方法是力图阻止数值波动的产生,而不是在其产生后再进行抑制。这种方法是建立在非线性限制器的概念上,这一概念最初由Boris和Book及Van Leer提出,并且通过Harten发展的总变差减小(TVD, Total Variation Diminishing)的重要概念得以实现。通过这一途径,数值解的变化以非线性的方式得以控制。这一类格式的研究和应用,在20世纪80年代形成了一股发展浪潮。1988年,张涵信和庄逢甘利用热力学熵增原理,通过对差分格式修正方程式的分析,构造了满足熵增条件能够捕捉激波的无波动、 无自由参数的耗散格式(NND格式)。该类格式在航空航天飞行器气动数值模拟方面得到了广泛应用。 1987年,Harten和Osher指出,TVD格式最多能达到二阶精度。为了突破这一精度上的限制引入了实质上无波动(ENO)格式的概念。该类格式“几乎是TVD”的,Harten因此推断这些格式产生的数值解是一致有界的。继Harten和Osher之后,Shu和Osher将ENO格式从一维推广到多维。J.Y.Yang在 三阶精度ENO差分格式上也做了不少工作。1992年,张涵信另辟蹊径,在NND格式的基础上,发展了一种能捕捉激波的实质上无波动、无自由参数的三阶精度差分格式(简称ENN格式)。1994年,Liu、Osher和Chan发展了WENO(Weighted Essentially Non-Oscillatory)格式。WENO格式是基于ENO格式构造的高阶混合格式,它在保持了ENO格式优点的同时,计算流场中虚假波动明显减少。此后,Jiang提出了一种新的网格模板光滑程度的度量方法。目前高阶精度格式的研究与应用是计算流体力学的热点问题之一。 不可压缩Navier-Stokes方程求解 不可压缩流体力学数值解法有非常广泛的需求。从求解低速空气动力学问题,推进器内部流动,到水动力相关的液体流动以及生物流体力学等。满足这么广泛问题的研究,要求有与之相应的较好的物理问题的数学模型以及鲁棒的数值算法。 相对于可压缩流动,不可压缩流动的数值求解困难在于,不可压缩流体介质的密度保持常数,而状态方程不再成立,连续方程退化为速度的散度为零的方程。由此,在可压缩流动的计算中可用于求解密度和压力的连续方程在不可压缩流动求解中仅是动量方程的一个约束条件,由此求解不可 压缩流动的压力称为一个困难。求解不可压缩流动的各种方法主要在于求解不同的压力过程。 目前,主要有两类求解不可压缩流体力学的方法,原始变量方法和非原始变量方法。求解不可压缩流动的原始变量方法是将Navier-Stokes方程写成压力和速度的形式,进行直接求解,这种形式已被广为应用。非原始变量方法主要有Fasel提出的流函数-涡函数法、Aziz和Hellums提出的势函 数-涡函数方法。在求解三维流动问题时,上述每一个方法都需要反复求解三个Possion方程,非常耗时。原始变量方法可以分为三类:第一种方法是Harlow和Welch首先提出的压力Possion方程方法。该方法首先将动量方程推进求得速度场,然后利用Possion方程求解压力,这一种方法由于?恳皇奔洳缴闲枰蠼釶ossion方程,求解非常耗时。第二种方法是Patanker和Spalding的SIMPLE(Semi-Implicit Method for Pressure-Linked Equation)法,它是通过动量方程求得压力修正项对速度的影响,使其满足速度散度等于零的条件作为压力控制方程。第三种方法是虚拟压缩方法,这一方法是Chorin于1967年提出的。该方法的核心就是通过在连续方程中引入一个虚拟压缩因子,再附加一项压力的虚拟时间导数,使压力显?降赜胨俣攘灯鹄矗狈匠桃脖涑闪怂头匠獭U庋匠痰男问骄陀肭蠼饪裳顾趿鞫姆匠滔嗨疲虼耍矶嗲蠼饪裳顾趿鞫某墒旆椒ǘ伎捎糜诓豢裳顾趿鞫那蠼狻? 目前,由于基于求解压力Possion方程的方法非常复杂及耗时,难于求解具体的工程实际问题,因此用此方法解决工程问题的工作越来越少。工程上常用的主要是SIMPLE方法和虚拟压缩方法。 4、什么叫边界条件?有何物理意义?它与初始条件有什么关系? 边界条件与初始条件是控制方程有确定解的前提。 边界条件是在求解区域的边界上所求解的变量或其导数随时间和地点的变化规律。对于任何问题,都需要给定边界条件。 初始条件是所研究对象在过程开始时刻各个求解变量的空间分布情况,对于瞬态问题,必须给定初始条件,稳态问题,则不用给定。对于边界条件与初始条件的处理,直接影响计算结果的精度。 在瞬态问题中,给定初始条件时要注意的是:要针对所有计算变量,给定整个计算域内各单元的初始条件;初始条件一定是物理上合理的,要靠经验或实测结果。 5、在数值计算中,偏微分方程的双曲型方程、椭圆型方程、抛物型方程有什么区别? 我们知道很多描述物理问题的控制方程最终就可以归结为偏微分方程,描述流动的控制方程也不例外。 从数学角度,一般将偏微分方程分为椭圆型(影响域是椭圆的,与时间无关,且是空间内的闭区域,故又称为边值问题),双曲型(步进问题,但依赖域仅在两条特征区域之间),抛物型(影响域以特征线为分界线,与主流方向垂直;具体来说,解的分布与瞬时以前的情况和边界条件相关 ,下游的变化仅与上游的变化相关;也称为初边值问题); 从物理角度,一般将方程分为平衡问题(或稳态问题),时间步进问题。 两种角度,有这样的关系:椭圆型方程描述的一般是平衡问题(或稳态问题),双曲型和抛物型方程描述的一般是步进问题。 至于具体的分类方法,大家可以参考一般的偏微分方程专著,里面都有介绍。关于各种不同近似水平的流体控制方程的分类,大家可以参考张涵信院士编写《计算流体力学—差分方法的原理与应用》里面讲的相当详细。 三种类型偏微分方程的基本差别如下: 1)三种类型偏微分方程解的适定性(即解存在且唯一,并且解稳定)要求对定解条件有不同的提法; 2)三种类型偏微分方程解的光滑性不同,对定解条件的光滑性要求也不同; 椭圆型和抛物型方程的解是充分光滑的,因此对定解条件的光滑性要求不高。而双曲型方程允许有所谓的弱解存在(如流场中的激波),即解的一阶导数可以不连续,所以对定解条件的光滑性要求很高,这也正是采用有限元法求解双曲型方程困难较多的原因之一。 3)三种类型偏微分方程的影响区域和依赖区域不一样。 在双曲型和抛物型方程所控制的流场中,某一点的影响区域是有界的,可采用步进求解。如对双曲型方程求解时,为了与影响区域的特征一致,采用上风格式比较适宜。而椭圆型方程的影响范围遍及全场,必须全场求解,所采用的差分格式也要采用相应的中心格式。 6、在网格生成技术中,什么叫贴体坐标系?什么叫网格独立解? 数值计算的与实验值之间的误差来源只要有这几个:物理模型近似误差(无粘或有粘,定常与非定常,二维或三维等等),差分方程的截断误差及求解区域的离散误差(这两种误差通常统称为离散误差),迭代误差(离散后的代数方程组的求解方法以及迭代次数所产生的误差),舍入误差 (计算机只能用有限位存储计算物理量所产生的误差)等等。在通常的计算中,离散误差随网格变细而减小,但由于网格变细时,离散点数增多,舍入误差也随之加大。 由此可见,网格数量并不是越多越好的。 再说说网格无关性的问题,由上面的介绍,我们知道网格数太密或者太疏都可能产生误差过大的计算结果,网格数在一定的范围内的结果才与实验值比较接近,这样在划分网格时就要求我们首先依据已有的经验大致划分一个网格进行计算,将计算结果(当然这个计算结果必须是收敛的)与 实验值进行比较(如果没有实验值,则不需要比较,后面的比较与此类型相同),再酌情加密或减少网格,再进行计算,再与实验值进行比较,并与前一次计算结果比较,如果两次的计算结果相差较小(例如在2%),说明这一范围的网格的计算结果是可信的,说明计算结果是网格无关的。 再加密网格已经没有什么意义(除非你要求的计算精度较高)。但是,如果你用粗网格也能得到相差很小的计算结果,从计算效率上讲,你就可以完全使用粗网格去完成你的计算。加密或者减少网格数量,你可以以一倍的量级进行。 7、在GAMBIT中显示的“check”主要通过哪几种来判断其网格的质量?及其在做网格时大致注意到哪些细节? 判断网格质量的方面有: Area单元面积,适用于2D单元,较为基本的单元质量特征。 Aspect Ratio长宽比,不同的网格单元有不同的计算方法,等于1是最好的单元,如正三角形,正四边形,正四面体,正六面体等;一般情况下不要超过5:1. Diagonal Ratio对角线之比,仅适用于四边形和六面体单元,默认是大于或等于1的,该值越高,说明单元越不规则,最好等于1,也就是正四边形或正六面体。 Edge Ratio长边与最短边长度之比,大于或等于1,最好等于1,解释同上。 EquiAngle Skew通过单元夹角计算的歪斜度,在0到1之间,0为质量最好,1为质量最差。最好是要控制在0到0.4之间。 EquiSize Skew通过单元大小计算的歪斜度,在0到1之间,0为质量最好,1为质量最差。2D质量好的单元该值最好在0.1以内,3D单元在0.4以内。 MidAngle Skew通过单元边中点连线夹角计算的歪斜度,仅适用于四边形和六面体单元,在0到1之间,0为质量最好,1为质量最差。 Size Change相邻单元大小之比,仅适用于3D单元,最好控制在2以内。 Stretch伸展度。通过单元的对角线长度与边长计算出来的,仅适用于四边形和六面体单元,在0到1之间,0为质量最好,1为质量最差。 Taper锥度。仅适用于四边形和六面体单元,在0到1之间,0为质量最好,1为质量最差。 Volume单元体积,仅适用于3D单元,划分网格时应避免出现负体积。 Warpage翘曲。仅适用于四边形和六面体单元,在0到1之间,0为质量最好,1为质量最差。 以上只是针对Gambit帮助文件的简单归纳,不同的软件有不同的评价单元质量的指标,使用时最好仔细阅读帮助文件。 另外,在Fluent中的窗口键入:grid quality 然后回车,Fluent能检查网格的质量,主要有以下三个指标: 1.Maxium cell squish: 如果该值等于1,表示得到了很坏的单元; 2.Maxium cell skewness: 该值在0到1之间,0表示最好,1表示最坏; 3.Maxium 'aspect-ratio': 1表示最好。 8、在两个面的交界线上如果出现网格间距不同的情况时,即两块网格不连续时,怎么样克服这种情况呢? 这个问题就是非连续性网格的设置,一般来说就是把两个交接面设置为一对interface。 另外,作此操作可能出现的问题及可供参考的解决方法为: 问题:把两个面(其中一个实际是由若干小面组成,将若干小面定义为了group了)拼接在一起,也就是说两者之间有流体通过,两个面个属不同的体,网格导入到fluent时,使用interface时出现网格check的错误,将interface的边界条件删除,就不会发生网格检查的错误,如何将两个面的 网格相连? 原因:interface后的两个体的交接面,fluent以将其作为内部流体处理(非重叠部分默认为wall,合并后网格会在某些地方发生畸变,导致合并失败,也可能准备合并的两个面几何位置有误差,应该准确的在同一几何位置(合并的面大小相等时),在合并之前要合理分块。 解决方法:为了避免网格发生畸变(可能一个面上的网格跑到另外的面上了),可以一面网格粗,一面网格细避免; 再者就是通过将一个面的网格直接映射到另一面上的,两个面默认为interior.也可以将网格拼接一起. 9、在设置GAMBIT边界层类型时需要注意的几个问题:a、没有定义的边界线如何处理?b、计算域内的内部边界如何处理(2D)? 答:gambit默认为wall,一般情况下可以到fluent再修改边界类型。 内部边界如果是split产生的,那么就不需再设定了,如果不是,那么就需要设定为interface或者是internal 10、为何在划分网格后,还要指定边界类型和区域类型?常用的边界类型和区域类型有哪些? 答:要得到一个问题的定解就需要有定解条件,而边界条件就属于定解条件。也就是说边界条件确定了结果。不同的流体介质有不同的物理属性,也就会得到不同的结果,所以必须指定区域类型。对于gambit来说,默认的区域类型是fluid,所以一般情况下不需要再指定 20 何为流体区域(fluid zone)和固体区域(solid zone)?为什么要使用区域的概念?FLUENT是怎样使用区域的? Fluid Zone是一个单元组,是求解域内所有流体单元的综合。所激活的方程都要在这些单元上进行求解。向流体区域输入的信息只是流体介质(材料)的类型。对于当前材料列表中没有的材料,需要用户自行定义。注意,多孔介质也当作流体区域对待。 Solid Zone也是一个单元组,只不过这组单元仅用来进行传热计算,不进行任何的流动计算。作为固体处理的材料可能事实上是流体,但是假定其中没有对流发生,固体区域仅需要输入材料类型。 Fluent中使用Zone的概念,主要是为了区分分块网格生成,边界条件的定义等等; 21 如何监视FLUENT的计算结果?如何判断计算是否收敛?在FLUENT中收敛准则是如何定义的?分析计算收敛性的各控制参数,并说明如何选择和设置这些参数?解决不收敛问题通常的几个解决方法是什么? 可以采用残差控制面板来显示;或者采用通过某面的流量控制;如监控出口上流量的变化;采用某点或者面上受力的监视;涡街中计算达到收敛时,绕流体的面上受的升力为周期交变,而阻力为平缓的直线。 怎样判断计算结果是否收敛? 1、观察点处的值不再随计算步骤的增加而变化; 2、各个参数的残差随计算步数的增加而降低,最后趋于平缓; 3、要满足质量守恒(计算中不牵涉到能量)或者是质量与能量守恒(计算中牵涉到能量)。 特别要指出的是,即使前两个判据都已经满足了,也并不表示已经得到合理的收敛解了,因为,如果松弛因子设置得太紧,各参数在每步计算的变化都不是太大,也会使前两个判据得到满足。此时就要再看第三个判据了。 还需要说明的就是,一般我们都希望在收敛的情况下,残差越小越好,但是残差曲线是全场求平均的结果,有时其大小并不一定代表计算结果的好坏,有时即使计算的残差很大,但结果也许是好的,关键是要看计算结果是否符合物理事实,即残差的大小与模拟的物理现象本身的复杂性有关?匦氪邮导饰锢硐窒笊峡醇扑憬峁1热缢狄桓鋈P停诖蠊ソ乔榭鱿?解震荡得非常厉害,而且残差的量级也总下不去,但这仍然是正确的,为什么呢,因为大攻角下实际流动情形就是这样的,不断有涡的周期性脱落,流场本身就是非定常的,所以解也是波动的,处理的时候取平均?涂梢阅? 22 什么叫松弛因子?松弛因子对计算结果有什么样的影响?它对计算的收敛情况又有什么样的影响? 1、亚松驰(Under Relaxation):所谓亚松驰就是将本层次计算结果与上一层次结果的差值作适当缩减,以避免由于差值过大而引起非线性迭代过程的发散。用通用变量来写出时,为松驰因子(Relaxation Factors)。《数值传热学-214》 2、FLUENT中的亚松驰:由于FLUENT所解方程组的非线性,我们有必要控制的变化。一般用亚松驰方法来实现控制,该方法在每一部迭代中减少了的变化量。亚松驰最简单的形式为:单元内变量等于原来的值 加上亚松驰因子a与 变化的积, 分离解算器使用亚松驰来控制每一步迭代中的计算变量的更新。这就意味着使用分离解算器解的方程,包括耦合解算器所解的非耦合方程(湍流和其他标量)都会有一个相关的亚松驰因子。在FLUENT中,所有变量的默认亚松驰因子都是对大多数问题的最优值。这个值适合于很多问题,但是 对于一些特殊的非线性问题(如:某些湍流或者高Rayleigh数自然对流问题),在计算开始时要慎重减小亚松驰因子。使用默认的亚松驰因子开始计算是很好的习惯。如果经过4到5步的迭代残差仍然增长,你就需要减小亚松驰因子。有时候,如果发现残差开始增加,你可以改变亚松驰因子 重新计算。在亚松驰因子过大时通常会出现这种情况。最为安全的方法就是在对亚松驰因子做任何修改之前先保存数据文件,并对解的算法做几步迭代以调节到新的参数。最典型的情况是,亚松驰因子的增加会使残差有少量的增加,但是随着解的进行残差的增加又消失了。如果残差变化有 几个量级你就需要考虑停止计算并回到最后保存的较好的数据文件。注意:粘性和密度的亚松驰是在每一次迭代之间的。而且,如果直接解焓方程而不是温度方程(即:对PDF计算),基于焓的温度的更新是要进行亚松驰的。要查看默认的亚松弛因子的值,你可以在解控制面板点击默认按?ァ6杂诖蠖嗍鞫恍枰薷哪涎撬沙谝蜃印5牵绻鱿植晃榷ɑ蛘叻⑸⒛憔托枰跣∧系难撬沙谝蜃恿耍渲醒沽Α⒍俊和e的亚松弛因子默认值分别为0.2,0.5,0.5和0.5。对于SIMPLEC格式一般不需要减小压力的亚松弛因子。在密度和温度强烈耦合的问题中,如相当高 的Rayleigh数的自然或混合对流流动,应该对温度和/或密度(所用的亚松弛因子小于1.0)进行亚松弛。相反,当温度和动量方程没有耦合或者耦合较弱时,流动密度是常数,温度的亚松弛因子可以设为1.0。对于其它的标量方程,如漩涡,组分,PDF变量,对于某些问题默认的亚松弛可能 过大,尤其是对于初始计算。你可以将松弛因子设为0.8以使得收敛更容易。 SIMPLE与SIMPLEC比较 在FLUENT中,可以使用标准SIMPLE算法和SIMPLEC(SIMPLE-Consistent)算法,默认是SIMPLE算法,但是对于许多问题如果使用SIMPLEC可能会得到更好的结果,尤其是可以应用增加的亚松驰迭代时,具体介绍如下: 对于相对简单的问题(如:没有附加模型激活的层流流动),其收敛性已经被压力速度耦合所限制,你通常可以用SIMPLEC算法很快得到收敛解。在SIMPLEC中,压力校正亚松驰因子通常设为1.0,它有助于收敛。但是,在有些问题中,将压力校正松弛因子增加到1.0可能会导致不稳定。对于 所有的过渡流动计算,强烈推荐使用PISO算法邻近校正。它允许你使用大的时间步,而且对于动量和压力都可以使用亚松驰因子1.0。对于定常状态问题,具有邻近校正的PISO并不会比具有较好的亚松驰因子的SIMPLE或SIMPLEC好。对于具有较大扭曲网格上的定常状态和过渡计算推荐使用PI SO倾斜校正。当你使用PISO邻近校正时,对所有方程都推荐使用亚松驰因子为1.0或者接近1.0。如果你只对高度扭曲的网格使用PISO倾斜校正,请设定动量和压力的亚松驰因子之和为1.0比如:压力亚松驰因子0.3,动量亚松驰因子0.7)。如果你同时使用PISO的两种校正方法,推荐参阅PIS O邻近校正中所用的方法 23 在FLUENT运行过程中,经常会出现“turbulence viscous rate”超过了极限值,此时如何解决?而这里的极限值指的是什么值?修正后它对计算结果有何影响 Let's 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 you have?} 2)Use of improper turbulent boudary conditions. 3)Not supplying good initial values for turbulent quantities. 出现这个警告,一般来讲,最可能的就是网格质量的问题,尤其是Y+值的问题;在划分网格的时候要注意,第一层网格高度非常重要,可以使用NASA的Viscous Grid Space Calculator来计算第一层网格高度;如果这方面已经注意了,那就可能是边界条件中有关湍流量的设置问题, 24 在FLUENT运行计算时,为什么有时候总是出现“reversed flow”?其具体意义是什么?有没有办法避免?如果一直这样显示,它对最终的计算结果有什么样的影响? 这个问题的意思是出现了回流,这个问题相对于湍流粘性比的警告要宽松一些,有些case可能只在计算的开始阶段出现这个警告,随着迭代的计算,可能会消失,如果计算一段时间之后,警告消失了,那么对计算结果是没有什么影响的,如果这个警告一直存在,可能需要作以下处理: 1.如果是模拟外部绕流,出现这个警告的原因可能是边界条件取得距离物体不够远,如果边界条件取的足够远,该处可能在计算的过程中的确存在回流现象;对于可压缩流动,边界最好取在10倍的物体特征长度之处;对于不可压缩流动,边界最好取在4倍的物体特征长度之处。 2.如果出现了这个警告,不论对于外部绕流还是内部流动,可以使用pressure-outlet边界条件代替outflow边界条件改善这个问题。 26 什么叫问题的初始化?在FLUENT中初始化的方法对计算结果有什么样的影响?初始化中的“patch”怎么理解? 问题的初始化就是在做计算时,给流场一个初始值,包括压力、速度、温度和湍流系数等。理论上,给的初始场对最终结果不会产生影响,因为随着跌倒步数的增加,计算得到的流场会向真实的流场无限逼近,但是,由于Fluent等计算软件存在像离散格式精度(会产生离散误差)和截断误 差等问题的限制,如果初始场给的过于偏离实际物理场,就会出现计算很难收敛,甚至是刚开始计算就发散的问题。因此,在初始化时,初值还是应该给的尽量符合实际物理现象。这就要求我们对要计算的物理场,有一个比较清楚的理解。 初始化中的patch就是对初始化的一种补充,比如当遇到多相流问题时,需要对各相的参数进行更细的限制,以最大限度接近现实物理场。这些就可以通过patch来实现,patch可以对流场分区进行初始化,还可以通过编写简单的函数来对特定区域初始化。 27 什么叫PDF方法?FLUENT中模拟煤粉燃烧的方法有哪些? 概率密度函数输运输运方程方法(PDF方法)是近年来逐步建立起来的描述湍流两相流动的新模型方法。所谓的概率密度函数(Probability Density Function,简称PDF)方法是基于湍流场随机性和概率统计描述,将流场的速度、温度和组分浓度等特征量作为随机变量,研究其概率密度函数在相空间的传递行为的研究方法。PDF模型介于统观模拟和细观模拟之间,是从随机运动的分子动力论和两相湍流的基本守恒定律出发,探讨两相湍流 的规律,因此可作为发展双流体模型框架内两相湍流模型的理论基础。它实质上是沟通E-L模型和E-E模型的桥梁,可以用颗粒运动的拉氏分析通过统计理论,即PDF方程的积分建立封闭的E-E两相湍流模型 非预混湍流燃烧过程的正确模拟要求同时模拟混合和化学反应过程。FLUENT 提供了四种反应模拟方法:即有限率反应法、混合分数PDF 法、不平衡(火焰微元)法和预混燃烧法。火焰微元法是混合分数PDF 方法的一种特例。该方法是基于不平衡反应的,混合分数PDF 法不能模拟的不平衡现象如火焰的悬举和熄灭,NOx 的形成等都可用该方法模拟。但由于该方法还未完善,在FLUENT 只能适用于绝热模型。 对许多燃烧系统,辐射式主要的能量传输方式,因此在模拟燃烧系统时,对辐射能量的传输的模拟也是非常重要的。在FLUENT 中,对于模拟该过程的模型也是非常全面的。包括DTRM、P-1、Rosseland、DO 辐射模型,还有用WSGG 模型来模拟吸收系数。 30 FLUENT运行过程中,出现残差曲线震荡是怎么回事?如何解决残差震荡的问题?残差震荡对计算收敛性和计算结果有什么影响? 31 数值模拟过程中,什么情况下出现伪扩散的情况?以及对于伪扩散在数值模拟过程中如何避免? 假扩散(false diffusion)的含义: 基本含义:由于对流—扩散方程中一阶导数项的离散格式的截断误差小于二阶而引起较大数值计算误差的现象。有的文献中将人工粘性(artificial viscosity)或数值粘性(numerical viscosity)视为它的同义词。 拓宽含义:现在通常把以下三种原因引起的数值计算误差都归在假扩散的名称下 1.非稳态项或对流项采用一阶截差的格式; 2.流动方向与网格线呈倾斜交叉(多维问题); 3.建立差分格式时没有考虑到非常数的源项的影响。 克服或减轻假扩散的格式或方法, 为克服或减轻数值计算中的假扩散(包括流向扩散及交叉扩散)误差,应当: 1. 采用截差阶数较高的格式; 2. 减轻流线与网格线之间的倾斜交叉现象或在构造格式时考虑到来流方向的影响。 3. 至于非常数源项的问题,目前文献中,还没有为克服这种影响而专门构造的格式,但是高阶格式显然对减轻其影响是有利的。 32 FLUENT轮廓(contour)显示过程中,有时候标准轮廓线显示通常不能精确地显示其细节,特别是对于封闭的3D物体(如柱体),其原因是什么?如何解决? FLUENT等高线(contour)显示过程中,可以通过调节显示的水平等级来调节其显示细节,Levels...最大值允许设置为100.对于封闭的3D物体,可以通过建立Surface,监视Surface上的量来显示计算结果。或者计算之后将结果导入到Tecplot中,作切片图显示。 33 如果采用非稳态计算完毕后,如何才能更形象地显示出动态的效果图? 对于非定常计算,可以通过创建动画来形象地显示出动态的效果图。 Solve->Animate->Define...,具体操作请参考Fluent用户手册。 34 在FLUENT的学习过程中,通常会涉及几个压力的概念,比如压力是相对值还是绝对值?参考压力有何作用?如何设置和利用它? 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 PRESSURE = Pt - INITIAL Gauge PRESSURE 35 在FLUENT结果的后处理过程中,如何将美观漂亮的定性分析的效果图和定量分析示意图插入到论文中来说明问题? 三种方法来得到用于插入到论文的图片: 1.在Fluent中显示你想得到的效果图的窗口,可以直接在任务栏中右键该窗口将其复制到剪贴板,保存;或者打印到文件,保存。 2.在Fluent中,在你想要保存相关窗口的效果图时,首先激活效果图监视窗口,就是用鼠标左键监视窗口,然后在Fluent中操作,Fluent->File->Hardcopy...,选择好你想要的图片格式,然后就可以保存了。 3.将计算结果或者相关数据导入到Tecplot中,然后作出你想要的效果图,这种方法得出的图片,个人感觉比Fluent得到的图片美观简洁大方 36 在DPM模型中,粒子轨迹能表示粒子在计算域内的行程,如何显示单一粒径粒子的轨道(如20微米的粒子)? 首先选择DMP模型,在set injection properties 面板中,选择injection type的类型为single, 然后设置初始条件,如位置(x,y,z),速度,直径(如20微米的粒子),温度,质量流率等! 设定完成后,你就可以行迭代了。等气相和离散相收敛以后,你就可以追踪粒子轨迹。在display中打开particle tracks面板进行操作! 37 在FLUENT定义速度入口时,速度入口的适用范围是什么?湍流参数的定义方法有哪些?各自有什么不同? 速度入口的边界条件适用于不可压流动,需要给定进口速度以及需要计算的所有标量值。速度入口边界条件不适合可压缩流动,否则入口边界条件会使入口处的总温或总压有一定的波动。 关于湍流参数的定义方法,根据所选择的湍流模型的不同有不同的湍流参数组合,具体可以参考Fluent用户手册的相关章节,也可以参考王福军的书《计算流体动力学分析—CFD软件原理与应用》的第214-216页, 38 在计算完成后,如何显示某一断面上的温度值?如何得到速度矢量图?如何得到流线? 这些都可以用tecplot来处理 将fluent计算的date和case文件倒入到tecplot中 断面可以做切片 速度矢量图流线图 直接就可以选择相应选项来查看 39 分离式求解器和耦合式求解器的适用场合是什么?分析两种求解器在计算效率与精度方面的区别 分离式求解器以前主要用于不可压缩流动和微可压流动,而耦合式求解器用于高速可压流动。现在,两种求解器都适用于从不可压到高速可压的很大范围的流动,但总的来讲,当计算高速可压流动时,耦合式求解器比分离式求解器更有优势。 Fluent默认使用分离式求解器,但是,对于高速可压流动,由强体积力(如浮力或者旋转力)导致的强耦合流动,或者在非常精细的网格上求解的流动,需要考虑耦合式求解器。耦合式求解器耦合了流动和能量方程,常常很快便可以收敛。耦合式求解器所需要的内存约是分离式求解器的1.5??倍,选择时可以根据这一情况来权衡利弊。在需要耦合隐式的时候,如果计算机内存不够,就可以采用分离式或耦合显式。耦合显式虽然也耦合了流动和能量方程,但是它还是比耦合隐式需要的内存少,当然它的收敛性也相应差一些。 需要注意的是,在分离式求解器中提供的几个物理模型,在耦合式求解器中是没有的。这些物理模型包括:流体体积模型(VOF),多项混合模型,欧拉混合模型,PDF燃烧模型,预混合燃烧模型,部分预混合燃烧模型,烟灰和NOx模型,Rosseland辐射模型,熔化和凝固等相变模型,指定质量 流量的周期流动模型,周期性热传导模型和壳传导模型等。 而下列物理模型只在耦合式求解器中有效,在分离式求解器中无效:理想气体模型,用户定义的理想气体模型,NIST理想气体模型,非反射边界条件和用于层流火焰的化学模型。 43 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默认的储存几何体和网格数据的文件; trn文件是记录gambit命令显示窗(transcript)信息的文件; msh文件可以在gambit划分网格和设置好边界条件之后export中选择msh文件输出格式,该文件可以被fluent求解器读取。 Case文件包括网格,边界条件,解的参数,用户界面和图形环境。 Data文件包含每个网格单元的流动值以及收敛的历史纪录(残差值)。Fluent自动保存文件类型,默认为date和case文件 Profile文件边界轮廓用于指定求解域的边界区域的流动条件。例如,它们可以用于指定入口平面的速度场。 读入轮廓文件,点击菜单File/Read/Profile...弹出选择文件对话框,你就可以读入边界轮廓文件了。 写入轮廓文件,你也可以在指定边界或者表面的条件上创建轮廓文件。例如:你可以在一个算例的出口条件中创建一个轮廓文件,然后在其它算例中读入该轮廓文件,并使用出口轮廓作为新算例的入口轮廓。要写一个轮廓文件,你需要使用Write Profile面板(Figure 1),菜单:File/Write/Profile 44 在计算区域内的某一个面(2D)或一个体(3D)内定义体积热源或组分质量源。如何把这个zone定义出来?而且这个zone仍然是流体流动的。 在gambit中先将需要的zone定义出来,对于要随流体流动我觉得这个可以用动网格来处理 在动网格设置界面 将这个随流体流动的zone设置成刚体 这样既可以作为zone不影响流体流通 也可以随流体流动 只是其运动的udf不好定义 最好根据其流动规律编动网格udf 46 如何选择单、双精度解算器的选择 Fluent的单双精度求解器适合于所有的计算平台,在大多数情况下,单精度求解器就能很好地满足计算精度要求,且计算量小。 但在有些情况下推荐使用双精度求解器: 1, 如果几何体包含完全不同的尺度特征(如一个长而壁薄的管),用双精度的; 2, 如果模型中存在通过小直径管道相连的多个封闭区域,不同区域之间存在很大的压差,用双精度。 3, 对于有较高的热传导率的问题或对于有较大的长宽比的网格,用双精度。 47 求解器为flunet5/6在设置边界条件时,specify boundary types下的types中有三项关于interior,interface,internal设置,在什么情况下设置相应的条件?它们之间的区别是什么?interior好像是把边界设置为内容默认的一部分;interface是两个不同区域的边界区,比如说离心泵的叶轮旋转区和叶轮出口的交界面;internal;请问以上三种 每个的功能?最好能举一两个例子说明一下,因为这三个都是内部条件吧,好像用的很多。interface,interior,internal boundary区别?在Fluent中,Interface意思为“交接面”,主要用途有三个:多重坐标系模型中静态区域与运动区域之间的交接面的定义;滑移网格交接处的交接面定义,例如:两车交会,转子与定子叶栅模型,等等,在Fluent中,interface的交接重合处默认为interior,非重合处默认 为wall;非一致网格交接处,例如:上下网格网格间距不同等。Interior意思为“内部的”,在Fluent中指计算区域。Internal意思为“内部的”,比如说内能,内部放射率等,具体应用不太清楚。 48 FLUENT并行计算中Flexlm如何对多个License的管理?在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即可 49 在“solver”中2D 、axisymmetric和axisymmetric swirl如何区别?对于2D和3D各有什么适用范围?从字面的意思很好理解axisymmetric和axisymmetric swirl的差别:axisymmetric:是轴对称的意思,也就是关于一个坐标轴对称,2D的axisymmetric问题仍为2D问题。而axisymmetric swirl:是轴对称旋转的意思,就是一个区域关于一条坐标轴回转所产生的区域,这产生的将是一个回转体,是3D的问题。在Fluent中使用这个,是将一个3D的问题简化为2D问题,减少计算量,需要注意的是,在Fluent中,回转轴必须是x轴。 50 在设置速度边界条件时,提到了“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 velocities 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. ” 如果速度入口处的单元在计算的过程中有运动发生的情况(如果你使用了运动参考系或者滑移网格),你可以选择使用指定相对于邻近单元区域的速度或在参考坐标系中的绝对速度来定于入口处的速度;如果速度入口处的相邻单元在计算过程中没有发生运动,那么这两种方法所定义的速度 是等价的。 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 enabling 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 (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 meshes, 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 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允许用户定义的速度形式有绝对的和相对的,使用相对的速度形式是为了在Fluent中使用运动参考系以及滑移网格方便定义速度,关于这两个速度的理解很简单,可以参?忌厦娴乃得鳎蝗绻褂肈ensity-based的求解器,这个求解器的算法只允许统一使用绝对的速度形式。 51 对于出口有回流的问题,在出口应该选用什么样的边界条件(压力出口边界条件、质量出口边界条件等)计算效果会更好?答:给定流动出口的静压。对于有回流的出口,压力出口边界条件比质量出口边界条件边界条件更容易收敛。 压力出口边界条件压力根据内部流动计算结果给定。其它量都是根据内部流动外推出边界条件。该边界条件可以处理出口有回流问题,合理的给定出口回流条件,有利于解决有回流出口问题的收敛困难问题。 出口回流条件需要给定:回流总温(如果有能量方程),湍流参数(湍流计算),回流组分质量分数(有限速率模型模拟组分输运),混合物质量分数及其方差(PDF 计算燃烧)。如果有回流出现,给的表压将视为总压,所以不必给出回流压力。回流流动方向与出口边界垂直。 52 对于不同求解器,离散格式的选择应注意哪些细节?实际计算中一阶迎风差分与二阶迎风差分有什么异同?离散格式对求解器性能的影响 控制方程的扩散项一般采用中心差分格式离散,而对流项则可采用多种不同的格式进行离散。Fluent允许用户为对流项选择不同的离散格式(注意:粘性项总是自动地使用二阶精度的离散格式)。默认情况下,当使用分离式求解器时,所有方程中的对流项均用一阶迎风格式离散;当使用耦合 式求解器时,流动方程使用二阶精度格式,其他方程使用一阶精度格式进行离散。此外,当选择分离式求解器时,用户还可为压力选择插值方式。 当流动与网格对齐时,如使用四边形或六面体网格模拟层流流动,使用一阶精度离散格式是可以接受的。但当流动斜穿网格线时,一阶精度格式将产生明显的离散误差(数值扩散)。因此,对于2D三角形及3D四面体网格,注意使用二阶精度格式,特别是对复杂流动更是如此。一般来讲,在一 阶精度格式下容易收敛,但精度较差。有时,为了加快计算速度,可先在一阶精度格式下计算,然后再转到二阶精度格式下计算。如果使用二阶精度格式遇到难于收敛的情况,则可考虑改换一阶精度格式。 对于转动及有旋流的计算,在使用四边形及六面体网格式,具有三阶精度的QUICK格式可能产生比二阶精度更好的结果。但是,一般情况下,用二阶精度就已足够,即使使用QUICK格式,结果也不一定好。乘方格式(Power-law Scheme)一般产生与一阶精度格式相同精度的结果。中心差分格式一般只用于大涡模拟,而且要求网格很细的情况。 53 对于FLUENT的耦合解算器,对时间步进格式的主要控制是Courant数(CFL),那么Courant数对计算结果有何影响?courant number实际上是指时间步长和空间步长的相对关系,系统自动减小courant数,这种情况一般出现在存在尖锐外形的计算域,当局部的流速过大或者压差过大时出错,把局部的网格加密再试一下。 在Fluent中,用courant number来调节计算的稳定性与收敛性。一般来说,随着courant number的从小到大的变化,收敛速度逐渐加快,但是稳定性逐渐降低。所以具体的问题,在计算的过程中,最好是把courant number从小开始设置,看看迭代残差的收敛情况,如果收敛速度较慢而且比较稳定的话,可以适当的增加courant number的大小,根据自己具体的问题,找出一个比较合适的courant number,让收敛速度能够足够的快,而且能够保持它的稳定性。 54 在分离求解器中,FLUENT提供了压力速度耦和的三种方法:SIMPLE,SIMPLEC及PISO,它们的应用有什么不同在FLUENT中,可以使用标准SIMPLE算法和SIMPLEC(SIMPLE-Consistent)算法,默认是SIMPLE算法,但是对于许多问题如果使用SIMPLEC可能会得到更好的结果,尤其是可以应用增加 的亚松驰迭代时,具体介绍如下: 对于相对简单的问题(如:没有附加模型激活的层流流动),其收敛性已经被压力速度耦合所限制,你通常可以用SIMPLEC算法很快得到收敛解。在SIMPLEC中,压力校正亚松驰因子通常设为1.0,它有助于收敛。但是,在有些问题中,将压力校正松弛因子增加到1.0可能会导致不稳定。 对于所有的过渡流动计算,强烈推荐使用PISO算法邻近校正。它允许你使用大的时间步,而且对于动量和压力都可以使用亚松驰因子1.0。对于定常状态问题,具有邻近校正的PISO并不会比具有较好的亚松驰因子的SIMPLE或SIMPLEC好。对于具有较大扭曲网格上的定常状态和过渡计算推荐使 用PISO倾斜校正。当你使用PISO邻近校正时,对所有方程都推荐使用亚松驰因子为1.0或者接近1.0。如果你只对高度扭曲的网格使用PISO倾斜校正,请设定动量和压力的亚松驰因子之和为1.0比如:压力亚松驰因子0.3,动量亚松驰因子0.7)。如果你同时使用PISO的两种校正方法,推荐参?腜ISO邻近校正中所用的方法 55 对于大多数情况,在选择选择压力插值格式时,标准格式已经足够了,但是对于特定的某些模型使用其它格式有什么特别的要求?压力插值方式的列表只在使用Pressure-based求解器中出现。一般情况下可选择Standard;对于含有高回旋数的流动,高Rayleigh数的自然对流,高速旋转流动 ,多孔介质流动,高曲率计算区域等流动情况,选择PRESTO格式;对于可压缩流动,选择Second Order;当然也可以选择Second Order以提高精度;对于含有大体力的流动,选择Body Force Weighted。注意:Second Order格式不可以用于多孔介质;在使用VOF和Mixture多相流模型时,只能使用PRESTO或Body Force Weighted格式。关于压力插值格式的详细内容,请参考Fluent用户手册 57 讨论在数值模拟过程中采用四面体网格计算效果好,还是采用六面体网格更妙呢?在2D中,FLUENT 可以使用三角形和四边形单元以及它们的混合单元所构成的网格。在3D中,它可以使用四面体,六面体,棱锥,和楔形单元所构成的网格。选择那种类型的单元取决于你的应用。当选择网格类型的时候,应当考虑以下问题: 设置时间(setup time) 计算成本(computational expense) 数值耗散(numerical diffusion ) 1.设置时间 在工程实践中,许多流动问题都涉及到比较复杂的几何形状。一般来说,对于这样的问题,建立结构或多块(是由四边形或六面体元素组成的)网格是极其耗费时间的。所以对于复杂几何形状的问题,设置网格的时间是使用三角形或四面体单元的非结构网格的主要动机。然而,如果所使用 的几何相对比较简单,那么使用哪种网格在设置时间方面可能不会有明显的节省。 如果你已经有了一个建立好的结构代码的网格,例如FLUENT 4,很明显,在FLUENT中使用这个网格比重新再生成一个网格要节省时间。这也许是你在FLUENT 模拟中使用四边形或六面体单元的一个非常强的动机。注意,对于从其它代码导入结构网格,包括FLUENT 4,FLUENT 有一个筛选的范围。 2.计算成本 当几何比较复杂或流程的长度尺度的范围比较大的时候,可以创建是一个三角形/四面体网格,因为它与由四边形/六面体元素所组成的且与之等价的网格比较起来,单元要少的多。这是因为一个三角形/ 四面体网格允许单元群集在被选择的流动区域中,而结构四边形/六面体网格一般会把单元强加到所不需要的区域中。对于中等复杂几何,非结构四边形/六面体网格能构提供许多三角形/ 四面体网格所能提供的优越条件。 在一些情形下使用四边形/六面体元素是比较经济的,四边形/六面体元素的一个特点是它们允许一个比三角形/四面体单元大的多的纵横比。一个三角形/ 四面体单元中的一个大的纵横比总是会影响单元的偏斜(skewness),而这不是所希望的,因为它可能妨碍计算的精确与收敛。所以,如果你有一个相对简单的几何,在这个几何中流动与几何形状吻合的很好,例如一个瘦长管道,你可以运用一个高纵横比的四边形/六面体单元的网格。这?鐾裼涤械牡ピ赡鼙热切? 四面体少的多。 3.数值耗散 在多维情形中,一个错误的主要来源是数值耗散,术语也为伪耗散(false diffusion)。之所以称为“伪耗散”是因为耗散不是一个真实现象,而是它对一个流动计算的影响近似于增加真实耗散系数的影响。 关于数值耗散的观点有: 当真实耗散小,即情形出现对流受控时(即本身物理耗散比较小时),数值的耗散是最值得注意的。 关于流体流动的所有实际的数值设计包括有限数量的数值耗散。这是因为数值耗散起于切断错误,而切断错误是一个表达离散形式的流体流动方程的结果。 用于FLUENT 中的二阶离散方案有助于减小数值耗散对解的影响。 数值耗散的总数反过来与网格的分解有关。因此,处理数值耗散的一个方法是改进网格。 当流动与网格相吻一致时,数值耗散减到最小。 最后这一点与网格的选择非常有关。很明显,如果你选择一个三角形/ 四面体网格,那么流动与网格总不能一致。另一方面,如果你使用一个四边形/六面体网格,这种情况也可能会发生,但对于复杂的流动则不会。在一个简单流动中,例如过一长管道的流动,你可以依靠一个四边形/六面体网格以尽可能的降低数值的耗散。在这种情形,使用一个四边形/六?嫣逋窨赡苡行┯欣跫蛭胧褂靡桓鋈切? 四面体单元比起来,你将能够使用比较少的单元而得到一个更好的解。 59 在UDF中compiled型的执行方式和interpreted型的执行方式有什么不同编译型UDF: 采用与FLUENT 本身执行命令相同的方式构建的。采用一个称为Makefile的脚本来引导c 编译器构造一个当地目标编码库(目标编码库包含有将高级c 语言源代码转换为机器语言。)这个共享库在运行时通过“动态加载”过程载入到FLUENT 中。目标库特指那些使用的计算机体系结构,和运行的特殊FLUENT 版本。因此,FLUENT 版本升级,计算机操作系统改变以及在另一台不同类型的计算机上运行时,这个库必须进行重构。 编译型UDF 通过用户界面将原代码进行编译,分为两个过程。这两个过程是:访问编译UDF 面板,从源文件第一次构建共享库的目标文件中;然后加载共享库到FLUENT 中。 采用与FLUENT 本身执行命令相同的方式构建的。采用一个称为Makefile的脚本来引导c 编译器构造一个当地目标编码库(目标编码库包含有将高级c 语言源代码转换为机器语言。)这个共享库在运行时通过“动态加载”过程载入到FLUENT 中。目标库特指那些使用的计算机体系结构,和运行的特殊FLUENT 版本。因此,FLUENT 版本升级,计算机操作系统改变以及在另一台不同类型的计算机上运行时,这个库必须进行重构。 编译型UDF 通过用户界面将原代码进行编译,分为两个过程。这两个过程是:访问编译UDF 面板,从源文件第一次构建共享库的目标文件中;然后加载共享库到FLUENT 中。 解释型UDF: 解释型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 应用到你的模型时: 对小的,直接的函数用解释型;对复杂函数使用编译型61 FLUENT help和GAMBIT help能教会我们(特别是刚入门的新手)学习什么基本知识?答:可以了解其基本原理和基本的操作。不过我觉得对于新手熟悉软件最好的还是tutorial guide63 FLUENT模拟飞行器外部流场,最高MA多少时就不准确了?MA达到一定的程度做模拟需注意哪些问题?答:不准确的标准是什么?没有判断标准就没办法判断。一般来说fluent计算马赫数大于3~5之后就不是很理想了(不过相信版本越新结果越好)。计算的时候应该从低马赫数慢慢往上算。?热缢等绻扑懵砗帐?的话,就在马赫数4的计算结果上算。另外,求解器需选择耦合和显式的。(对于6.3来说,选择基于密度的求解器) 68 做飞机设计时,经常计算一些翼型,可是经常出现计算出来的阻力是负值,出现负值究竟是什么原因,是网格的问题还是计算参数设置的问题?如果这个问题对于某个人经常出现的话,那就比较奇怪了,阻力是负值,难道就是传说中的前缘吸力现身?呵呵,只是开个玩笑:),估计肯定是 计算错了或者是设置错了。在飞机翼型气动里面,阻力主要有两种成份:压差阻力和摩擦阻力。应该是正值的。排除是计算过程的其他问题,我觉得在使用Fluent进行这方面的计算时,需要注意两个方面:1.参考值的设置,也就是Report->Reference Values...这些参考值,是用来计算Re,以及升力,阻力,力矩系数所要用到的。如果设置不当,即使计算过程是对的,所得到的升阻力等系数也是不对的。对于2D翼型仿真计算,比较容易出错的就是里面的Area该写什么,单位是平方米,这里应该填写翼型的弦长(Chord Length),The area here is actually area per unit depth;就是每单位展长的面积。2.在监视力的时候,关于力的矢量方向设置,Solve->Monitor->Force...这个矢量方向千万不要小看,不能填错,填错了就可能出现阻力是负值的错误,Fluent之前的版本所附带的例子,关于NACA0012翼型的计算中,这里的矢量就设置错了,受错误例子的?跋欤贾夷潜臼橹腥切我硇偷哪歉隼右采柚么砦螅谑榈牡?12页的第6步的第(7)小步就设置错误,升力系数的力方向矢量,应该是X=-0.087155,Y=0.996195;前面他也写到要注意:要确保阻力和升力分别与来流平行和垂直,那么这两个力矢量肯定是垂直的了,那么这两个矢量?牡愠司涂隙ǖ扔诹懔耍凰业氖牵贔luent6.3版本的例子中,这个错误已经改正过来了。 74 大概需要划分100万个左右的单元,且只计算稳态流动,请问这样的问题PC机上算的了吗?如果能算至少需要怎样的计算机配置呢?答:一般来说,按照1000个节点对1MB内存这样预估就差不多了,只计算稳态流动,pc机应该差不多了,不过因为一般的pc机可能在连续计算5、6天之后就出现 浮点运算错误,所以如果计算不是很复杂,采用的求解器和湍流模型不是太好计算资源,应该还是可以的。如果使用pc机计算,建议至少采用2GB内存,主板最好固态电容,不易爆浆,电源最好功率大典,应该差不多了,现在流行四核cpu的,可以考虑使用四核的,这样的配置下来也不比服 务器差多少。 76 GAMBIT划分三维网格后,怎样知道结点数?如何知道总生成多少网格(整个模型)? 答:个人一般是将网格读入fluent后,通过grid->info->size来看:77 在FLUENT的后处理中可以显示一个管道的。某个标量的。圆截面平均值沿管道轴线(中心线)的变化曲线吗?何显示空间某一点的数值呀(比如某一点温度)? 正确的方法应该是输入命令画曲线命令输入状态下直接按回车>plot>c-a-a (就是circum-average-axial)再空按回车显示可以选择的值(从温度到nusselt数应有尽有)比如输入>temp (温度)>100 (轴向数据点个数)>filename.txt (文件名,随便取)>no (不知道什么,order point)然后在plot-file里选择输出就可以了另定义空间点的方法为surface-point,输入点的坐标或者直接在网格上标记,然后就能在后处理时看到这个点的选项了。80 如何在gambit中输入cad和Pro/e的图形?如何将FLUNET的结果EXPORT成ANSYS的文件?答:autocad需要将图形转化为sat格式,pro/e可以将文件转化为igse或者stp格式。在fluent的flie/export 中可以选择导出ansys格式的文件 87 courant数:在模拟高压的流场的时候,迭代的时候总是自动减小其数值,这是什么原因造成的,为什么?怎么修改?这是流场的压力梯度较大,Fluent自身逐步降低时间步长,防止计算发散。我一般的处理办法是:先将边界条件上的压力设置较低点,使得压力梯度较小一点,等到收敛的感 觉差不多,在这个基础上,逐渐把压力增大,这样就不容易发散。94 把带网格的几个volume,copy到另一处,但原来split的界面,现在都变成了wall,怎么才能把wall变成内部流体呢?直接边界面定义为interior即可 97 在udf中,U,V,W代表的速度,分别代表什么方向的,直角坐标还是柱坐标? 应该是在直角坐标系中,U、V、W分别代表是X、Y、Z的方向98 Gambit的网格相连问题:如果物体是由两个相连的模型所结合,一个的网格划分比较密、另一个比较稀疏,用Gambit有办法将两个网格密度不同的物体,相连在一起吗? 请参考第16题答案。将两种网格交界的地方设置成一对interface即可 100 在FLUENT里定义流体的密度时,定义为不可压理想流体是用在什么地方呀,讲义上说是用于可变密度的不可压流动,不知如何理解?答:define/matirial 中定义。可变密度的不可压缩流动,就是说在该流动下,流体介质的密度可以认为不变。比如说空气在流速在0.3马赫的情况下都可以认为是密度不变的101 已经建好的模型,想修改一些尺寸,但不知道顶点的座标,请问如何在gambit中显示点的座标?答:在gambit中的geometr-〉vortex->summarize vortices即可显示点的坐标。102 在FLUENT模拟以后用display下的操作都无法显示,不过刚开始用的是好的,然后就不行了,为什么?答: DirectX 控制面板中的“加速”功能禁用即可 103 能否同时设置进口和出口都为压力的边界条件?在这样的边界条件设置情况下发现没有收敛,研究的物理模型只是知道进口和出口的压力,不知道怎么修改才能使其收敛? 当然可以同时设置进口和出口都为压力的边界条件。如果没有收敛,需要首先看看求解器、湍流模型、气体性质和边界条件时有没有出现warning;其次,还是我上边的帖子所说的,对于可压流动,采用压力边界条件,不能一下把压力和温度加到所需值,应该首先设置较低的压力或温度,?缓笾鸾ピ龃螅詈蟠锏阶约核璧闹怠? 104 在FLUENT计算时,有时候计算时间会特别长,为了避免断电或其它情况影响计算,应设置自动保存功能,如何设置自动保存功能?在非定常计算中读入自动保存文件时如下出现问题: Writing "F:\propane\16\160575.cas"... Error: sopenoutputfile&: unable to open file for output Error Object: "F:\propane\16\160575.cas" Error: Error writing "F:\propane\16\160575.cas". Error Object: #f 非定常的,算了一段之后停下来,改天继续算的时候,自动保存的时候出现问题,请问如何解决?答:File->write->Autosave就可以实现自动保存。只要你在写自动保存文件的时候,文件名另取一个就行,比如Writing "F:\propane\16\160575_1.cas 105 gambit划分时运动部分与静止部分交接面:一个系统的两块,运动部分与静止部分交接部分近似认为没有空隙(无限小,虽然实际上是不可能的),假设考虑做成一个实体,那么似乎要一起运动或静止;假设分开做成两个实体,那么交接处的两个不完全重合的面要设为WALL还是什么呢,设 成WALL不就不能过流了吗?将这一对接触面设置成Interface就行了,具体请参考第47题的解答 106 在计算模拟中,continuity总不收敛,除了加密网格,还有别的办法吗?别的条件都已经收敛了,就差它自己了,还有收敛的标准是什么?是不是到了一定的尺度就能收敛了,比如10-e5具体的数量级就收敛了continuity 是质量残差,具体是表示本次计算结果与上次计算结果的差别,如果别的条件收敛了,就差它。可以点report, 打开里面FLUX选项,算出进口与出口的质量流量差,看它是否小于0.5%.如果小于,可以判断它收敛. 108 想把gambit的图形保存成图片,可是底色总是黑色,怎么改为白色呀。用windows中画图板的反色,好像失真很多。如何处理?答:首先点开GAMBIT的EDIT菜单,其次点GRAPHICS,在下拉列表中点到 WINDOWS BACKGROUND COLOR BLACK 一项 在下面VALUE 中填写WHITE,再点左面的MODIFY,就可以了.110 在分析一个转轮时,想求得转轮的转矩,不知道fluent中有什么方法可以提供该数据。本来想到用叶片上面的压力乘半径,然后做积分运算,但是由于叶片正反壁面统一定义的,即全部定义为wall-rn1,所以分不出方向来了答:report/force/moment 定义需要计算的面和旋转中心就ok了111 如何在gambit中实现坐标轴的变换:有一个三维的网格,想在柱坐标中实现,可是gambit中一直显示直角坐标?答:对于这个问题,你可以尝试一下:Operation--->Tools--->Coordinate System--->Activate Coordinate System 113 利用vof非稳态求解,结果明显没有收敛的情况下,为什么就开始提示收敛,虽然可以不管它,继续算下去达到收敛。但是求解怎么会提前收敛?可以吧残差图的k和E 改小点,就好点了。另外 vof 中 残差图一般是波动的吧所以最好 设置检测面 比如说进出口流量 来确定你的计算的准确性116 在Gambit中如何将两个dbs文件到入:把炉膛分成了三个dbs文件,现在想导入两个dbs文件,在Gambit中进行操作,但好象使用open命令就只能open一个dbs文件,请问这要怎么处理?答:将其中一个导出成iges或者别的格式,然后就能和dbs一起导入了。 119 用GAMBIT生成网格时要是出现负值怎么办啊?有什么办法可以改正吗,只能将网格重新画吗?答:好像只能重新生成。也就是要在线上重新布点,重新生成面网格等等。120 scale是把你所画模型中的单位转化为Fluent默认的m,而unite是根据你自己的需要转化单位,也就是把Fluent中默认的m转画为其他的单位,两中方法对计算没有什么影响吗?答:scale是对几何进行比例缩放,而unit只是改变单位,不改变几何外形的大小。比如,一个是1m的几何外形,?ü齭cale将m变为mm,那么几何外形就变成了1mm。如果通过unite将m改为mm,那么几何外形不变,还是1000mm,只是表示的单位变成mm了 121 GAMBIT处理技巧:两个圆内切产生的尖角那个面如何生成网格质量才比较好?答:可以采用划分结构网格的方法(对于狭缝的一般处理都是生成长宽比很大的结构网格);或者将这个尖角导个圆弧之后再划分网格(也就是进行几何简化)128 在gambit中对一体积成功的进行了体网格,网格进行了examine mesh,也没有什么问题,可当要进行边界类型(boundary type)的设定时,却发现type 只有node, element_side两项,没有什么wall,pressure_outlet等。为何无法定义边界?答:因为没有选择求解器为fluent 5/6132 网格数量和内存之间的关系是什么?大概有这样一个估计:“1k网格=1M内存。”对于一台有1G内存的计算机,你能接受的计算网格数最好少于100万,当然这只是一个粗略的说法,影响计算速度的因素还有Fluent计算的设置等。 133 如何在FLUENT中进行密度的选择?FLUENT中的密度我个人认为是指流体的状态方程,包括不可压缩(常数),不可压缩理想流体;可压缩理想流体;或者定义成温度的线性关系;也可以通过udf定义成压力和温度的复杂函数(但是我亲自实践过)定义成压力的函数要么收敛后结果不对,要?锤静皇樟玻ㄎ叶ㄒ宓氖莍f97标准水蒸汽性质)。因此,如果说问题中的密度要写成压力的复杂函数,会对收敛带来一定困难。设置,在所选材料的density里面选 142 什么是多孔介质;在那些方面应用?多孔介质由固体物质组成的骨架和由骨架分隔成大量密集成群的微小空隙构成的介质。 多孔介质在很多方面都有运用,像医学,工业,环境,军事等! 我个人曾经做过这方面的实验。主要是多孔陶瓷,运用它来进行除尘的! 143 有没有介绍多孔介质的专业书籍? 《多孔介质流体动力学》贝尔 著;李竞生,陈崇希 译 北京:中国建筑工业出版社,1983.8《 多孔介质污染物迁移动力学》仵彦卿编著上海:上海交通大学出版社,2007《多孔介质——流体渗移与孔隙结构》 FAL DULLIEN 著 石油工业出版 《多孔介质传热传质理论与应用》作者:刘伟 范爱武 黄晓明 科学出版社《多孔介质溶质运移动力学 》张永祥,陈鸿汉著 北京 地震出版社 2000 155 如何区分层流和紊流? 以什么为标准来区分呢?从层流过渡到紊流的标准是什么? 答:自然界中的流体流动状态主要有两种形式,即层流laminar和湍流(就是问题中所说的紊流)turbulence.层流是指流体在流动过程中两层之间没有相互混渗,而湍流是指流体不是处于分层流动状态。对于圆管内流动,雷诺数小于等于2300,管流一定为层流,雷诺数大于等于8000到12000?洌芰饕欢ㄎ牧鳎着凳笥?300而小于8000时,流动处于层流与湍流的过渡区。对于一般流动,在计算雷诺数时,可以用水力半径代替管径。 157 gambit不响应键盘的原因。要把输入法调到英文输入状态,, 158 gambit不能正常启动的原因有哪些1、在Gambit建模过程中出现界面突然跳出,并且下次运行Gambit时,界面调不出来,这时只需删去gambit工作目录下的(默认的工作目录为\FLUENT.INC\ntbin\ntx86)后缀为*.lok的文件,就会恢复正常。 2、出错信息“IDENTIFIER "default_id" CURRENTLY OPEN”,Gambit的缺省文件已经打开,gambit运行失败,到用户默认目录删default_id.*等文件。 3、出错信息“unable find Exceed X Server ” ,GAMBIT需要装EXCEED才能用,推荐EXCEED 6.2。 159 在fluent中如何设置工作目录?在Gambit中如何设置工作目录?找到桌面上的Fluent或者Gambit图标,右键图标,“属性”->"起始位置”...将起始位置设置为你想要的文件夹目录就可以了。 160 在计算过程中其它指数都收敛了,就continuity不收敛是怎么回事?在初始化设置中,那些项影响continuity的收敛?在计算过程中其他指数都收敛了,就continuity不收敛,这种情况一般出现在多相流中,在初始化设置中,可能把上次计算结果的进口参数作为初始化设置,可以加快conti nuity的收敛,不过更重要的是改进网格质量

开放分享:优质有限元技术文章,助你自学成才

相关标签搜索:CFD常见问题(转载) CFD培训 CFD流体分析培训 cfd视频 fluent cfx pumplinx软件培训 Fluent、CFX流体分析 HFSS电磁分析 Ansys培训 Abaqus培训 Autoform培训 有限元培训 

编辑
在线报名:
  • 客服在线请直接联系我们的客服,您也可以通过下面的方式进行在线报名,我们会及时给您回复电话,谢谢!
验证码

全国服务热线

1358-032-9919

广州公司:
广州市环市中路306号金鹰大厦3800
电话:13580329919
          135-8032-9919
培训QQ咨询:点击咨询 点击咨询
项目QQ咨询:点击咨询
email:kf@1cae.com