对于 VOF 学习的几点体会
1、对于网格的选择
尽量选择四边形或六面体网格,而不用三角形或四
面体网格,以简化多相流问题。
2、对于 VOF 公式的选择
Geo-Reconstruct:是目前最精确的界面跟踪方法,
是 对 大 多 数 瞬 态 VOF 计 算 所 推 荐 使 用 的 方 法 。
Donor-Acceptor:在网格中包含很多扭曲的六面体单
元,可用该公式代替 Geo-Reconstruct。 Euler-Explicit:
可解决 Donor-Acceptor 公式仅对四边形、六面体网格
有效的问题,可用于三角形或四面体网格计算;也可
以用于 Geo-Reconstruct 不能给出满意结果的情形。
注意:Geo-Reconstruct 和 Donor-Acceptor,必须保证
在区域内没有双边壁面。
3、对于 VOF 模型相的定义
原则上可以根据个人的喜好定义。如果其中有一相
是可压缩的,为了提高解的稳定性,应指定该相为主
相。
注意:在 VOF 模型中,只能有一相是可压缩的。
4、关于表面张力和壁面粘附
对于网格的选择: 在表面张力有重大影响的计算区
域 内 应 使 用 四 边 形 或 六 边 形 网 格 。 在 打 开 Wall
Adhesion 后,在 wall 边界条件下指定接触角为每一对
相。 (接触角定义:当系统达到平衡时,在气、液、
固三相交界处,气-液界面和固-液界面之间的夹角。
实际反映的是液体表面张力与液-固界面张力间的夹
角。 )提高解的收敛性: 对于涉及到表面张力的计
算, 建议在 Multiphase Model panel 中为 Body Force
Formulation 打开 Implicit Body Force。这样做由于压
力梯度和动量方程中表面张力的部分平衡, 从而提高
解的收敛性。
5、关于运算环境的设置
对 于 VOF 计算,应当选择 Specified Operating
Density,并且在 Operating Density 下为最轻相设置密
度。这样做排除了水力静压的积累,提高了 round-off
精度为动量平衡。同样需要打开 Implicit Body Force,
部分平衡压力梯度和动量方程中体积力,提高解的收
敛性。 Reference Pressure Location(参考压强位置)
应是位于流体永远是 100%的某一相(空气)的区域,
光滑和快速收敛是其基本条件。
6、关于求解器的设置
压力插值方案:对于所有的 VOF 计算,应当使用
body-force-weighter 或者 PRESTO!压力插值方案。 对
于 Implicit 和 Euler Explicit 方程,为了提高相间界面
的 清 晰 度 , 应 当 为 体 积 分 率 方 程 选 择 采 用
second-order 或者 QUICK 离散方案 速度压力耦合
方案:通常瞬变流计算建议采用 PISO 方案。使用
PISO 时允许增加所有欠松弛因子的值,而不会减弱
解的稳定。对于四边形和三角形网格上的计算,用
PISO 方案时,为了提高稳定性,建议为压力选欠松弛
因子为 0.7-0.8。
注意:当 FLUENT 进行任何模拟时,如果前松弛因
子设置为 1 时,解出现不稳定、发散行为,欠松弛因
子必须减小;提高稳定性的另一个方法是减小时间步
长。 (使用稳态隐式的 VOF 方案,为了提高稳定性,
所有变量的欠松弛因子应设置在 0.2-0.5 之间。 )
Fluent 计算错误汇总
1. .fluent 不能显示图像
在运行 fluent 时,导入 case 后,检查完 grid,在显示 grid 时,总是出现这样
的错误
Error message from graphics function Update_Display:
Unable to Set OpenGL Rendering Context
Error: FLUENT received a fatal signal (SEGMENTATION VIOLATION).
Error Object: ()
解决办法:
右键单击快捷方式,把目标由 x:fluent.incntbinntx86fluent.exe
改成: x:fluent.incntbinntx86fluent.exe 2d -driver msw
如果还有三维的,可以再建立一个快捷方式改成:
x:fluent.incntbinntx86fluent.exe 3d -driver msw
这就可以直接调用了。如果不是以上原因引起的话,也有可能是和别的软件冲突,
如 MATLAB 等,这也会使 fluent 无法显示图像。
Q1:GAMBIT 安装后无法运行,出错信息是“unable find Exceed X Server”
A. GAMBIT 需要装 EXCEED 才能用。
gambit 的运行:先运行命令提示符,输入 gambit,回车
fluent 的运行:直接在开始-程序-Fluent Inc 里面
Q2:Fluent 安装后无法运行,出错信息是“unable find/open license.dat"
A. FLUENT 和 GAMBIT 需要把相应 license.dat 文件拷贝到
FLUENT.INC/license 目录下
Q3:出错信息:运行 gambit 时提示找不到 gambit 文件?
A. FLUENT 和 GAMBIT 推荐使用默认安装设置,
安装完 GAMBIT 请设置环境变量,
设置办法“开始-程序-FLUENT INC-Set Environment"
另外设置完环境变量需要重启一下,否则仍会提示找不到环
境变量。
Q4:使用 Fluent 和 Gambit 需要注意什么问题?
A. 安装好 FLUENT 和 GAMBIT 最好设置一下用户默认路径
推荐设置办法,在非系统分区建一个目录,如 d:\users
a) win2k 用户在控制面板-用户和密码-高级-高级,在使用 fluent 用
户的配置文件
修改本地路径为 d:\users,重起到该用户运行命令提示符,检查
用户路径是否修改
b) xp 用户,把命令提示符发送到桌面快捷方式,右键单击命令提示符快
捷方式
在快捷方式-起始位置加入 D:\users,重起检查
Q5:Gambit 运行失败,出错信息“IDENTIFIER "default_ Server ”
A. gambit 的缺省文件已经打开,到用户默认目录删除
default_id.*等文件
Q6:Gambit 运行失败,Gambit 运行界面一闪而过,没有出错信息,
只启动了 exceed,并在 gambit 所在目录随机生成了一个 gambit.xxxx
的目录
A. 因为执行了错误的 gambit 程序,在 fluent 的文件夹里有两个目录
下有 gambit,
需要正确运行的是 fluent inc/ntbin/ntx86 里的那个
gambit.exe,
而不是 gambit 文件夹下的那个 gambit.exe
Q7:安装完 fluent6.1,运行时出现这样的问题:
Error: sopenoutputfile: unable to open file for output
Error Object: "c:\temp\kill-fluent1684"
A. 在 C 盘下建个 temp 目录,两个错误都可以解决。
Q8:Fluent 计算时迭代发散怎么办?
A. FLUENT 计算开始迭代最好使用较小的库朗数,否则容易导致迭
代发散。
修改办法 slove-controls-solution,修改 courant Number
默认值为 1,开始没有经验的改小点,比如 0.01,然后逐渐
加大,
经验丰富的同仁自己决定
或者,FLUENT 修改迭代值的极限,slove-controls-Limits
根据你计算的情况决定
Q9:fortran 程序中报错 stack overflow 怎么办?
一般 fortran 编译器默认情况是 allocatable array 放在堆里,automatic array
放在栈里。
栈的缺省设置一般为 1048576。
数组越界,在 Visual Fortran 里提示 stack overflow。在 f77 这样的 unix 平
台下的编译器
里通常是 core dump。
这时把栈的缺省设置改大即可。
VF 中,命令行方式运行 link 或 editbin 命令即可。
问题 1:Gambit 为什么无法启动?
原因可能有 3
1.exceed 问题。运行 Gambit 出现 Using X_DEVICE。。。。表示 exceed 安装没
有问题,如果不出现,请重新安装 exceed,安装 exceed 最好自定义安装,只选
择 x-server,其他的全部不要,这样最好;
2.License 问题。进入命令行方式,设置好环境变量后,运行 Gambit,如果显
示 License Error,那就是 License 问题了,重新 Copy License 文件到安装目
录下的 license 目录里;
3..lok 文件问题。Gambit 启动的时候默认的建立 Defaul.dbs,如果存在
default.lok 文件,则 gambit 无法启动,删除该文件即可,.lok 文件意思就是
锁定本项目,详细的说明请看 Gambit 帮助;
4.也是 License 问题,但即使重新 copy License 文件也无法解决,这时可以尝
试修改系统时间。
问题 2: 如何提高收敛性?
1.保证网格足够精细
2.可能你的边界条件过于恶劣,可以尝试先把边界条件改得比较常规,待计算收
敛后逐步加大边界变量值,直到符合要求
3.适当调小松弛因子,并选择最符合你所使用的模型的求解策略
问题 3: Fluent 中压力进口和压力出口边界中的压力如何设置?
首先应该明确两个概念:
总压=静压+动压(对不可压缩流动)
绝对压力=表压(gauge pressure)+参考压力(operating pressure)
Fluent 的压力边界中设定的都是表压,在 pressure-inlet 中设定的是总压;在
pressure-outlet 中设定的是静压(注意:这里面没有包含水头压力 Hydrostatic
Head)。
问题 4:什么是静压、总压、动压?
静压、动压、总压是流体力学(总压严格说是空气动力学)中的概念。
1.静压是跟随流体以同样的速度运动的压力计所测量到的压力, 是因为分子的
运动而产生的。
2.动压等于 0.5*密度*(速度*速度),是按照能量观点给出的一个定义。
3.总压其实是一个能量平衡的关系,它是静压和马赫数的函数,它是静止在流体
中的压力计所测量到的压力。
4.在 fluent 中还出现了一个参考压力(operating pressure)
,这是因为压力项在 NS 方程中是以一阶导数的形式出现的,所以在求解压力的
时候,一定要给定一个参考值才能确定,就比如求解一个一阶常微分方程,
dy/dx=1,求出来是 y=x+constant。只有给定那个 constant 才能构成定解条
件。fluent 中的操作压力就相当于那个 constant,所以理论
喜豢裳顾跷侍猓 慰佳沽 κ 强梢运姹愀 ǖ 摹
fluent 求解出来的压力是表压,再加上这个参考压力就是绝对压力。
问题 5:后处理显示为什么老是闪烁,不正常?
后处理的显示问题一般都属于显卡的问题:
1.显卡太老了;
2.驱动不对,没有装好 directx 和 opengl 等一系列引擎;
3. 显卡驱动可能被病毒一类的原因破坏了
问题 6: 混合物的粘性应当如何计算?
∑(混合气体中 i 组分气体的体积百分数×i 组分的分子量×i 组分气体动力粘
度)/ ∑(混合气体 i 组分气体的体积百分数×i 组分的分子量)
问题 7:什么是 PDF 模型?
PDF 模型不求解单个组分的输运方程,而求解混合组分分布的输运方程。各组分
浓度由混合组分分布求得。PDF 模型尤其适合于湍流扩散火焰的模拟和类似的反
应过程。在该模型中,用概率密度函数 PDF(probability density
function)来考虑湍流效应。该模型不要求用户显式地定义反应机理,而是通过
火焰面方法(即混即燃模型)或化学平衡计算来处理,因此比有限速率模型有更多
的优势。
问题 8:SCCM 是什么单位?
真空单位换算流速与漏率:1 Pa·L/s = 59.2 sccm
问题 9:Schmidt Number 是什么?
表示动量和质量输运之间的关系:粘性系数与扩散系数的比值
问题 10:Prandtl Number 是什么?
运动粘性系数与热扩散系数之比,表示动量、热量的输运难易程度
问题 11:Lewis Number 是什么?
是热扩散系数和扩散系数之间的比值
问题 12:如何将 fluent 的网格文件导入 CFX?
先将 gambit 的网格导入到 icem-cfd,再倒进 cfx。Icem-cfd 中有 import mesh
功能,并且和 fluent 有接口
问题 13:Fluent 与 matlab 冲突怎么办?
在"控制面板->管理->服务"中将 matlab 的 server 关掉即可
问题 14:Fluent 软件过期怎么办?
在所有目录中查找是否有比当前系统时间更新的文件,找到后把文件时间改回去
即可。fluent 在计算机所有文件中找一个最新时间,如果此时间新于系统时间,
fluent 即认为修改过系统时间,即使把系统时间改回去是没有用的。
问题 15:Phoenics 安装常见问题
1."Tcl error"--没装 active.exe 了(phoenics 安装程序中有我却视而不见);
2."visual fortran run-time error"--没装 fortran 了;
3."code expired"--系统时间没改正确。
问题 16:Fluent 常见报错解答 1
Q:在 fluent 里,打开 display 里的 grid 只能弹出一个发白的屏幕,死了。fluent
显示:
Error: Floating point error: divide by zero
Error Object: ()
Error: FLUENT received a fatal signal (SEGMENTATION VIOLATION).
Error Object: ()
A:1. 可能是图形还没有显示完,你突然关掉它,以后再显示就是出现这种情况。
建议你保存 case and date 后,退出 fluent,重新读一次 case and date 就可
以正常显示;
2. 显卡对 opengl 的支持不好,更新显卡驱动
问题 17:Fluent 常见报错解答 2
Q:启动后显示如下:
Error: sopenoutputfile: unable to open file for output
Error Object: "c:\temp\kill-fluent692"
A:破解不干净,不影响使用
问题 18:Fluent 常见报错解答 3
Q:网格导入 fluent 时
:
Building...
:
grid,
: Error: Null Domain Pointer
A:计算域指针无效,一般需要重新生成网格。
问题 19:Fluent 常见报错解答 4
Q:运行时出现如下信息:
Error:
FLUENT received fatal signal (ACCESS_VIOLATION)
1. Note exact events leading to error.
2. Save case/data under new name.
3. Exit program and restart to continue.
4. Report error to your distributor.
Error Object: ()
A:只要是严重的错误和发散,fluent 都显示这个,这些信息说明不了任何问题。
模型要做一定的调整。
问题 20:Fluent 常见报错解答 5
Q:出现如下信息
: Welcome to Fluent 6.1.22
: Copyright 2003 Fluent Inc.
: All Rights Reserved
: Cannot open dump file "fl_s117.dmp".
: Error: Unable to open dump file
: ()
: Error encountered in critical code section
: Hit return to exit.