kppww 发表于 2016-3-3 14:07

一个典型的FLOTRAN分析有如下七个主要步骤

本帖最后由 wdhd 于 2016-3-3 15:58 编辑

  一个典型的FLOTRAN分析有如下七个主要步骤:

  1. 确定问题的区域。

  2. 确定流体的状态。

  3. 生成有限元网格。

  4. 施加边界条件。

  5. 设置FLOTRAN分析参数。

  6. 求解。

  7. 检查结果。

  第一步:确定问题的区域

  用户必须确定所分析问题的明确的范围,将问题的边界设置在条件已知的地方,如果并不知道精确的边界条件而必须作假定时,就不要将分析的边界设在靠近感兴趣区域的地方,也不要将边界设在求解变量变化梯度大的地方。有时,也许用户并不知道自己的问题中哪个地方梯度变化最大,这就要先作一个试探性的分析,然后再根据结果来修改分析区域。这些在后面章节中都有详述。

  第二步:确定流体的状态

  用户在此需要估计流体的特征,流体的特征是流体性质、几何边界以及流场的速度幅值的函数。FLOTRAN能求解的流体包括气流和液流,其性质可随温度而发生显著变化,FLOTRAN中的气流只能是理想气体。用户须自己确定温度对流体的密度、粘性、和热传导系数的影响是否是很重要,在大多数情况下,近似认为流体性质是常数,即不随温度而变化,都可以得到足够精确的解。

  通常用雷诺数来判别流体是层流或紊流,雷诺数反映了惯性力和粘性力的相对强度,详见第四章。

  通常用马赫数来判别流体是否可压缩,详见第七章。流场中任意一点的马赫数是该点流体速度与该点音速之比值,当马赫数大于0.3时,就应考虑用可压缩算法来进 行求解;当马赫数大于0.7时,可压缩算法与不可压缩算法之间就会有极其明显的差异。

  第三步: 生成有限元网格

  用户必须事先确定流场中哪个地方流体的梯度变化较大,在这些地方,网格必须作适当的调整。例如:如果用了紊流模型,靠近壁面的区域的网格密度必须比层流模型密得多,如果太粗,该网格就不能在求解中捕捉到由于巨大的变化梯度对流动造成的显著影响,相反,那些长边与低梯度方向一致的单元可以有很大的长宽比。

  为了得到精确的结果,应使用映射网格划分,因其能在边界上更好地保持恒定的网格特性,映射网格划分可由命令MSHKEY,1或其相应的菜单Main Menu>Preproce ssor > -Meshing-Mesh>-entity-Mapped来实现。

  第四步:施加边界条件

  可在划分网格之前或之后对模型施加边界条件,此时要将模型所有的边界条件都考虑进去,如果与某个相关变量的条件没有加上去,则该变量沿边界的法向值的梯度将被假定为零。求解中,可在重启动之间改变边界条件的值,如果需改变边界条件的值或不小心忽略了某边界条件,可无须作重启动,除非该改变引起了分析的不稳定。

  第五步:设置FLOTRAN分析参数

  为了使用诸如紊流模型或求解温度方程等选项,用户必须激活它们。诸如流体性质等特定项目的设置,是与所求解的流体问题的类型相关的,该手册的其他部分详细描述了各种流体类型的所建议的参数设置。

  第六步:求解

  通过在观察求解过程中相关变量的改变率,可以监视求解的收敛性及稳定性。这些变量包括速度、压力、温度、动能 (ENKE自由度) 和动能耗散率 (ENDS自由度) 等 紊流量以及有效粘性(EVIS)。一个分析通常需要多次重启动。

  第七步:检查结果

  可对输出结果进行后处理,也可在打印输出文件里对结果进行检查,此时用户应使用自己的工程经验来估计所用的求解手段、所定义的流体性质、以及所加的边界条件的可信程度。

  FLOTRAN分析中产生的一些文件
  在ANSYS中进行的大多数流体分析都是通过多次中断和重启动来完成的,通常,分析人员需要在各个重启动之间改变诸如松弛系数等参数或开关某些项(如求解温度方程的开关)。每当用户继续一个分析时,ANSYS程序会自动将数据附加在所有的 由FLOTRAN单元产生的文件中。下面将对FLOTRAN单元产生的所有文件进行说明:
  · 结果文件, Jobname. RFL,包含节点结果。
  · 打印文件, Jobname.PFL,包含各量的收敛记录及进/出口状态(如流量等)。
  · 壁面文件, Jobname.RSW,包含壁面剪切应力以及Y-Plus信息。
  · 残差文件, Jobname.RDF,包含节点残差。
  · 调试文件, Jobname.DBG,包含数学求解器的有关信息。
  · 结果备份文件, Jobname.RFO,包含结果文件数据的一个拷贝。
  · 重启动文件, Jobname.CFD,包含FLOTRAN的数据结构。
  结果文件
  FLOTRAN分析的结果并不自动保存在ANSYS的数据库中,在每次求解之后,程序会将一个结果集附加在结果文件Jobname.RLF中。用户可对结果文件的内容及程序 对结果文件的更新频率进行控制,ANSYS命令手册中对FLDATA5,OUTP命令的介绍就详细说明了结果文件会基于用户的选择而保存些什么内容。
  在一个稳态FLOTRAN分析中,结果文件能保存多少个结果集是没有限制的,在求解的初期多保存几个结果有很多好处:可以比较各结果集之间的变化、可以使用不同的选项或松弛系数来从一个分析的较早状态重新开始分析。
  当开始一个新分析时(在其第一次迭代之前),ANSYS程序会保存一个结果, 然后在当中断发生时保存再保存结果,在这些事件之间,用户还可通过设置将一些中间结果附在结果文件里,这样就可以从较早的分析状态开时,通过激活一些不同的选项和特征来重新分析,例如,可以通过这种方式来提高分析的稳定性。
  使用 ANSYS 的覆盖频率选项是一个明智的方法,它就可以周期性地保存和更新 一个临时的结果集,这样,当由于断电或其他系统原因而发生求解中断时,总可以有一个可用的结果集用于重新开始分析。设置覆盖频率的方式如下:
  命令:FLDATA2,ITER,OVER,value
  菜单: Main Menu>Solution>FLOTRAN Set Up>Execution Ctrl
  设置附加频率的方式如下:
  命令:FLDATA2,ITER,APPE,value
  菜单: Main Menu>Solution>FLOTRAN Set Up>Execution Ctrl
  打印文件( Jobname.PFL)
  Jobname.PFL文件包含了所有FLOTRAN输入参数的完整记录,该信息每在发出一个求解命令时就保存一次以完整地记录整个分析历程。同时,所有激活了的变量的收敛过程也记录了下来,还有一个对结果的总结,即每个性质和自由度的最大最小值,这些记录的频率都由用户自己设定。所记录的其他量还有:各记录量的平均值、质量流的边界、质量平衡的计算、所有热传导和热源的相关信息。
  节点残差文件
  节点残差文件,即Jobname.RDF,显示了当前解的收敛好坏程度。在求解过程的每一个阶段,流场、性质场、温度场都用于对每个自由度计算系数矩阵和强迫函数,如果解完全收敛,这些矩阵和强迫函数将会生成一个与产生它们的速度场一样的速度场,同时,矩阵方程的残差也会变得很小。要得到一个残差文件,必须至少执行一次迭代。
 当求解过程发生振荡时,残差的幅值将显示分析的错误所在。(矩阵的主对角元素对残差作归一化处理)这种归一化使用户可对自由度的值及其残差作比较。
对每一个激活了的自由度计算残差并将其存入残差文件的方式如下:
  命令:FLDATA5,OUTP,RESI,TRUE
  菜单:Main Menu>Solution>FLOTRAN Set Up>Additional Out>Residual File要读取残差文件,可通过菜单Main Menu>General Postproc>FLOTRAN 2.1A或命令 FLREAD来实现。
  重启动文件
  通常,FLOTRAN在一个重启动的起始处计算数据结构,对于一个大模型,这种计算将消耗大量的时间,为了避免这种重新计算,可要求FLOTRAN将数据结构保存在重启动文件Jobname.CFD中,FLOTRAN从ANSYS的数据库中产生该文件。
  对 Jobname.CFD文件的读和写的方式如下:
  命令: FLDATA32,REST,RFIL,T
  菜单: Main Menu>Preprocessor>FLOTRAN Set Up>Restart Options>CFDRestart File
  可将RFIL状态设置为开(ON)或关(OFF),若设为开,则FLOTRAN开始执行分析 时将读入重启动文件,若此时重启动文件不存在,则将产生一个重启动文件。
  如果在改变了边界条件之后再进行重启动分析,则必须覆盖掉业已存在的.CFD 文件 以使得ANSYS能用新的边界条件进行重新分析,覆盖.CFD文件的方式如下:
  命令: FLDATA32,REST, WFIL,T
  菜单: Main Menu>Preprocessor>FLOTRAN Set Up>Restart Options>CFD Restart File
  这就使FLOTRAN在下一载荷步产生一个新的重启动文件,并自动将RFIL状态设置为关闭。当新的重启动文件产生之后,用FLDATA32,REST,RFIL,T命令使随后的重启动能使用新的重启动文件。
  FLOTRAN重启动分析(续算)
  用户可在结果文件 Jobname.RFL中任意一个解集的基础上开始一个重启动分析, 重启动位置的设置可基于解集号(NSET)、迭代数(ITER)、载荷步/子步号(LSTP)或瞬 态分析的时间(TIME),方式如下:
  命令: FLDATA32,REST,lable,value其中,lable为上面的NSET、ITER、LSTP、TIME等
  菜单:Main Menu>Preprocessor>FLOTRAN Set Up>Restart Options>Restart/Iteratio(或Restart/Load step, Restart/Set, 等)
  当重启动一个分析时,ANSYS将原始的结果文件拷贝到Jobname.RSO中并将重启动点、所有在重启动点之前的结果集、所有的后续结果集放在新的结果文件中。如果在 FLDATA32,REST命令中的value值是一个负值,则将不产生Jobname.RSO文件,而 重启动的点将由value的绝对值来指定。
  提高收敛性和稳定性的常用的工具
ANSYS程序提供几个有助于收敛和求解稳定的工具,理论手册对其机理有详述。
  松弛系数
  松弛系数是一个其值介于0和1之间的小数,它表示旧结果与附加在旧结果上以形成新结果的最近一次计算量之间的变化量。设置松弛系数的方式如下:
  命令:FLDATA25,RELX,lable,value
  菜单: Main Menu>Preprocessor>FLOTRAN SetUp>Relax/Stab/Cap>DOF Relaxation
  Main Menu>Preprocessor>FLOTRAN SetUp>Relax/Stab/Cap>Prop Relaxation
  Main Menu>Solution>FLOTRAN SetUp>Relax/Stab/Cap>DOF Relaxation
  Main Menu>Solution>FLOTRAN SetUp>Relax/Stab/Cap>Prop Relaxation
  注:命令手册中对该命令的自由度和性质量有详述。
  惯性松弛
  对某个自由度的方程组的惯性松弛就是使其矩阵的主对角占优以保持求解的稳定性。如果当一个解在收敛过程中没有发生舍入误差,则惯性释放的值不会影响到求解的最终结果。但是通常的求解过程都会发生舍入误差,故惯性松弛可能对结果产生影响。用户可
  对动量方程(MOME)、紊流方程(TURB)。压力方程(PRES) 和温度 方程(TEMP)施加惯性松弛,其方式如下:
  命令:FLDATA26,STAB,lable,value
  菜单:Main Menu>Preprocessor>FLOTRAN SetUp>Relax/Stab/Cap>Stability Parms
  Main Menu>Solution>FLOTRAN SetUp>Relax/Stab/Cap>Stability Parms
  惯性松弛系数是以所加项的分母的形式出现的,故其值越小,所起作用越大,其典型值介于1.0(作用中等)到1.0×10-7(作用很大)之间。
  人工粘性
  人工粘性用于在梯度较大的区域平抑速度解。它有助于可压缩问题的收敛,也有助于对有分布阻力的不可压缩问题的速度解进行平抑。对于不可压缩问题,应使人工粘性的幅值与有效粘性的幅值处于相同的数量级。施加人工粘性的方式如下:
  命令:FLDATA26,STAB,VISC,value
  菜单:Main Menu>Preprocessor>FLOTRAN SetUp>Relax/Stab/Cap>Stability Parms
  Main Menu>Solution>FLOTRAN SetUp>Relax/Stab/Cap>Stability Parms
  速度限值
  速度限值使所求解量不能超出用户所定义的值,可对速度、压力和温度自由度进行限制(VX、VY、VZ、PRES、TEMP),方式如下:
  命令:FLDATA31,CAPP
  菜单:Main Menu>Preprocessor>FLOTRAN SetUp> Relax/Stab/Cap>Results Capping
  Main Menu>Solution>FLOTRAN SetUp>Relax/Stab/Cap>Results Capping
  速度限值可消除速度尖峰的不利影响,这种速度尖峰通常发生在收敛过程中的较早阶段。它还特别适合用于可压缩流分析,因这类分析中速度尖峰通常使动能项大到产生负的静温。
  当对压力进行限值时,所限的值是由压力方程解算出来的压力而不是松弛后的压力,故当限值后作重启动时,压力值仍有可能超出限值。
  注意:当有速度限值时,质量有可能不守恒。
  面积积分阶次(Quadrature Order)
  缺省的用于计算单元面积积分的阶次是单点积分,用户可对其进行控制。对于轴对称问题,求解时,该值自动设为2,因为当面积积分阶次为2时,可使含有异常形状单元的问题收敛到更精确的解。用下面的方式改变动量、压力、热或紊流项的面积积分阶次:
  命令:FLDATA30,QUAD,lable,value其中,lable为要改变的单元积分,value为积分点的数目。
  菜单:Main Menu>Preprocessor>FLOTRAN SetUp> Mod Res/Quad Ord> CFD QuadOrders
  Main Menu>Solution>FLOTRAN SetUp>Mod Res/Quad Ord>CFD Quad Orders
  FLOTRAN分析过程中应处理的问题
  确定总体迭代的数目
  FLOTRAN分析是一个非线性的序列求解过程,故每次分析首先得确定要让程序执行多少次迭代。一次总体迭代就是对所有相关的控制方程按序列进行求解,并且在求解过程中流体性质会随时更新。在瞬态分析中,时间步循包含了总体迭代循环。在一个总体迭代中,程序首先获得动量方程的近似解,再在质量守恒的基础上将动量方程的解作为强迫函数来求解压力方程,然后用压力解来更新速度,以使速度场保持质量守恒。如果要求了程序求解温度,则程序会同时求解温度方程并更新与温度相关的流体性质。最后,如果激活了紊流模型,则程序将求解紊流方程并用紊流动能及其耗散率来计算有效粘性和热传导系数,有效粘性和热传导系数将分别代替层流粘性和热传导系数以在平均流上模拟紊流的影响。用下面的方式定义总体迭代的数目:
  命令:FLDATA2,ITER,EXEC,value(value即为迭代数)
  菜单:Main Menu>Preprocessor>FLOTRAN SetUp> Execution Ctrl
  Main Menu>Solution>FLOTRAN SetUp>Execution Ctrl
  收敛监测
  在FLOTRAN求解过程中,程序在每一个总体迭代里对每一个自由度计算出一个收敛监测量,这些自由度包括:速度(VX、VY、VZ)、压力(PRES)、温度(TEMP)、紊流动能(ENKE)、动能耗散率(ENDS)、以及激活了的多组份传输方程(SP01 ~SP06)。收敛监测量就是两次迭代之间结果改变量的归一化值,若以F表示任一自由度,则该自由度的收敛
  监测量可由下式表示:


  收敛监测量表示变量在当前迭代(kth)的结果和前一次迭代((k-1)th)的结果之间差值的总和除以当前值的总和,这种求和是在所有节点上进行的,并且使用的是差值的绝对值。
  在批处理或交互式运行过程中,当求解进行时, 程序的“图形求解跟踪(GST)” 功能将实时显示出所计算的收敛监测量,GST的缺省值在交互运行时是开(ON), 而 在批处理运行时是关(OFF)。用户可用下面的方式定义其开关:
  命令:/GST
  菜单:Main Menu>Solution>Output Ctrls>Grph Solu Track
  图2-1是两个典型的GST图形。图2-1(b)是一个FLOTRAN的瞬态分析过程,图中的每一个尖峰表示了一个新时间步的开始。
  在初始阶段可能出现的一些振荡之后,收敛监测量的大小将随着分析过程的收敛而逐渐减小,但其减小的程度将依赖于几个因素,诸如:
  · 几何边界的复杂程度
  · 高梯度区域有限元网格的精度
  · 紊流的严重程度(由雷诺数确定)
  · 出口边界处流场的发展是否充分
  当使用图形求解跟踪(GST)功能时,还应注意:
  · 不单是FLOTRAN分析有GST功能,非线性的结构分析、非线性的热分析和非 线性的电磁场分析都有GST功能。详见各自的分析指导手册。
  · GST可同时显示多达10条的跟踪曲线,如果用户的模型有多于10个的自由度, 则GST将只显示前10个自由度的收敛跟踪曲线。

  · 当GST开始显示时,程序会弹出一个带STOP按钮的对话框,用户可在任意时刻通过点取该STOP按钮来中断求解过程,而后要进行重启动分析时,可通过执行命令SOLVE或其相应的菜单Main Menu>Solution>Run Flotran来实现。


  中断一个FLOTRAN分析
  用户可以定义一个基于压力和温度收敛监测量的目标值来中断一个FLOTRAN分析,定义方式如下:
  命令:FLDATA3,TERM,PRES,value
  FLDATA3,TERM,TEMP,value
  菜单:Main Menu>Preprocessor>FLOTRAN SetUp> Execution Ctrl
  Main Menu>Solution>FLOTRAN SetUp>Execution Ctrl
  压力和温度的收敛缺省值都是1.0×10-8,如果没有激活温度方程的求解,则程序只检测压力的收敛值是否满足要求,而若同时激活了流体方程和温度方程的求解,则二者的收敛标准都必须同时满足。在满足了压力和温度的收敛条件或总体平衡迭代数达到了所要求的值后,FLOTRAN求解过程就自动中断。
  要中断一个正在以批处理方式或后台方式执行的FLOTRAN分析,则需在当前工作目录下生成一个Jobname.ABT文件 ,该文件的第一行应含有terminate字样 ,且该 字样的起始位置应是第一行的第一列。在每一次总体迭代之前,FLOTRAN都会在当前目录下搜寻Jobname.ABT文件,如果程序找到该文件并发现其含有terminate字样,则立即完成该次总体迭代并正常中断程序的执行,而且将结果写入结果文件中。
  对一个FLOTRAN分析进行评价
  分析员必须回答的两个问题是:
  1. 所作的分析是何时结束的?
  2. 所作的分析是否是正确的?
  这两个问题是相互关联的,因为,如果没有正确地设置和正确地分析一个流体问题,它一般都是不会收敛的。
  如果所输入的初始参数和所有的边界条件都是正确的,则当所有变量的收敛监测量都停止增长,以及所有求解量的平均、最大、最小值都不再升降时,求解过程就算是完成了。然而,这并不能保证所求解的结果是唯一正确的,因为自然界本身并不保证存在唯一解。振荡问题(例如:柱体绕流的旋涡脱落问题)用稳态或瞬态求解技术都不能得到一个稳定的解。要验证一个分析是稳定的或是振荡的,可以通过对它执行大量的迭代求解来实现。
  ANSYS将求解变量的平均、最小、最大值保存在文件Jobname.RFL中,该文件同时还保存了FLOTRAN的输入数据和计算出的收敛监测量、所有自由度的结果总结、层流特性和有效特性。可用下面的方式来规定ANSYS进行结果总结的频率:
  命令:FLDATA5,OUTP,SUMF,value
  菜单:Main Menu>Preprocessor>FLOTRAN SetUp>Additional Out>RFL Out Derived
  Main Menu>Solution>FLOTRAN SetUp>Additional Out>RFL Out Derived
  验证结果
  验证求解结果的可靠性是所有分析人员的责任,如果一个FLOTRAN分析得到了非预期的结果,则应进行下列所示的一些操作,这些操作的大部分都可以在开始一个分析前完成。即使只进行了零次迭代,ANSYS也会生成一个Jobname.RFL文件并检查所有的输入数据。
  1. 检查作为结果总结的一部分而打印出来的质量平衡情况。内部检查将确定是 否有任何的可能会通过模型的质量流,允许质量流的边界条件是:
  · 确定的速度边界条件
  · 确定的压力边界条件
  · 未确定的边界(这有可能是由于用户忘了施加边界条件而致)
  ANSYS会将进口和出口边界编号列表,而这些应与所希望的条件相对应。
  2. 在ANSYS里检查边界条件,以保证其正确性。
  3. 检查所定义的流体性质及其随温度的可变动性正确与否,这可在.RFL文件中方便地检查。
  4. 检查用以建立模型的单位制与用以定义流体性质的单位制是否一致。
  5. 有时,还需确认与所选选项相联系的方程的求解是否正确(例如:可压缩流 中的压力方程)。
  6. 如果求解发散,可能的原因还有:有限元网格不够精细、或者邻近出口处流 场梯度太大,要解决这些问题,可以使用一些诸如惯性松弛等有助于收敛的 手段,本手册的后面将详述各种松弛技术。
  7. 如果仅仅只有某个特定的量产生发散,则可将该量重新初始化到一个单值, 并作重启动分析,方式如下:
  命令:FLDATA29,MODV
  菜单:Main Menu>Preprocessor>FLOTRAN SetUp> Mod Res/Quad Ord>Modify Results

  Main Menu>Solution>FLOTRAN SetUp> Mod Res/Quad Ord>Modify Results

转自:http://blog.sina.com.cn/s/blog_48c735630100ixaq.html
页: [1]
查看完整版本: 一个典型的FLOTRAN分析有如下七个主要步骤