CFD残差不收敛的问题
残差曲线continuity不收敛
残差曲线continuity不收敛fluent中残差曲线continuity不收敛的问题(1) fluent残差曲线图中continuity是什么含义是质量守恒方程的反映,也就是连续性的残差。
这个收敛的快并不能说明你的计算就一定正确,还要看动量方程的迭代计算。
表示某次迭代与上一次迭代在所有cells积分的差值,continuty表示连续性方程的残差(2)连续性方程不收敛是怎么回事在计算过程中其它指数都收敛了,就continuity不收敛是怎么回事。
这和fluent程序的求解方法SIMPLE有关。
SIMPLE根据连续方程推导出压力修正方法求解压力。
由于连续方程中流场耦合项被过渡简化,使得压力修正方程不能准确反映流场的变化,从而导致该方程收敛缓慢。
你可以试验SIMPLEC方法,应该会收敛快些。
在计算模拟中,continuity总不收敛,除了加密网格,还有别的办法吗别的条件都已经收敛了,就差它自己了,还有收敛的标准是什么是不是到了一定的尺度就能收敛了,比如10-e5具体的数量级就收敛了continuity 是质量残差,具体是表示本次计算结果与上次计算结果的差别,如果别的条件收敛了,就差它。
可以点report,打开里面FLUX选项,算出进口与出口的质量流量差,看它是否小于%.如果小于,可以判断它收敛.(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。
残差曲线continuity不收敛
fluent中残差曲线continuity不收敛的问题(1) fluent残差曲线图中continuity是什么含义是质量守恒方程的反映,也就是连续性的残差。
这个收敛的快并不能说明你的计算就一定正确,还要看动量方程的迭代计算。
表示某次迭代与上一次迭代在所有cells积分的差值,continuty表示连续性方程的残差(2)连续性方程不收敛是怎么回事在计算过程中其它指数都收敛了,就continuity不收敛是怎么回事。
这和fluent程序的求解方法SIMPLE有关。
SIMPLE根据连续方程推导出压力修正方法求解压力。
由于连续方程中流场耦合项被过渡简化,使得压力修正方程不能准确反映流场的变化,从而导致该方程收敛缓慢。
你可以试验SIMPLEC方法,应该会收敛快些。
在计算模拟中,continuity总不收敛,除了加密网格,还有别的办法吗别的条件都已经收敛了,就差它自己了,还有收敛的标准是什么是不是到了一定的尺度就能收敛了,比如10-e5具体的数量级就收敛了continuity 是质量残差,具体是表示本次计算结果与上次计算结果的差别,如果别的条件收敛了,就差它。
可以点report,打开里面FLUX选项,算出进口与出口的质量流量差,看它是否小于%.如果小于,可以判断它收敛.(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。
FLUENT模拟残差曲线震荡及收敛问题
FLUENT运行过程中,出现残差曲线震荡是怎么回事?如何解决残差震荡的问题?残差震荡对计算收敛性和计算结果有什么影响?一. 残差波动的主要原因:1、高精度格式;2、网格太粗;3、网格质量差;4、流场本身边界复杂,流动复杂;5、模型的不恰当使用。
二. 问:在进行稳态计算时候,开始残差线是一直下降的,可是到后来各种残差线都显示为波形波动,是不是不收敛阿?答:有些复杂或流动环境恶劣情形下确实很难收敛。
计算的精度(2 阶),网格太疏,网格质量太差,等都会使残差波动。
经常遇到,一开始下降,然后出现波动,可以降低松弛系数,我的问题就能收敛,但如果网格质量不好,是很难的。
通常,计算非结构网格,如果问题比较复杂,会出现这种情况,建议作网格时多下些功夫。
理论上说,残差的震荡是数值迭代在计算域内传递遭遇障碍物反射形成周期震荡导致的结果,与网格亚尺度雷诺数有关。
例如,通常压力边界是主要的反射源,换成OUTFLOW 边界会好些。
这主要根据经验判断。
所以我说网格和边界条件是主要因素。
三. 1、网格问题:比如流场内部存在尖点等突变,导致网格在局部质量存在问题,影响收敛。
2、可以调整一下courant number,courant number实际上是指时间步长和空间步长的相对关系,系统自动减小courant数,这种情况一般出现在存在尖锐外形的计算域,当局部的流速过大或者压差过大时出错,把局部的网格加密再试一下。
在fluent中,用courant number来调节计算的稳定性与收敛性。
一般来说,随着courant number 的从小到大的变化,收敛速度逐渐加快,但是稳定性逐渐降低。
所以具体的问题,在计算的过程中,最好是把courant number从小开始设置,看看迭代残差的收敛情况,如果收敛速度较慢而且比较稳定的话,可以适当的增加courant number的大小,根据自己具体的问题,找出一个比较合适的courant number,让收敛速度能够足够的快,而且能够保持它的稳定性。
fluent残差曲线不收敛
当使用Fluent进行流体模拟时,如果残差曲线不收敛,可能是由于多种原因导致的。
以下是一些可能的原因和解决方法:
1.网格质量差:劣质的网格会导致数值不稳定性,从而影响残差曲线的收敛。
确保网格质量良好,没有过度扭曲或不良的网格连接。
2.初始条件设置不当:初始条件设置不当可能导致数值不收敛。
检查初始条件是否合理,特别是速度和压力等参数的设置。
3.边界条件设置不合理:边界条件的设置对数值收敛也有重要影响。
确保边界条件正确设置,没有遗漏或错误。
4.材料参数不准确:材料参数的不准确可能导致数值不收敛。
检查材料参数是否准确,特别是密度、粘度等关键参数。
5.求解器设置不当:求解器的设置也会影响数值收敛。
检查求解器的设置是否合理,特别是松弛因子和时间步长的设置。
针对以上问题,可以采取以下解决方法:
1.优化网格质量:使用高质量的网格可以提高数值稳定性,使残差曲线更快收敛。
2.合理设置初始条件:确保初始条件设置合理,避免初始条件对数值收敛产生不利影响。
3.正确设置边界条件:边界条件的正确设置是保证数值收敛的重要因素,确保边界条件没有遗漏或错误。
4.精确设置材料参数:确保材料参数的准确性,特别是关键参数的准确性。
5.调整求解器设置:根据具体问题调整求解器的设置,特别是松弛因子和时间步长的设置,以提高数值收敛的速度和稳定性。
FLUENT模拟残差曲线震荡及收敛问题
FLUENT运行过程中,出现残差曲线震荡是怎么回事?如何解决残差震荡的问题?残差震荡对计算收敛性和计算结果有什么影响?一.残差波动的主要原因:1、"高精度格式;2、"网格太粗;3、"网格质量差;4、"流场本身边界复杂,流动复杂;5、"模型的不恰当使用。
二.问:在进行稳态计算时候,开始残差线是一直下降的,可是到后来各种残差线都显示为波形波动,是不收敛阿?答:有些复杂或流动环境恶劣情形下确实很难收敛。
计算的精度(2阶),网格太疏,网格质量太差,等都会使残差波动。
经常遇到,一开始下降,然后出现波动,可以降低松弛系数,我的问题就能收敛,但如果网格质量不好,是很难的。
通常,计算非结构网格,如果问题比较复杂,会出现这种情况,建议作网格时多下些功夫。
理论上说,残差的震荡是数值迭代在计算域内传递遭遇障碍物反射形成周期震荡导致的结果,与网格亚尺度雷诺数有关。
例如,通常压力边界是主要的反射源,换成OUTFLOW边界会好些。
这主要根据经验判断。
所以我说网格和边界条件是主要因素。
三.1、"网格问题:比如流场内部存在尖点等突变,导致网格在局部质量存在问题,影响收敛。
2、可以调整一下courant number,courant number实际上是指时间步长和空间步长的相对关系,系统自动减小courant数,这种情况一般出现在存在尖锐外形的计算域,当局部的流速过大或者压差过大时出错,把局部的网格加密再试一下。
在fluent中,用courant number来调节计算的稳定性与收敛性。
一般来说,随着courant number的从小到大的变化,收敛速度逐渐加快,但是稳定性逐渐降低。
所以具体的问题,在计算的过程中,最好是把courant number从小开始设置,看看迭代残差的收敛情况,如果收敛速度较慢而且比较稳定的话,可以适当的增加courant number的大小,根据自己具体的问题,找出一个比较合适的courant number,让收敛速度能够足够的快,而且能够保持它的稳定性。
fluent计算收敛残差震荡
fluent计算收敛残差震荡在数值计算中,收敛残差震荡是一种常见的问题。
在求解非线性方程组、微分方程或优化问题时,往往需要迭代方法。
收敛残差正常情况下应该逐渐减小,最终趋于零。
然而,在一些情况下,残差可能出现震荡现象,即在一段迭代过程中,残差会交替增大和减小,无法收敛。
收敛残差震荡的原因往往是迭代方法的选择不恰当或问题本身的特殊性质导致的。
下面将从几个方面详细讨论收敛残差震荡的原因及解决方法。
1.迭代方法选择不恰当在使用迭代方法求解问题时,迭代方法本身的性质对收敛残差的影响很大。
如果选择的迭代方法不适合问题的特点,可能导致震荡现象。
解决方法是根据问题的特点选择合适的迭代方法。
常见的迭代方法包括Jacobi、Gauss-Seidel、SOR、CG等,不同的问题适合不同的迭代方法。
2.松弛因子过大或过小对于一些迭代方法,如SOR方法,引入一个松弛因子来加速收敛速度。
然而,松弛因子选择不当也可能导致残差震荡。
如果松弛因子过大,会导致迭代过程不稳定,残差震荡;如果松弛因子过小,迭代速度很慢,也容易导致残差震荡。
解决方法是通过试-and-error 或者更高级的数学方法来选择合适的松弛因子。
3.非线性问题的线性化误差对于非线性问题,常常需要将其线性化为一系列的线性方程组进行求解。
然而,线性化误差可能导致收敛残差震荡。
线性化误差通常是由于线性化过程的近似所致。
解决方法是通过增加迭代次数或者改进线性化方法来减小线性化误差。
4.初值选择不恰当在迭代方法中,初值的选择对收敛性有很大影响。
如果初始点距离解较远,迭代过程可能会进入一个震荡环节,导致残差震荡。
正确的初值选择方法是根据问题的特点来选取,可以根据经验、前置知识或者通过试-and-error 的方法。
5.数值稳定性问题一些数值计算过程可能因为数值稳定性问题导致残差震荡。
数值稳定性问题通常涉及到浮点运算的精度,例如除以一个较小的数、减去两个接近的数等。
解决方法是通过选择更精确的数值计算方法,如使用高精度运算、改进迭代格式等。
CFD计算的常见问题
CFD计算的常见问题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问题。
残差不收敛
fluent中残差曲线continuity不收敛的问题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%,并且其他检测量在继续迭代之后不会发生波动,也可以认为你的解是收敛的。
Fluent模拟结果不收敛及解决办法,CFD模拟仿真
Fluent模拟不收敛及解决办法
原创声明:本教程由百度文库店铺:第七代师兄,独家原创,版权所有
Fluent是主流的流体动力学仿真软件,在模拟过程中可能会出现计算结果不收敛的情况。
以下是一些可能导致不收敛的原因以及相应的解决办法:
1)网格质量差:不收敛的问题可能是因为网格质量不好,导致计算无法稳定地进行。
解决方法是优化网格,使网格更加精细,以提高计算精度。
2)边界条件设置不当:边界条件设置不当可能导致计算不收敛。
解决方法是确保边界条件设置正确,并且与实际情况相符。
3)模型简化不合理:模型简化不合理可能导致计算不收敛。
解决方法是尽可能准确地模拟模型,并避免简化模型过于严重。
4)数值方法选择不当:数值方法选择不当可能导致计算不收敛。
解决方法是选择合适的数值方法,并确保参数设置正确。
5)计算机性能不足:计算机性能不足可能导致计算不收敛。
解决方法是使用更强大的计算机,或者减少计算量以提高计算速度。
6)模拟参数不合理:模拟参数设置不合理可能导致计算不收敛。
解决方法是调。
fluent残差收敛和迭代步数
fluent残差收敛和迭代步数
“Fluent”通常是指计算流体动力学(CFD)软件Fluent,我
会从这个角度回答你的问题。
在使用Fluent进行CFD模拟时,残差收敛和迭代步数是两个非
常重要的概念。
残差是指数值解与解析解之间的差异,而残差收敛
则表示残差随着迭代次数的增加逐渐减小并最终收敛到一个接近于
零的值。
迭代步数则是指在求解过程中所进行的迭代次数。
首先,让我们来谈谈残差收敛。
在Fluent中,通常会设定一个
收敛标准,比如残差值小于某个设定的阈值时认为收敛。
在求解过
程中,Fluent会不断迭代计算,每次迭代都会更新流场的各个参数,并计算残差。
随着迭代的进行,残差会逐渐减小,直到满足设定的
收敛标准。
残差收敛的快慢受到多种因素的影响,比如初始条件的
设定、边界条件的准确性、网格的精细程度等等。
其次,迭代步数也是影响计算效率和准确性的重要因素。
迭代
步数过少会导致计算结果不够精确,而迭代步数过多则会增加计算
时间。
在实际使用中,需要权衡迭代步数和计算精度,通常会根据
经验和实际需求来设定合理的迭代步数。
总的来说,在Fluent中,残差收敛和迭代步数是需要密切关注和调节的两个参数。
合理设置这两个参数可以保证计算结果的准确性和收敛速度。
在实际使用中,通常需要进行多次试验和调整,以获得最佳的计算效果。
希望这个回答能够帮助你更好地理解Fluent 中的残差收敛和迭代步数。
CFD残差不收敛的问题
CFD:残差不收敛问题来源:汤本凯的日志总是收敛的CFD程序,不可能是好东西。
大部分流动都是非定常的。
定常是一种近似。
平时大家都是做定常计算。
当流体中有很大的非定常现象时,合理的结果应该是定常计算不能收敛。
那些总是收敛的软件,像NUMECA,里面一定有一人为的非物理的东西来稳定迭代。
在这种情况下,十有八九,收敛的结果与实际情况相差很远。
如果,有人用这样的结果去做工程,那是要闯祸的。
建议读一下,今年IGTI年会中,Denton的文章。
里面总结了不少如何使用CFD的经验。
说实话,关于这些问题我确实不敢说可以解决,但是都遇见过。
有时候除了软件的问题,还有硬件的问题。
我曾经用单机和并行机计算过相同的问题,单机显示有的和楼主见到的相同,甚至不收敛,可是在并行机上根本没有问题!你的网格数不算多,而且图形不是很复杂,尽量用结构化网格吧,看看边界条件设定是否有问题。
用这个软件需要很多的经验,和做实验是一样的,尤其是刚开始。
当连续性不收敛的时候,做一下几个方面的检查(当然有的具体问题还要具体分析):1,网格问题:在相对复杂的几何模型往往要分块画网格,当分块画网格的时候相邻网格尺寸差别太的时候,这时候就会出现连续性方程不收敛或者残差很大,在相邻的块网格之间差别不要太大一般要控制在1.2左右,同时近壁面的网格也对连续性有一定的影响,在壁面处使用边界层的时候边界层与网格的差别也不要太大。
2,边界条件的设置问题:边界条条件要设置合理,这个基本靠经验,可以试几种不同的边界条件,看看那中合适,同时在设置边界条件的时候也应该注意,如果是二维模型,设置水力直径和一些特征长度的时候,要注意fluent计算二维问题的时候默认的是宽度为无穷大,就是z方向无穷大,这样计算水力直径的时候就要注意了。
3,设置松弛因子:一般问题fluent的默认的松弛因子就够了,但是如果连续性出现问题的时候可以改变一下松弛因子,当然这样付出的代价就是增加了计算时间。
速度残差曲线不收敛
速度残差曲线不收敛
速度残差曲线是衡量地震数据质量的重要指标之一,通常用于评估地震记录在处理过程中是否达到了预期效果。
若速度残差曲线不收敛,说明数据存在一些问题需要进一步排查。
造成速度残差曲线不收敛的原因很多,可能是数据质量不佳,如地震记录中噪声过大、电磁干扰大等。
另外,也可能是数据处理参数选择不合理,如滤波器截止频率选择不合适、配准方法不正确等。
解决速度残差曲线不收敛的方法一般有以下几种:
1. 检查数据质量:确认地震记录是否受到了电磁干扰、数据是否存在噪声等问题,并采取相应措施进行处理。
2. 调整数据处理参数:针对不同的问题,如滤波器频率等进行调整,以选择最佳的参数组合。
3. 使用其他数据处理方法:如果以上方法均无法解决问题,可以考虑采用其他的地震数据处理方法或软件工具,如各种反演算法、成像技术等。
综上所述,速度残差曲线不收敛可能是由于数据质量问题或处理参数选择不合理,需要进行细致的检查和分析来解决。
starccm收敛标准
Star-CCM+是CD-adapco公司开发的新一代CFD求解器,使用多面体网格,
相比于原来的四面体网格,在保持相同计算精度的情况下,可以实现计算性能约
3~10倍的提高。
关于Star-CCM+的收敛标准,这通常取决于具体的模拟类型和问题特性。
一
般来说,收敛标准通常涉及到以下几个方面:
1. 残差:在CFD模拟中,残差是用来衡量方程的解是否满足离散化的方程。
对于稳态问题,通常需要将残差降低到10^-6或更低;对于非稳态问题,通常需要将残差降低到10^-3或更低。
2. 流场:流场应该显示出合理的动力学行为,例如湍流模型的涡旋结构应
该是合理的。
3. 监测点:在一些关键区域设置监测点,这些区域的变量(如速度、压力、温度等)应显示出预期的收敛趋势。
为了获得最佳结果,使用Star-CCM+进行模拟时,建议与经验丰富的工程师
或专家合作,以确保收敛标准适用于特定的问题和模拟类型。
Fluent的CFD计算不收敛怎么办?
Fluent的CFD计算不收敛怎么办?一、fluent计算收敛,应满足以下要求1、各个项目的迭代残差降低到足够小的数值;2、某些宏观物理量(例如管路出口流量)数值基本平稳不波动;二、计算不能收敛原因主要是这几个类型:1、网格单元质量太差;2、材料参数、边界条件的设定等组合不恰当或者违背物理规律;3、求解方式和参数设定不合理;单元质量太差是一个很常见的导致计算不收敛的原因,劣质的单元会导致某些敏感区域数值不稳定。
三、对于fluent计算,建议网格标准如下1、面单元,三角形内角范围20-120度,四边形单元45-135度;2、四面体单元,扭曲度不超过0.9,最好控制在0.85以下;3、相邻单元之间尺寸比例不超过1.5;4、边界层区域,注意是否满足湍流模型相对应的y+数值要求;5、单元密度是否分布合理,在流动复杂的区域有较密集的单元;材料参数、边界条件等涉及物理实际场景的设定,如果设定不合理,也会导致计算不收敛。
因为软件中设置的情况,很有可能在现实世界不可能发生。
典型例子,多相流计算中,各个副相体积比总和超过100%,导致主相体积比为负数。
此时计算不收敛是正常现象,因为这个在现实中不可能出现(某种组分在混合物的比例,只可能0-100%)。
此情况下即使计算收敛,结果也是非物理解,没有参考价值。
从数值计算角度,某些求解方式本身就存在数值不稳定或者难以收敛的问题。
对于瞬态计算,过大的时间步长也会引起计算不收敛。
四、不收敛原因排查步骤:1、检查单元质量,保证不存在劣质单元;2、如果问题复杂,考虑因素很多,则先采用考虑因素较少的简单模型;3、是否收敛,随后依次添加各影响因素;4、仔细查看各个设定,检查是否存在违反物理规律的设定;5、修改计算格式,瞬态计算还可以减少时间步长;6、修改松弛因子;如果网格质量良好,迭代残差在开始后不久就向着无穷大方向上升,通常在步骤2、3中会发现问题。
如果是迭代残差经历多次计算后仍然在比较低的值波动但是无法达到收敛标准,通常需要采用步骤4、5的操作。
「胡言」CFD计算收敛控制
「胡言」CFD计算收敛控制本文简单描述CFD计算过程中的收敛控制问题。
我们总是希望给对方呈现完美的残差收敛曲线,以证明计算结果的可靠性。
然而工程中的仿真计算,很多时候残差曲线自己都不敢看,更不要说给别人看了。
CFD计算的收敛控制的确是挺麻烦的,这里懒得提那些与计算流体力学算法相关的东西,只是摆一摆为了获得比较好的收敛性,可能采取的一些手段。
影响CFD计算收敛性的因素实在太多,可以说贯穿了前处理的每一步操作。
从模型简化、网格划分,离散方法、求解控制到边界条件初始条件,都会对计算收敛性造成影响。
要获取收敛性好的计算模型,实在不是一件容易的事情。
1模型简化这里的模型简化指的是将工程问题转化为数学方程可以描述的物理问题。
在转化的过程中,不可避免的存在对物理现象的诸多假设,这些假设的合理与否直接影响了计算结果的精度,也会影响到计算过程的收敛性。
Fluent中经常出现的浮点错误提示,大部分情况下是由于模型简化存在问题。
当然模型简化与仿真者对问题的了解程度密切相关,也与其理论背景有密切关系。
不过可以有一些大的指导思想,比如说在进行模型简化之前,可以针对工程现象,评估并回答以下的一些问题: •包含了哪些物理现象?流动、传热、多相流、化学反应、多物理量耦合……?(包含的物理现象越多,收敛越困难)•物理现象波及的范围有大概多大?(计算区域越大,计算时间越长,收敛越困难)•流动是层流还是湍流?(湍流要比层流难收敛得多)•若涉及到传热,需要考虑哪些传热形式?是否需要考虑辐射换热?(辐射计算收敛性较差)•是否涉及到化学反应?化学反应机理是否明确?(反应机理不明确的化学反应计算收敛性很差)•是否包含多相流计算?相间相互作用机理是否明确?(多相流计算收敛性通常都很差,尤其涉及到相间传质的计算)为了提高计算的收敛性,可以先搭建简单模型,再在初始模型的基础上不断细化,使其逐渐逼近工程问题。
如计算换热,可以先不考虑辐射计算,在获取传导和对流收敛解的基础上,再增加辐射模型考虑辐射换热。
cfd计算收敛 判断
CFD计算收敛判断
CFD(计算流体力学)是一种数值模拟技术,用于模拟流体和气体的流动和传热现象。
在进行CFD计算时,收敛是指在迭代过程中,模型参数已经达到稳定状态,并且计算结果已经满足所设定的精度要求。
在CFD计算中,收敛判断通常基于以下几个指标:
1. 迭代次数:在每次迭代中,模型参数会发生微小的变化。
如果迭代次数太少,可能无法达到收敛状态。
如果迭代次数太多,说明模型参数已经稳定,可以停止计算。
2. 残差:残差是指计算结果与实际值之间的差异。
在CFD计算中,残差通常用于评估模型的准确性。
如果残差太小,说明模型已经收敛,可以停止计算。
如果残差很大,说明模型还没有收敛,需要继续迭代。
3. 精度:在CFD计算中,通常设定一个精度指标,用于评估模型的准确性。
如果计算结果已经满足精度要求,说明模型已经收敛,可以停止计算。
如果计算结果还不满足精度要求,说明模型还没有收敛,需要继续迭代。
需要注意的是,不同的CFD问题具有不同的收敛判断方法。
在进行CFD计算时,需要根据具体问题的特点选择合适的收敛判断方法。
同时,需要进行多次计算并对比结果,以确保计算结果的准确性。
cfd判断收敛的方法、残差的概念以及不收敛通常的解决方式
fluent 中判断收敛的方法[引用]FLUENT 中判断收敛的方法判断计算是否收敛,没有一个通用的方法。
通过残差值判断的方法,对一些问题或许很有效,但在某些问题中往往会得出错误的结论。
因此,正确的做法是,不仅要通过残差值,也要通过监测所有相关变量的完整数据,以及检查流入与流出的物质和能量是否守恒的方法来判断计算是否收敛。
1、监测残差值。
在迭代计算过程中,当各个物理变量的残差值都达到收敛标准时,计算就会发生收敛。
Fluent 默认的收敛标准是:除了能量的残差值外,当所有变量的残差值都降到低于10-3 时,就认为计算收敛,而能量的残差值的收敛标准为低于10-6。
2、计算结果不再随着迭代的进行发生变化。
有时候,因为收敛标准设置得不合适,物理量的残差值在迭代计算的过程中始终无法满足收敛标准。
然而,通过在迭代过程中监测某些代表性的流动变量,可能其值已经不再随着迭代的进行发生变化。
此时也可以认为计算收敛。
3、整个系统的质量,动量,能量都守恒。
在Flux Reports 对话框中检查流入和流出整个系统的质量,动量,能量是否守恒。
守恒,则计算收敛。
不平衡误差少于0.1%,也可以认为计算是收敛的。
FLUENT 中残差的概念残差是cell 各个face 的通量之和,当收敛后,理论上当单元内没有源项使各个面流入的通量也就是对物理量的输运之和应该为零。
最大残差或者RSM 残差反映流场与所要模拟流场(只收敛后应该得到的流场,当然收敛后得到的流场与真实流场之间还是存在一定的差距)的残差,残差越小越好,由于存在数值精度问题,不可能得到0 残差,对于单精度计算一般应该低于初始残差1e-03 以下才好,当注意具体情况,看各个项的收敛情况(比方说连续项不易收敛而能量项容易)。
一般在FLUENT 中可以进行进出口流量监控,当残差收敛到一定程度后,还要看进出口流量是否稳定平衡,才可确定收敛与否(翼型计算时要监控升阻力的平衡)。
残差在较高位震荡,需要检查边界条件是否合理,其次检查初始条件是否合理,比如激波的流场,初始条件的不合适会造成流场的振荡。
收敛标准的判定
收敛标准的判定CFD技术发展到今天已经逐渐成为多个领域的主要产品研发⼿段,如航空航天、船舶、汽车等,那么在使⽤的过程中,暴露的问题也越来越多,之前有不⽌⼀个⼯程师问过我这样的问题:究竟计算到什么程度才算收敛?我的计算结果可信吗?残差曲线到⼀定程度就不在下降了,我的设置是不是有问题啊?……其实这些问题总结起来是⼀个问题:CFD计算的收敛标准是什么。
今天这期博⽂我们以PumpLinx瞬态计算为例谈⼀谈这个问题,收敛标准并不是由⼀个准则就可以衡量决定的,⽽是由多个准则共同确定的,注意,下⾯所列没有选后顺序。
残差曲线。
PumpLinx收敛曲线的数量与所选流动模型有关,下图为某案例的残差曲线,分别调1、残差曲线⽤流动模型以及空化模型,软件通过求解相应公式进⾏数值分析,下图中的压⼒和速度曲线对应着流动模块,即求解N-S⽅程,⽓体质量分数曲线对应着空化模型,即求解空化⽅程,模型流场稳定后,残差曲线应均能达到收敛精度。
质量守恒。
众所周知,CFD计算满⾜三⼤守恒定律,质量守恒就是其中的⼀个,对于⽜顿流体⽽2、质量守恒⾔,可以将质量守恒作为收敛的评判标准之⼀,模型计算稳定之后,对每⼀个时间步长⽽⾔,如果进出⼝⽮量和除以模型总质量流量能够达到1%以内或者是在0附近波动的话,我们认为计算已经收敛。
3、监测曲线。
可以在模型的某些位置设置监测点或者监测⾯,通过监测该点或⾯的属性(如压⼒、流量、速度等)来评判是否收敛,如果仿真已经收敛,所监测的属性曲线应为⼀条波动幅值较⼩或者是周期性波动的曲线,下图为加权后的出⼝体积流量曲线。
如果以上三条准则均满⾜,那么计算模型已经收敛,计算结果具有⼀定的参考性;如果只第⼆条和第三条满⾜,⽽残差曲线并没有完全达到收敛精度要求,那么也可以认为计算收敛了,结果也是可信的;但是如果第⼆条和第三条有⼀条不满⾜,那么这个计算是失败的,即使有计算结果也是不可信的。
接下来⼯程师需要去查找导致这⼀失败的原因,下期博⽂我们会讲到,欢迎⼤家继续关注。
fluent能量方程不收敛
Fluent能量方程不收敛引言在计算流体力学中,Fluent是一种广泛使用的计算流体力学(CFD)软件,用于模拟和分析流体流动和传热现象。
能量方程是CFD模拟中重要的一部分,它描述了流体中能量的转移和变化。
然而,在使用Fluent进行模拟时,我们可能会遇到能量方程不收敛的问题。
这意味着在迭代过程中,能量方程无法达到收敛条件,导致无法得到准确的结果。
本文将讨论Fluent能量方程不收敛的原因,并提供解决方法。
原因分析初始条件设置在进行CFD模拟前,我们需要设置初始条件。
初始条件对于迭代过程的收敛性非常重要。
如果初始条件设置不合理,可能导致能量方程不收敛。
解决方法:合理设置初始条件。
可以通过参考文献或者经验值来确定初始条件,并进行适当调整。
网格质量网格质量对于CFD模拟结果的准确性和收敛性有着重要影响。
不合理的网格划分会导致数值解精度低、迭代困难等问题。
解决方法:优化网格质量。
可以使用网格生成软件进行网格质量的检查和改进,确保网格划分合理。
边界条件边界条件是能量方程求解中必须考虑的重要因素。
不合理的边界条件设置可能导致能量方程不收敛。
解决方法:合理设置边界条件。
根据实际情况选择适当的边界条件,并进行适当调整。
物理模型选择在进行CFD模拟时,我们需要选择适当的物理模型。
不合理的物理模型选择可能导致能量方程不收敛。
解决方法:选择适当的物理模型。
根据实际情况选择适合的物理模型,并进行参数调整。
迭代参数设置在Fluent中,我们可以设置迭代参数来控制求解过程。
不合理的迭代参数设置可能导致能量方程不收敛。
解决方法:优化迭代参数设置。
可以通过试验和经验来确定合适的迭代参数,并进行适当调整。
解决方法网格细化如果发现能量方程不收敛,可以尝试对网格进行细化处理。
细化后的网格可以提高数值解精度,并有助于收敛性。
收敛准则调整在Fluent中,我们可以设置收敛准则来控制迭代过程。
如果能量方程不收敛,可以尝试调整收敛准则。
迭代参数调整在Fluent中,我们可以设置迭代参数来控制求解过程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CFD:残差不收敛问题
来源:汤本凯的日志
总是收敛的CFD程序,不可能是好东西。
大部分流动都是非定常的。
定常是一种近似。
平时大家都是做定常计算。
当流体中有很大的非定常现象时,合理的结果应该是定常计算不能收敛。
那些总是收敛的软件,像NUMECA,里面一定有一人为的非物理的东西来稳定迭代。
在这种情况下,十有八九,收敛的结果与实际情况相差很远。
如果,有人用这样的结果去做工程,那是要闯祸的。
建议读一下,今年IGTI年会中,Denton的文章。
里面总结了不少如何使用CFD的经验。
说实话,关于这些问题我确实不敢说可以解决,但是都遇见过。
有时候除了软件的问题,还有硬件的问题。
我曾经用单机和并行机计算过相同的问题,单机显示有的和楼主见到的相同,甚至不收敛,可是在并行机上根本没有问题!
你的网格数不算多,而且图形不是很复杂,尽量用结构化网格吧,看看边界条件设定是否有问题。
用这个软件需要很多的经验,和做实验是一样的,尤其是刚开始。
当连续性不收敛的时候,做一下几个方面的检查(当然有的具体问题还要具体分析):
1,网格问题:在相对复杂的几何模型往往要分块画网格,当分块画网格的时候相邻网格尺寸差别太的时候,这时候就会出现连续性方程不收敛或者残差很大,在相邻的块网格之间差别不要太大一般要控制在1.2左右,同时近壁面的网格也对连续性有一定的影响,在壁面处使用边界层的时候边界层与网格的差别也不要太大。
2,边界条件的设置问题:边界条条件要设置合理,这个基本靠经验,可以试几种不同的边界条件,看看那中合适,同时在设置边界条件的时候也应该注意,如果是二维模型,设置水力直径和一些特征长度的时候,要注意fluent计算二维问题的时候默认的是宽度为无穷大,就是z方向无穷大,这样计算水力直径的时候就要注意了。
3,设置松弛因子:一般问题fluent的默认的松弛因子就够了,但是如果连续性出现问题的时候可以改变一下松弛因子,当然这样付出的代价就是增加了计算时间。
4,对于定常流动,连续性方程忽略了密度项,这也可能是造成连续性不收敛的原因,可以在开始计算的时候选择非定常,慢慢过度到定常,这个我没有试过,只是看到有的帖子上有这么说。
5,我现在做的都是定常流动,有的时候即使连续性残差不收敛,但是可以根据其他的判断收敛的条件,如果计算符合物理事实,这个也没有关系,有的时候即使残差不收敛计算结果也可能是合理。
就是说不一定非的要各项的残差都收敛。
主要是看结果合不合理。
符合不符合物理事实。
说说cfx解决不收敛的方法
首先明确一下,鉴于现在计算模型越来越复杂,残差并不是判定收敛的唯一标准,很多时候残差收敛都不是很理想,但每个计算一定要检测某一点的速度压力值,如果检测点数值平稳趋于稳定,即使残差收敛不是很理想,计算结果几乎可以肯定是收敛并且正确的. cfx的说明也提到了这个. 现在说说解决不收敛的几个方法. 可以按照次序尝试,或者结合着来,根本目标就是要先拿到一个收敛的计算结果,然后就好办了.
1. 使用upwind,也就是1阶精度算法.
2. 减少步长,使用physical time scale, 比如1e-5s试试. 计算进行了一定步数(比如100步)后,可以增加步长.
3. 更改湍流模型,例如k-e模型应该比k-w类的容易收敛
4. 再不行,采用无敌的流量渐进大法. 比如正常进口流量是10kg/s, 改成1kg/s,因为低速情况收敛要容易很多. 如果收敛,改成2kg/s,计算从上一个结果开始...依此类推,直到10kg/s.
5. 上述方法用过后,拿到一个收敛的模拟.再把所有设置更改为希望的设置(比如双精度,k-w 模型等等),在收敛的结果上面继续计算,应该就可以得到答案了.
6. 再搞不定,仔细思考自己的模拟,是不是哪里有最基本的错误. 我的经验,cfx模拟对于网格质量的好坏不是很敏感. 如果一个低流量的模拟可以收敛,那基本可以证明网格没有问题. 过去我做个压缩机的模拟,无论如何就是不收敛,最后发现因为过去个员工的粗心, 整个模型比实际尺寸直径少了20厘米,换句话说,这个错误的缩小模型根本没可能"吞掉"模拟流量,当然无法收敛了.
7. 修改网格,放在最后一招因为很多时候修改网格很麻烦. 先试试上面的再考虑这个.
注意:一般二维仿真时currant number 取小于1的数值,选择湍流模型也很重要!
楼上的本人现在也正做喷管这方面的模拟,你遇到的问题和我现在的一样,就我查到的资料如下,希望对你有帮助。
GAUGE PRESSURE 就是静压。
GAUGE toal PRESSURE 是总压。
这里需要强调一下Gauge为名义值,
什么意思呢?如果,INITIAL Gauge PRESSURE =0
那么GAUGE PRESSURE 就是实际的静压Pinf。
GAUGE toal PRESSURE 是实际的总压Pt。
如果INITIAL Gauge PRESSURE 不等于零
GAUGE PRESSURE =Pinf - INITIAL Gauge PRESSURE GAUGE total PRESSURE =Pt - INITIAL Gauge PRESSURE。