FLUENT控制步长时间courant数的有效的经验
- 格式:docx
- 大小:13.79 KB
- 文档页数:3
之阳早格格创做用FLUENT估计非稳态问题,是不是正在估计时必须包管正在每个时间步timestep里皆要支敛才止,可则估计截止便分歧过失呢?也便是道,正在iteration选项里,max iteration pertime step设为一个值,比圆500,便是如果500次迭代后仍已支敛,加进下一步迭代,那对付截止会有什么做用. 对付于隐式非定常要领,准则上,每个时间步少内必须包管截止支敛.正在fluent 的助闲中便有那样的话:“对付于不可压震动,正在每个时间步内,不可压解必须迭代直至支敛.”其余,咱们返回到fluent里里估计的基础,它真量便是一种好分算法,通过不竭迫近去赢得真正在解,那样咱们便不易明白为什么正在每个时间步少内需要支敛了.max iteration pertime step 设定的是最大时间步,正在简单步少内,如果截止已经支敛,则会自动跳至下一时间举止估计.所以其设定要纵瞅齐部.然而对付于周期性震动,那种支敛性的央供便相对付紧动一些.不过您需要多估计几个周期,等估计截止达到对付时间的周期状态后,再对付截止举止储藏. 对付于隐式非定常要领,正在Fluent助闲中那样道:“一定记着,对付于隐式非定常要领,每一个迭代便是一个时间步.”如果每个时间步内截止不得到支敛,则很有大概您所得到的截止是不真正在的,然而是一个时间步内的不真正在性该当不会做用到下一个时间步少内的估计.果为正在每一个时间步启时,fluent 皆市举止初初化.正在单个时间步内,它本量是依照稳态举止估计的.time step size的设定是根据您的估计需要,普遍是您的特性少度(比圆道管讲的少度)除于特性速度(比圆仄衡速度)的值再小一到二个量级即可,如果您的time stip size太大,估计会提示您的,改小即可.number of time steps是那样设定的:number of time steps X time step size=本量时间聚集.比圆道,您估计一个射流,您需要估计到1秒时间的情况,那么(number of time steps)=1秒/(time step size).Fluent中非稳态时间步少树立迩去所搞的非稳态估计,若树立太小,估计时间便太少,树立太大的话便会出现Global Courant Number飙降过大的不克不迭继承举止下去的问题.单元最小少度除于流场仄衡流速,不过那个值大概很小,您不妨以那个值为基准举止安排,一启初不妨与大些,如果不问题,不妨再搁大些,那样不妨支缩估计时间.若按那种要领,估计底下那个例子:2mm,10个网格,流速1m/s.时间步少time steps=0.2/1000=0.0002.然而是尔正在举止估计时,树立为1e-6,皆无法举止下去.所以那种换算要领仍旧只可动做参照.尔当前采与的是自动安排时间步少,暂时瞅去效验还不妨.怎么知讲非稳态估计时间步少是符合的?courant number与支敛 courant number本量上是指时间步少战空间步少的相对付闭系,系统自动减小courant数,那种情况普遍出当前存留尖钝形状的估计域,当局部的流速过大大概者压好过大时堕落,把局部的网格加稀再试一下.正在fluent中,用courant number去安排估计的宁静性与支敛性.普遍去道,随着courant number的从小到大的变更,支敛速度渐渐加快,然而是宁静性渐渐落矮.所以简直的问题,正在估计的历程中,最佳是把courant number从小启初树立,瞅瞅迭代残好的支敛情况,如果支敛速度较缓而且比较宁静的话,不妨适合的减少courant number的大小,根据自己简直的问题,找出一个比较符合的courant number,让支敛速度不妨脚够的快,而且不妨脆持它的宁静性.时间步少与准确性戴自《数值估计与工程仿真》第一期做家gim1 、正在不计模型缺面,而且估计宁静的前提下,数值估计的时间步少的采用存留一个妥当值,过大大概过小皆市做用模拟截止的准确性.2 、简直数值模拟中,最佳能有一定的真验数据大概其余的不妨认为准确的截止动做考证资料,那样才搞妥当的选定时间步少,普及估计的准确性.3 、FLUENT 硬件采与隐式估计,那便需要设定每一次迭代的最大步数(Max Iterations per Time step ) ,如果达到最大步数前估计已经支敛,系统会自动加进下一步迭代.利用那一面不妨采与如下要领决定迭代的时间步少:系统普遍认为每一步的迭代次数应正在10 一20 次之问,设定一个时间步少后如果正在迭代次数内还不支敛便该当减小时间步少,反之则该当减少时间步少.普遍,皆预先给定一个较小的时问步少举止迭代女步,而后逐步调整.天然迭代次数也跟简直问题相闭,还需要估计体味的不竭聚集.tags: fluent,非稳态,时间步少fluent迭代估计中,非定常问题的时间步少怎么样采用隐式时间积分规划:时间步少Δt<ρ(Δx)2 /2Γ;半隐式时间积分规划:时间步少Δt<ρ(Δx)2 /Γ;齐隐式时间积分规划:时间步少不节造.Δx是网格相邻节面的距离,Γ是扩集系数,分歧问题有分歧的物理意思非稳态时间步少与迭代步数的计划正在unsteady的估计供解中,大部分共教该当会对付solver 中树立比较迷惘,正在那里,尔念便尔部分的明白对付其时间步少与迭代步数举止一些分解计划. 1、正在举止unsteady 估计的时间,fluent是从前一个时间算到下一个时间(即time steps),而每个时间步少内的估计便相称于一个准稳态供解,果此需要树立Max Iterations per Time Step;正在那个时间步少内的估计便是一个稳态历程,正在达到iteration次数之前支敛完毕,便跳到下一个time step,可则便将所确定的迭代次数算完正在跳下一个time step. 2、时间步少的树立:(1)特性少度除以特性速度所得的时间小二个量级大概者更小.那是表里值,本量上,如果不是处事站运止的话,耗费的估计时间太少.果此,常常正在fluent中选定那个比率的1/5到1/10,特地是一启初不知讲怎么样设定的时间最佳是挨启adaptive 让它自动定义定义时间步少.然而其中最小的时间尺度,部分认为最小也只可小到那个比率的1/100的那个火仄上.(2)最小网格少度除以流速大概者转动震动速度.那个是包管每一次迭代皆正在一个网格范畴内,不会果跨网格而引导截止缺面,然而本量中估计一段时间后大概加快估计速度,会将时间步少树立较大,末尾为得到最后供解,再将时间步少调小,举止细微的估计.3、时间步少里的迭代步数树立:包管每个时间步少达到支敛,大概者能明隐瞅到主要残好直线趋于火仄.4、时间步数:瞅您需要估计多万古间,自己感触起码需要估计3-5个震动循环周期才大概得到非定常的宁静震动周期状态.。
1什么叫松弛因子?松弛因子对计算结果有什么样的影响?它对计算的收敛情况又有什么样的影响?1、亚松驰(Under Relaxation):所谓亚松驰就是将本层次计算结果与上一层次结果的差值作适当缩减,以避免由于差值过大而引起非线性迭代过程的发散。
用通用变量来写出时,为松驰因子(Relaxation Factors)。
《数值传热学-214》2、FLUENT中的亚松驰:由于FLUENT所解方程组的非线性,我们有必要控制的变化。
一般用亚松驰方法来实现控制,该方法在每一部迭代中减少了的变化量。
亚松驰最简单的形式为:单元内变量等于原来的值加上亚松驰因子a与变化的积, 分离解算器使用亚松驰来控制每一步迭代中的计算变量的更新。
这就意味着使用分离解算器解的方程,包括耦合解算器所解的非耦合方程(湍流和其他标量)都会有一个相关的亚松驰因子。
在FLUENT中,所有变量的默认亚松驰因子都是对大多数问题的最优值。
这个值适合于很多问题,但是对于一些特殊的非线性问题(如:某些湍流或者高Rayleigh数自然对流问题),在计算开始时要慎重减小亚松驰因子。
使用默认的亚松驰因子开始计算是很好的习惯。
如果经过4到5步的迭代残差仍然增长,你就需要减小亚松驰因子。
有时候,如果发现残差开始增加,你可以改变亚松驰因子重新计算。
在亚松驰因子过大时通常会出现这种情况。
最为安全的方法就是在对亚松驰因子做任何修改之前先保存数据文件,并对解的算法做几步迭代以调节到新的参数。
最典型的情况是,亚松驰因子的增加会使残差有少量的增加,但是随着解的进行残差的增加又消失了。
如果残差变化有几个量级你就需要考虑停止计算并回到最后保存的较好的数据文件。
注意:粘性和密度的亚松驰是在每一次迭代之间的。
而且,如果直接解焓方程而不是温度方程(即:对PDF计算),基于焓的温度的更新是要进行亚松驰的。
要查看默认的亚松弛因子的值,你可以在解控制面板点击默认按钮。
对于大多数流动,不需要修改默认亚松弛因子。
湍流与黏性有什么关系?湍流和粘性都是客观存在的流动性质。
湍流的形成需要一定的条件,粘性是一切流动都具有的。
流体流动方程本身就是具非线性的。
NS方程中的粘性项就是非线性项,当然无粘的欧拉方程也是非线性的。
粘性是分子无规则运动引起的,湍流相对于层流的特性是由涡体混掺运动引起的。
湍流粘性是基于湍流体的parcel湍流混掺是类比于层流体中的分子无规则运动,只是分子无规则运动遥远弱些吧了。
不过,这只是类比于,要注意他们可是具有不同的属性。
粘性是耗散的根源,实际流体总是有耗散的。
而粘性是制约湍流的。
LANDAU说,粘性的存在制约了湍流的自由度。
湍流粘性系数和层流的是不一样的,层流的粘性系数基本可认为是常数,可湍流中层流底层中粘性系数很小,远小于层流时的粘性系数;而在过渡区,与之相当,在一个数量级;在充分发展的湍流区,又远大于层流时的粘性系数.这是鮑辛内斯克1987年提出的。
1 FLUENT的初始化面板中有一项是设置从哪个地方开始计算(compute from),选择从不同的边界开始计算有很大的区别吗?该怎样根据具体问题选择从哪里计算呢?比如有两个速度入口A和B,还有压力出口等等,是选速度入口还是压力出口?如果选速度入口,有两个,该选哪个呀?有没有什么原则标准之类的东西?一般是选取ALL ZONE,即所有区域的平均处理,通常也可选择有代表性的进口(如多个进口时)进行初始化。
对于一般流动问题,初始值的设定并不重要,因为计算容易收敛。
但当几何条件复杂,而且流动速度高变化快(如音速流动),初始条件要仔细选择。
如果不收敛,还应试验不同的初始条件,甚至逐次改变边界条件最后达到所要求的条件。
2 要判断自己模拟的结果是否是正确的,似乎解的收敛性要比那些初始条件和边界条件更重要,可以这样理解吗?也就是说,对于一个具体的问题,初始条件和边界条件的设定并不是唯一的,为了使解收敛,需要不断调整初始条件和边界条件直到解收敛为止,是吗?如果解收敛了,是不是就可以基本确定模拟的结果是正确的呢?对于一个具体的问题,边界条件的设定当然是唯一的,只不过初始化时可以选择不同的初始条件(指定常流),为了使解的收敛比较好,我一般是逐渐的调节边界条件到额定值("额定值"是指你题目中要求的入口或出口条件,例如计算一个管内流动,要求入口压力和温度为10MPa和3000K,那么我开始叠代时选择入口压力和温度为1MPa和500K(假设,这看你自己问题了),等流场计算的初具规模、收敛的较好了,再逐渐调高压力和温度,经过好几次调节后最终到达额定值10MPa和3000K,这样比一开始就设为10MPa 和3000K收敛的要好些)这样每次叠代可以比较容易收敛,每次调节后不用再初始化即自动调用上次的解为这次的初始解,然后继续叠代。
fluent runge-kutta methods
龙格-库塔法(Runge-Kutta methods)是用于非线性常微分方程的解的重要的一类隐式或显式迭代法。
简写做RK法。
对于任意的
Y=f(X),假设某点(Xi,Yi)的斜率为ki,如果有无限小的dX,则有
Yi+1=Yi+ki*dx。
dx就是迭代步长,然而在现实中它不可能是无限小的,我们一般写作h。
将它与上式中的dx替换就是一阶RK法。
一般我们采用四阶RK法,其形式如下:
k1是时间段开始时的斜率;
k2是时间段中点的斜率,通过欧拉法采用斜率k1来决定y在点tn+h/2的值;
k3也是中点的斜率,但是这次采用斜率k2决定y值;
k4是时间段终点的斜率,其y值用k3决定。
通过四阶RK法的迭代可以得到较为精确的数值解。
FLUENT 收敛判断问题及解决方法1 Under-Relaxation Factors(亚松弛因子)所谓亚松弛,就是将本层次计算结果与上一层次结果的差值作适当缩减,以避免由于差值过大而引起非线性迭代过程的发散。
用通用变量来写出时,为亚松弛因子(Relaxation Factors)。
FLUENT中的亚松弛:由于FLUENT所解方程组的非线性,我们有必要控制变化。
一般用亚松弛方法来实现控制,该方法在每一部迭代中减少了变化量。
亚松弛最简单的形式为:单元内变量等于原来的值加上亚松弛因子a与变化的积。
分离解算器使用亚松弛来控制每一步迭代中的计算变量的更新。
这就意味着使用分离解算器解的方程,包括耦合解算器所解的非耦合方程(湍流和其他标量)都会有一个相关的亚松弛因子。
在FLUENT中,所有变量的默认亚松弛因子都是对大多数问题的最优值。
这个值适合于很多问题,但是对于一些特殊的非线性问题(如某些湍流或者高Raleigh数自然对流问题),在计算开始时要慎重减小亚松弛因子。
使用默认的亚松弛因子开始计算是很好的习惯,如果经过4到5步的迭代残差仍然增长,你就需要减小亚松弛因子。
有时候,如果发现残差开始增加,你可以改变亚松弛因子重新计算。
在亚松弛因子过大时通常会出现这种情况。
最为安全的方法就是在对亚松弛因子做任何修改之前先保存数据文件,并对解的算法做几步迭代以调节到新的参数。
最典型的情况是,亚松弛因子的增加会使残差有少量的增加,但是随着解的进行残差的增加又消失了。
如果残差变化有几个量级你就需要考虑停止计算并回到最后保存的较好的数据文件。
注意:粘性和密度的亚松弛是在每一次迭代之间的。
而且,如果直接解焓方程而不是温度方程(即对PDF计算),基于焓的温度的更新是要进行亚松驰的。
要查看默认的亚松弛因子的值,你可以在解控制面板点击默认按钮。
对于大多数流动,不需要修改默认亚松弛因子。
但是,如果出现不稳定或者发散你就需要减小默认的亚松弛因子了,其中压力、动量、k和e的亚松弛因子默认值分别为0.2,0.5,0.5和0.5。
用FLUENT计算非稳态问题,是不是在计算时必须保证在每个时间步timestep里都要收敛才行,否则计算结果就不对呢也就是说,在iteration选项里,max iteration pertime step设为一个值,比如500,就是如果500次迭代后仍未收敛,进入下一步迭代,那对结果会有什么影响。
对于隐式非定常格式,原则上,每个时间步长内必须保证结果收敛。
在fluent 的帮助中就有这样的话:“对于不可压流动,在每个时间步内,不可压解必须迭代直至收敛。
”另外,我们回归到fluent内部计算的本源,它实质就是一种差分算法,通过不断逼近来获得真实解,这样我们就不难理解为什么在每个时间步长内需要收敛了。
max iteration pertime step 设定的是最大时间步,在单一步长内,如果结果已经收敛,则会自动跳至下一时间进行计算。
所以其设定要纵观全局。
但对于周期性流动,这种收敛性的要求就相对松动一些。
不过你需要多计算几个周期,等计算结果达到对时间的周期状态后,再对结果进行储存。
对于显式非定常格式,在Fluent帮助中这样说:“一定记住,对于显式非定常格式,每一个迭代就是一个时间步。
”如果每个时间步内结果没有得到收敛,则很有可能你所得到的结果是不真实的,但是一个时间步内的不真实性应该不会影响到下一个时间步长内的计算。
因为在每一个时间步开时,fluent 都会进行初始化。
在单个时间步内,它实际是按照稳态进行计算的。
time step size的设定是根据你的计算需要,一般是你的特征长度(比如说管道的长度)除于特征速度(比如平均速度)的值再小一到两个量级即可,如果你的time stip size太大,计算会提示你的,改小即可。
number of time steps是这样设定的:number of time steps X time step size=实际时间积累。
比如说,你计算一个射流,你需要计算到1秒时候的情况,那么(number of time steps)=1秒/(time step size)。
continuity不收敛的问题(1)连续性方程不收敛是怎么回事?在计算过程中其它指数都收敛了,就continuity不收敛是怎么回事。
这和fluent程序的求解方法SIMPLE有关。
SIMPLE根据连续方程推导出压力修正方法求解压力。
由于连续方程中流场耦合项被过渡简化,使得压力修正方程不能准确反映流场的变化,从而导致该方程收敛缓慢。
你可以试验SIMPLEC方法,应该会收敛快些。
在计算模拟中,continuity总不收敛,除了加密网格,还有别的办法吗?别的条件都已经收敛了,就差它自己了,还有收敛的标准是什么?是不是到了一定的尺度就能收敛了,比如10-e5具体的数量级就收敛了continuity是质量残差,具体是表示本次计算结果与上次计算结果的差别,如果别的条件收敛了,就差它。
可以点report,打开里面FLUX选项,算出进口与出口的质量流量差,看它是否小于0.5%.如果小于,可以判断它收敛.(2) fluent残差曲线图中continuity是什么含义?是质量守恒方程的反映,也就是连续性的残差。
这个收敛的快并不能说明你的计算就一定正确,还要看动量方程的迭代计算。
表示某次迭代与上一次迭代在所有cells积分的差值,continuty表示连续性方程的残差(3) 正在学习Fluent,模拟圆管内的流动,速度入口,出口outflow 运行后xy的速度很快就到1e-06了,但是continuity老是降不下去,维持在1e-00和1e-03之间,减小松弛因子好像也没什么变化大家有什么建议吗?你查看了流量是否平衡吗?在report->flux里面操作,mass flow rate,把所有进出口都选上,compute一下,看看nut flux是什么水平,如果它的值小于总进口流量的1%,并且其他检测量在继续迭代之后不会发生波动,也可以认为你的解是收敛的。
造成连续方程高残差不收敛的原因主要有以下几点:1.网格质量,主要可能是相邻单元的尺寸大小相差较大,它们的尺寸之比最好控制在1.2以内,不能超过1.4.2.离散格式及压力速度耦合方法,如果是结构网格,建议使用高阶格式,如2阶迎风格式等,如果是非结构网格,除pressure保持standard格式不变外,其他格式改用高阶格式;压力速度耦合关系,如果使用SIMPLE,SIMPLEC,PISO等segerated solver对联系方程收敛没有提高的话,可以尝试使用coupled solver。
continuity不收敛的问题(1)连续性方程不收敛是怎么回事?在计算过程中其它指数都收敛了,就continuity不收敛是怎么回事。
这和fluent程序的求解方法SIMPLE有关。
SIMPLE根据连续方程推导出压力修正方法求解压力。
由于连续方程中流场耦合项被过渡简化,使得压力修正方程不能准确反映流场的变化,从而导致该方程收敛缓慢。
你可以试验SIMPLEC方法,应该会收敛快些。
在计算模拟中,continuity总不收敛,除了加密网格,还有别的办法吗?别的条件都已经收敛了,就差它自己了,还有收敛的标准是什么?是不是到了一定的尺度就能收敛了,比如10-e5具体的数量级就收敛了continuity是质量残差,具体是表示本次计算结果与上次计算结果的差别,如果别的条件收敛了,就差它。
可以点report,打开里面FLUX选项,算出进口与出口的质量流量差,看它是否小于0.5%.如果小于,可以判断它收敛.(2) fluent残差曲线图中continuity是什么含义?是质量守恒方程的反映,也就是连续性的残差。
这个收敛的快并不能说明你的计算就一定正确,还要看动量方程的迭代计算。
表示某次迭代与上一次迭代在所有cells积分的差值,continuty表示连续性方程的残差(3) 正在学习Fluent,模拟圆管内的流动,速度入口,出口outflow 运行后xy的速度很快就到1e-06了,但是continuity老是降不下去,维持在1e-00和1e-03之间,减小松弛因子好像也没什么变化大家有什么建议吗?你查看了流量是否平衡吗?在report->flux里面操作,mass flow rate,把所有进出口都选上,compute一下,看看nut flux是什么水平,如果它的值小于总进口流量的1%,并且其他检测量在继续迭代之后不会发生波动,也可以认为你的解是收敛的。
造成连续方程高残差不收敛的原因主要有以下几点:1.网格质量,主要可能是相邻单元的尺寸大小相差较大,它们的尺寸之比最好控制在1.2以内,不能超过1.4.2.离散格式及压力速度耦合方法,如果是结构网格,建议使用高阶格式,如2阶迎风格式等,如果是非结构网格,除pressure保持standard格式不变外,其他格式改用高阶格式;压力速度耦合关系,如果使用SIMPLE,SIMPLEC,PISO等segerated solver对联系方程收敛没有提高的话,可以尝试使用coupled solver。
continuity不收敛的问题(1)连续性方程不收敛是怎么回事在计算过程中其它指数都收敛了,就continuity不收敛是怎么回事。
这和fluent程序的求解方法SIMPLE有关。
SIMPLE根据连续方程推导出压力修正方法求解压力。
由于连续方程中流场耦合项被过渡简化,使得压力修正方程不能准确反映流场的变化,从而导致该方程收敛缓慢。
你可以试验SIMPLEC方法,应该会收敛快些。
在计算模拟中,continuity总不收敛,除了加密网格,还有别的办法吗别的条件都已经收敛了,就差它自己了,还有收敛的标准是什么是不是到了一定的尺度就能收敛了,比如10-e5具体的数量级就收敛了continuity是质量残差,具体是表示本次计算结果与上次计算结果的差别,如果别的条件收敛了,就差它。
可以点report,打开里面FLUX选项,算出进口与出口的质量流量差,看它是否小于%.如果小于,可以判断它收敛.(2) fluent残差曲线图中continuity是什么含义是质量守恒方程的反映,也就是连续性的残差。
这个收敛的快并不能说明你的计算就一定正确,还要看动量方程的迭代计算。
表示某次迭代与上一次迭代在所有cells积分的差值,continuty表示连续性方程的残差~(3) 正在学习Fluent,模拟圆管内的流动,速度入口,出口outflow 运行后xy的速度很快就到1e-06了,但是continuity老是降不下去,维持在1e-00和1e-03之间,减小松弛因子好像也没什么变化大家有什么建议吗你查看了流量是否平衡吗在report->flux里面操作,mass flow rate,把所有进出口都选上,compute一下,看看nut flux是什么水平,如果它的值小于总进口流量的1%,并且其他检测量在继续迭代之后不会发生波动,也可以认为你的解是收敛的。
造成连续方程高残差不收敛的原因主要有以下几点:1.网格质量,主要可能是相邻单元的尺寸大小相差较大,它们的尺寸之比最好控制在以内,不能超过.2.离散格式及压力速度耦合方法,如果是结构网格,建议使用高阶格式,如2阶迎风格式等,如果是非结构网格,除pressure保持standard格式不变外,其他格式改用高阶格式;压力速度耦合关系,如果使用SIMPLE,SIMPLEC,PISO等segerated solver对联系方程收敛没有提高的话,可以尝试使用coupled solver。
Courant number:库朗数。
实际上是指时间步长和空间步长的相对关系,系统自动减小courant数,这种情况一般出现在存在尖锐外形的计算域,当局部的流速过大或者压差过大时出错,把局部的网格加密再试一下。
在FLUENT中,用courant number来调节计算的稳定性与收敛性。
一般来说,随着courant number的从小到大的变化,收敛速度逐渐加快,但是稳定性逐渐降低。
所以具体的问题,在计算的过程中,最好是把courant number从小开始设置,看看迭代残差的收敛情况,如果收敛速度较慢而且比较稳定的话,可以适当的增加courant number的大小,根据自己具体的问题,找出一个比较合适的courant number,让收敛速度能够足够的快,而且能够保持它的稳定性。
FLUENT计算开始迭代最好使用较小的库朗数,否则容易导致迭代发散,修改办法slove-controls-solution,修改courant Number 默认值为1,开始没有经验的改小点,比如0.01,然后逐渐加大。
Fluent中的离散格式SIMPLE与SIMPLEC比较在FLUENT中,可以使用标准SIMPLE算法和SIMPLEC(SIMPLE-Consistent)算法,默认是SIMPLE算法,但是对于许多问题如果使用SIMPLEC可能会得到更好的结果,尤其是可以应用增加的亚松驰迭代时,具体介绍如下:对于相对简单的问题(如:没有附加模型激活的层流流动),其收敛性已经被压力速度耦合所限制,你通常可以用SIMPLEC算法很快得到收敛解。
在SIMPLEC中,压力校正亚松驰因子通常设为1.0,它有助于收敛。
但是,在有些问题中,将压力校正松弛因子增加到1.0可能会导致不稳定。
对于这种情况,你需要使用更为保守的亚松驰或者使用SIMPLE算法。
对于包含湍流和/或附加物理模型的复杂流动,只要用压力速度耦合做限制,SIMPLEC会提高收敛性。
" What is the difference between the time accurate solution of Navier-Stokes equations and the DNS solution? "I'm not sure I understand this question correctly, but as far as I am aware DNS (Direct Numerical Simulation) is defined as a time accurate solution of the Navier-Stokes equations.Perhaps you mean "What is the difference between laminar & turbulent DNS?" ? Believing this to be so from reading the rest of your message I wrote the following:When the DNS is of turbulence rather than a laminar flow the turbulence requires initialization in some way. The same is true of LES (LES is always turbulent, because laminar LES = DNS by definition). I have found little reported work on the proceedures used to accomplish this turbulence initialization.I can only speak for the LES code I use (and the generations of code that preceded it). The turbulence is initialized by setting an initial flow field that has a random fluctation velocity component added to the inital mean velocity.-----------------For example:U_initial_cell =U_initial_mean + (Random_number * U_initial_mean * 0.20)( Random_number has a value in the range -1 to +1 )This function sets the initial cell velocity to that of the initial_mean with a tolerance of 20% (i.e. + or - 20%). So if the U_initial_mean was 1.0 then the initial velocity of the cell could be anywhere between 0.8 and 1.2 depending on the Random_number (an intrinsic computer function).-----------------The value for initial fluctuation (20% etc) is a fairly arbitrary value just required to `kick-start' the turbulence. Once the simulation has been kick-started and run sufficiently long enough for the correct energy cascade to be observed (by monitoring k.e. of the flow) the statistics data from that point onward is o.k to be used for results. This accumulation of statistical data is one of the reasons why LES/DNS turbulent simulations require so much more time to run.Providing the same random_number is used on the same cells during initialization the computations of two DNS cases will be exactly* the same when all other conditions (boundary, geometry, etc) are equivalent.*exactly is defined as Phi(x,t)_simulation_A = Phi(x,t)_simulation_BIf different random_numbers are used then the flow solution would be expected to be slightly numerically different from a previous run, but statistically the same. This would be similar to the case where two experimental turbulent simulations in a wind tunnel do not have exactly* the same flow field, but are expected to be statistically the same and have the same coherent structures in the flow.LES, or turbulent DNS is like journeying along a road. The intial fluctations imposed pre-determine which exact roads you will travel on, and the other boundary conditions determine the general direction in which you will be heading. In industrial problems the concern is with the direction you are heading,N,E,S, or West, and not so much if you are on a particular road at a particular time, e.g. walking by 43 Accacia Road at 5pm.This idea may be seen in the definition of turblence by Hinze (1959) "...so that statistically distinct average values can be discerned." For if Taylor & Von Karman's 1937 definition was taken literally CFD shouldn't exist!The grid size of LES should be small enough. But it is not easy to get the exact size of the smallest cells. Some people use y+, other people use Kolmogorov scales,etc. As you know, the basic assumption is that the flow with SGS is isotropic in the case of using Smagorinsky model.Based on my experience, not only the size of smallest grids but also there are many other facts to be considered in LES. Computational domain size, cell cluster, boundary conditions, wall treatment, etc.So if you want to do LES, some compromise would be necessary. At first, please use reasonable size of computational domain, number of cells and run the problem in your computer. If the result is not accurate enough, then increase the resolution. But even though the resolution is not enough (in the LES viewpoint), you may get satisfactory results.Good luckIdeally, while doing LES you want to have a mesh which resolves all the anisotropic scales leaving only the isotropic scales to be modeled. The modeling of the isotropic scales is similar to the RANS approach. In reality, it is not possible to satisfy all the mesh resolution requiremnts all the time with LES. For the question whether a coarse mesh LES gives a good solution, it depends on the level of accuracy you are lookiing at. This is where your engineering intuition should provide you the answer.。