Flotherm中导致不收敛的原因有哪些?如何改善?
终止标准是基于系统的质量,动量和能量三个方面来设定的 :
质量平衡(压力场残差)
• 终止标准= 0.005 M (kg/s)
• 强迫对流: M = Total Inlet or Outlet Flow Rate
• 自然对流: M =ρ.EFCV.A
ρ: Air density
EFCV: Estimated Free Convection VelocityA: Area perpendicular to the vertical
动量平衡(速度场残差)
• 终止标准= 0.005 MV (N)
• 强迫对流: V = Fan or Fixed Flow maximum velocity
• 自然对流: V = EFCV
能量平衡(温度场残差)
• 终止标准 = 0.005 Q (W)
• 如果在系统中有热源或热沉:Q = Total Heat Sources or Sinks
• 如果系统中无热源或热沉:Q = M Cp△Ttyp D△Ttyp = 20 ° C
可以在PM中 [Control/Variable] 菜单中查看指定不同变量的残差终止标准,FLOTHERM软件默认的终止标准值在大多数产品分析中,并且是相当保守的收敛标准,安全余量相对可靠,不需要更改。
与终止标准相关的不收敛问题
例如:
• 多流体系统(液冷)
如果系统中主导的是液体,会有收敛问题发生,默认系统是以空气作为流体特性参数而设置。
• 有风扇和导流板
FLOTHERM 计算特征速度是以风扇出口的最大流速度为参考。由于其中某一个风扇尺寸和导流板的原因,速度可能是原先值的上百倍,这样会导致动量收敛问题。(比如风扇出风口被堵住等)
其它不收敛问题
• 建模型过程中产生的错误(比如只有进风,没出风,不符合质量守恒)
• 网格设置精度不够大
• 方案中的不稳定性或不良设计
• 控制参数不适宜,例如fan relax值或者the false time step 太高
• 监控点局部梯度非常之大
• 过多网格或者过少网格都是不合适的做法
那么要怎么改善不收敛问题呢?
收敛曲线发散
• 第一步检查
复查Sanity Check结果
复查建模过程
寻找明显网格不足问题
• 确定问题点
采用Monitor Points
Deactivate Objects/Assemblies用于隔离问题点
• 检查问题点
网格是否足够描述物理现象?
是否有荒谬的类似热源,粗糙度,表面属性等设置?单位是否正确?
• 切记: 如果曲线发散的很明显,结果一定是不正确的。
对于发散问题重新求解时,一定要重新初始化 。
低位稳定和震荡
• 打开残差场存储设置
在 Project Manager 中 [Solve/Overall Control]设置
• 残差存储保留每个单元格的残差参数
可以在 FLOMOTION 中检查确定最大和最小值的位置
同时打开网格显示来判断问题是否与网格有关联
• 如果发现残差较大的位置不在所关注的范围内,且监控点已经达到稳定,就不需要再对模型再做修改使其收敛。
改善收敛的其它方法
• 温度场残差
可以使用自动收敛设置 [Solve/Overall Control]
• 改变求解选项
修正慢速温度收敛
◆Multi Grid求解器
在质量和动量求解收敛过程中和 Segregated Conjugate Residual方法一样
采用multi grid技术加快求解温度场线性方程
可以很大的提高传热问题的收敛速度
在多求解器和局域化中,Multi Grid求解器也可以使用
◆Segregated Conjugate Residual
可以适用大多数分析状况
采用分离压力区域改善收敛问题
松弛因子控制法
◆内部迭代 (在 [Solve/Variable Control]中设置)
对于压力项可以采用大(等)于100步
增加步数将会降低收敛速度
◆Fan松弛控制
在[Solve/Overall Control]中设置
有效值范围是0.5~0.9
有助于改善工作点在风扇PQ中梯度较小位置的收敛速度
• 调整 False Time Step
松弛因子
改进高位稳定或震荡非收敛问题
◆通过变量求解控制栏来调节 [Solve/Variable Control]
◆自动设置的值是基于时间特征常数,适用于大多数情况
◆用户可以针对每个变量设定不同的值 variable
使用滑标
直接输入值
◆ 如果 False Time Step放大或缩小超过50倍容易导致 发散
◆切记要检查监控点以确认达到收敛
• 调节 False Time Step类似于调节阻尼
false time step较大值 – 减少阻尼
false time step 较小值- 增加阻尼
false time step非常大值 –无阻尼
false time step 非常小值-无变化,无法求解
• False Time Step 举例
减少False time Step (提高阻尼)到10-50, 目的在于改进高位震荡
增大False Time Step (减少阻尼) 到10-50,目的在于改进高位稳态收敛问题
在复杂系统中,降低 False Time Step 有时会改善高位稳态收敛问题
• 在求解模型前
(1)使用 Sanity Check信息窗口(under [Solve/Sanity Check])
(2)检查FLOTHERM 模型:
物体覆盖问题
物体等级问题(优先级)
未附材料属性或其他属性
(3)设置监控点来观察局部参数和判断局部非稳定性问题
(4)网格检查(aspect ratio, enough grid cells, …)
• 求解过后, 如果有收敛问题
(1)检查流入和流出系统的质量流
(2)使用Regions获取系统空气流量
(3)打开残差场存储来确定最大残差点位置
如果在低位稳态或震荡,主要监控点参数稳定,且大残差不在关注区域,则不需要再采取改进措施。
如果残差在关注区域,请检查网格。
(4)如果在高位稳态或震荡, Solution control 参数需要做调整(Relaxation)
想看详细操作演示,或是想了解其他仿真相关知识和小技巧,可以登录"元王仿真云"(www.featechweb.cn),海量免费行业案例和视频教程帮助大家进阶提升!