当前位置:文档之家› 用FLUENT时间步长

用FLUENT时间步长

用FLUENT时间步长
用FLUENT时间步长

用FLUENT计算非稳态问题,是不是在计算时必须保证在每个时间步timestep里都要收敛才行,否则计算结果就不对呢?也就是说,在iteration选项里,max iteration per time 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飙升过大的不能继续进行下去的问题。

有网友建议:单元最小长度除于流场平均流速,不过这个值可能很小,你可以以这个值为基准进行调节,一开始可以取大些,如果没有问题,可以再放大些,这样可以缩短计算时间。

wk_ad_begin({pid : 21});wk_ad_after(21, function(){$('.ad-hidden').hide();}, function(){$('.ad-hidden').show();});

若按这种方法,计算下面这个例子: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,让收敛速度能够足够的快,而且能够保持它的稳定性。

时间步长与准确性

摘自《数值计算与工程仿真》第一期作者gim

1 、在不计模型误差,而且计算稳定的前提下,数值计算的时间步长

的选取存在一个恰当值,过大或过小都会影响模拟结果的准确性。 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个流动循环周期才可能得到非定常的稳定流动周期状态。

加速步长法

实验报告 实验名称:加速步长法 院(系):机电学院 专业班级:机械制造及其自动化 姓名:赵丹 学号:100710431 2013年5 月3 日

实验一:加速步长法实验日期:2013年5 月3日一、实验目的 了解MATLAB的基本运用 了解MATLB在优化中的使用 二、实验原理 加速步长法是利用试探来确定单谷函数的初始搜索区间。其主要思路是:从一点出发,按照一定的步长,试图确定出函数值呈现“高低高”规律的相邻三点。从一个方向试探搜索,如不成功,则沿反方向探索。如方向正确,则加大步长探索。直至最终三点x1x2x3,满足x1f(x2)

h=-h; x2=x4; f2=f4; else x3=x2; x2=x1; x1=x4; break; end end end left=min(x1,x3); right=x1+x3-left; 四调用执行程序: clc syms t f=t^3-t^2-2*t+1; [left,right]=xiti4_1(f,0,0.1) 执行结果:left = 0.7000 right = 3.1000 实验小结 通过本实验了解了了matlab的基本操作方法,了解加速步长法的原理与基本运用

ansys时间步长的确定

ANSYS 瞬态动力学分析中的时间步长的选择 对于瞬态动力学分析问题,如何选取合适的时间步长,才能保证得到正确的计算结果呢?这是我们在瞬态动力学分析中需要关注的一个问题。 积分时间步长的选取决定了瞬态动力学问题的求解精度:时间步长越小,则计算精度越高。太大的时间步长会导致高阶模态的响应出错,从而会影响到整体的响应。但是太小的时间步长会浪费计算资源。要得到一个较好的时间步长,应该遵循下述原则: (1)分析响应的频率。 时间步长应该小到可以分析结构的响应。既然结构的动力响应可以看成是一系列模态的组合,时间步长应该可以求解对响应有贡献的最高阶模态。对NEWMARK 积分方案而言,发现可以使用感兴趣结果的最高阶频率的每个周期内取20个点就可以得到大致合适的解答。这就是说, f t 201=? 上式中,t ?为时间步长,f 为所关注系统的最高频率。 如果需要计算加速度,则上述时间步长需要更小一些。 对于HHT 时间积分方法,可以使用同样的时间步长。在使用相同的时间步长和时间积分参数的前提下,HHT 方法比NEWMARK 方法更精确一些。 (2)分析加载的载荷-时间曲线。 时间步长应该足够的小到能跟踪载荷历程。响应一般要比施加的载荷慢半拍,阶跃载荷尤其如此。它需要较小的时间步以便能紧密的跟踪载荷的改变。它应该小到1/180f 会较合适。 (3)分析接触频率。 在包含接触(碰撞)的问题中,时间步长应该小到足以捕捉接触面之间的动力传递。否则,会产生明显的能量损失,而碰撞将不再是理想弹性的。时间步长可以由接触频率得到 c Nf t 1=? m k f c π21=

CHP22时间步长

CHP22.15 时间步长的设定 绘制当前时间数据图的方法: 使用显式非稳态公式或使用的是适应时间步长法,推荐用绘制当前时间或当前时间步长数据图。方法: Solve—Monitors—statistic 在statistics框中选择time或是delta_time 项。 确定与时间有关的求解参数: 一阶或二阶隐式求解方法: Max Iterations per Time Step:当FLUENT用隐式方法求解时,每个时间步长都要迭代。设定了每个时间步长内迭代的最大数值,如果在达到这个数值以前迭代收敛的话,求解过程会提前进入下一个时间步长。 Time Step Size:时间步长大小是t?的数值大小。由于FLUENT是完全隐式,因此没有队时间步长大小的要求。但为了正确模拟瞬态流动,时间步长大小的数量级至少应比系统中正在模拟的最小时间常量要小一个数量级。判断t?的选择的一个好方法是观察FLUENT在每个时间步长内迭代至收敛的次数,理想次数是10到20次,如果次数多于这个数值,则说明时间步长太大了。如果每个时间步长内只有几次迭代,则说明t?应该增大。常见的问题是FLUENT启动很快,而衰减也很快。这样情况下,聪明的办法是开始的5到10个时间步长设的相对较小,然后随着计算过程逐渐增加t?。 对于周期性时间的计算,应该根据时间周期的大小选择时间步长。比如说,对于转子/定子模型,可以在每个叶片通过之间设置20个时间步长。再比如对于涡轮流散的模型,每个周期20个时间步长比较好。 迭代时间步场面板上,默认的时间步长大小是固定的。要想在计算过程中随时修改时间步长大小,则要选adaptive并在adaptive time stepping中设好参数。第22.15.2节中详细讲述该内容。 22.15.2 调整性时间步长 调整性时间步长只有在segregated算法和coupled implicit算法中才能用,coupled explicit 算法不能用。另外,VOF或是分散相模型也不能用。 自动调整时间步长根据对与时间差分方案有关的truncation error截断误差而定,如果截断误差小于指定的允许程度,时间步长大小就要增大,反之,时间步长要减小。 截断误差的估测可以通过对算法的时间差分的预测修正得到。每个时间步长开始时,算法简单、粗略的计算问题的初始值,将它作为该时间步长的初始条件,然后用非线性迭代隐式算法修正,在对预测值和修正值之间的差异以截断误差为标准进行比较,如果达到了截断误差的预期程度,FLUENT就调整时间步长的大小。 参数: 截断误差Truncation Error Tolerance:指定与计算的截断误差相比较的初始值,增大这个值,会使时间步长增大,求解精度降低。反之,则变化趋势相反,但计算所需的时间要变长。对大多数情况,用默认值0.01即可。 结束时间Ending Time:指定计算的结束时间。结束时间不等于时间步乘以固定时间步长长短,应该专门指定它的值。 最大/最小时间步长长短Minimum/Maximun Time Step Size:该项指定时间步长的上下限值。如果时间步长很小,计算要花费的时间和所占空间就高,如果时间步长很大,计算精度就不够。 最大/最小步长改变系数Minimum/Maximum Step Change Factor Limit:限制了每一步时

二维铸造充型过程数值模拟的特征分数步长法

二维铸造充型过程数值模拟的特征分数步长法? 鲁统超1,葛亮2 1山东大学数学与系统科学学院, (250100) 2 山东大学数学与系统科学学院, (250100) E-mail :lutc@https://www.doczj.com/doc/dd9240262.html, 摘 要:铸造充型过程的数学模型是包括连续性方程和动量方程的偏微分方程组。本文利用分数步长法将动量方程分裂成两部分,对第一个方程采用特征差分法进行处理,对第二个方程结合连续性方程进行处理后得到压力的 泊松方程,用迭代法进行求解,给出了收敛性分析和稳定性条件。 关键词:分数步长;特征差分;收敛性;迭代。 1. 引 言 铸造生产的实质就是直接将液态金属浇入铸型并在铸型中凝固和冷却,进而得到铸件。液态金属的充型过程是铸件形成的第一个阶段。许多铸造缺陷(如卷气、夹渣、浇不足、冷隔及砂眼等)都是在充型不利的情况下产生的。因此,了解并控制充型过程是获得优质铸件的重要条件。但是,由于充型过程非常复杂,长期以来人们对充型过程的把握和控制主要是建立在大量实验基础上的经验准则。随着计算机的发展,铸件充型过程数值模拟才得到广泛应用。 充型过程流场数值模拟的主控方程均为非线性方程。其计算使用有限差分或有限元等数值方法求解质量守恒方程(连续性方程)和动量守恒 方程即Navier-Stokes 方程,以得出流体运动规律。在以前的研究中,Chorin(1968)和Temam(1969)分别独立的提出投影法。1972年由Minnesota 大学的Patankar 与Spalding 提出了simple 算法,这是一个压力修正算法,在以后的研究中又有simplec 方法,Raithby 提出的simplex 方法, Sheng 等提出的simplet 算法。 本文中利用分数步长法的思想将动量方程分裂成两部分,对第一个方程采用特征差分法求解,对第二个方程结合连续性方程进行处理后得到压力的 泊松方程,我们用迭代法进行求解,给出了收敛性分析和稳定性条件。 2. 问题的数学模型 铸造充型过程的模型主要由连续性方程和动量方程组成。 (a) 流体的动量方程 1x u p V u g u t x μρρ ??=???++???r " (2.1) ? 本课题得到教育部高等学校博士点基金资助,编号:20030422049 - 1 -

Fluent时间步长

用FLUENT计算非稳态问题,是不是在计算时必须保证在每个时间步timestep里都要收敛才行,否则计算结果就不对呢也就是说,在iteration选项里,max iteration pertime step设为一个值,比如500,就是如果500次迭代后仍未收敛,进入下一步迭代,那对结果会有什么影响。 对于隐式非定常格式,原则上,每个时间步长内必须保证结果收敛。在fluent 的帮助中就有这样的话:“对于不可压流动,在每个时间步内,不可压解必须迭代直至收敛。”另外,我们回归到fluent内部计算的本源,它实质就是一种差分算法,通过不断逼近来获得真实解,这样我们就不难理解为什么在每个时间步长内需要收敛了。max iteration pertime step 设定的是最大时间步,在单一步长内,如果结果已经收敛,则会自动跳至下一时间进行计算。所以其设定要纵观全局。但对于周期性流动,这种收敛性的要求就相对松动一些。不过你需要多计算几个周期,等计算结果达到对时间的周期状态后,再对结果进行储存。 对于显式非定常格式,在Fluent帮助中这样说:“一定记住,对于显式非定常格式,每一个迭代就是一个时间步。” 如果每个时间步内结果没有得到收敛,则很有可能你所得到的结果是不真实的,但是一个时间步内的不真实性应该不会影响到下一个时间步长内的计算。因为在每一个时间步开时,fluent 都会进行初始化。在单个时间步内,它实际是按照稳态进行计算的。 time step size的设定是根据你的计算需要,一般是你的特征长度(比如说管道的长度)除于特征速度(比如平均速度)的值再小一到两个量级即可,如果你的time stip size太大,计算会提示你的,改小即可。

分步步长法和多重网格法_实验

微分方程数值解 姓名: 班级: 一.二维抛物方程分布步长法

实验用的二维热传导 是方程是: 22(,,)sin()sin()0,1,0t u x y t x y e x y t πππ-=<<> 它满足书中 0,,0(,,0)(,)(0.,)(,,)(,0.)(,.)0l xx yy u u u x y l t u x y x y u y t u l y t u x t u x l t ?=+<<>?? =??====? 的要求,这里1l =。以0t =为初始时刻,分别用ADI,LOD,对称LOD (记为symLOD )进行算法设计,求在时刻1t =的数值解,并与精确解做比较。 实验过程: 1.t=1时刻原始图像 当x,y 方向上的网格数是160,时间t 方向上的网格数是40时,t=1时刻的原始图像为

2.ADI法恢复的图像 当x,y 方向上的网格数是160,时间t方向上的网格数是40时,ADI法所绘t=1时刻图像为

3.LOD法恢复图像 当x,y 方向上的网格数是160,时间t方向上的网格数是40时,LOD法所绘t=1时刻图像为 4.对称LOD法(记为symLOD)恢复图像

当x,y 方向上的网格数是160,时间t方向上的网格数是40时,symLOD法所绘t=1时刻图像为 5.x,y方向上的网格数和误差关系 t=40固定,x,y方向的的网格数分别取[10,50,100,250,500] 三者的误差的二范数分别为(见error2.m) ADI=[8.730504221745552e-010, 6.029451734592973e-009, 1.265923756496139e-008, 3.206705449439820e-008, 6.425372124435197e-008]; LOD=[8.730504221745788e-010, 6.029451734600921e-009, 1.265923756507861e-008, 3.206705449886893e-008, 6.425372131563230e-008]; SymLOD=[8.730502288715592e-010, 6.029452708815150e-009, 1.265923951388676e-008, 3.206705936704847e-008, 6.425373098974900e-008];

simulink步长设置

simulink仿真设置 一、算法设置 1.变步长(Variable—Step)求解器 可以选择的变步长求解器有:ode45,ode23,ode113,odel5s,ode23s 和discret.缺省情况下,具有状态的系统用的是ode45;没有状态的系统用的是discrete。 1)ode45基于显式Runge—Kutta(4,5)公式,Dormand—Prince对.它是—个单步求解器(solver)。也就是说它在计算y(tn)时,仅仅利用前一步的计算结果 y(tn-1).对于大多数问题.在第一次仿真时、可用ode45试一下。 2)ode23是基于显式Runge—Kutta(2,3).Bogackt和Shampine对.对于宽误差容限和存在轻微刚性的系统、它比ode45更有效一些.ode23也是单步求解器。 3)odell3是变阶Adams-Bashforth—Moulton PECE求解器.在误差容限比较严时,它比ode45更有效.odell3是一个多步求解器,即为了计算当前的结果y(tn),不仅要知道前一步结果y(tn-1),还要知道前几步的结果y(tn-2),y(tn-3),…; 4)odel5s是基于数值微分公式(NDFs)的变阶求解器.它与后向微分公式BDFs(也叫Gear方法)有联系.但比它更有效.ode15s是一个多步求解器,如果认为一个问题是刚性的,或者在用ode45s时仿真失败或不够有效时,可以试试odel5s。odel5s是基于一到五阶的NDF公式的求解器.尽管公式的阶数越高结果越精确,但稳定性会差一些.如果模型是刚性的,并且要求有比较好的稳定性,应将最大的阶数减小到2.选择odel5s求解器时,对话框中会显示这一参数.可以用ode23求解器代替。del5s,ode23是定步长、低阶求解器。 5)ode23s是基于一个2阶改进的Rosenbrock公式.因为它是一个单步求解器,所以对于宽误差容限,它比odel5s更有效.对于一些用odel5s不是很有效的刚性问题,可以用它解决。 6)ode23t是使用“自由”内插式梯形规则来实现的.如果问题是适度刚性,而且需要没有数字阻尼的结果,可采用该求解器。 7)ode23tb是使用TR—BDF2来实现的,即基于隐式Runge—Kutta公式,其第一级是梯形规则步长和第二级是二阶反向微分公式.两级计算使用相同的迭代矩阵.与ode23s相似,对于宽误差容限,它比odtl5s更有效。 8)discrete(变步长)是simulink在检测到模型中没有连续状态时所选择的一种求解器。

相关主题
文本预览
相关文档 最新文档