导读:使用VOF模型模拟水箱的填充和排空。在水箱中设置初始水位,打开供水系统几秒钟后关闭,水位上升,直到水从U型管流出,产生虹吸效应,有效地排空水箱。
导入网格
-
打开Fluent,选择Solution,2D,Double Precision
-
打开后,File → Read → Mesh,导入tankflush.msh.gz网格文件(文末有下载链接,Asys版本2025R1)
常规设置及网格检查
-
Physics → Solver → General
-
求解器选择ressure based, Absolute, Transient
-
点击Y分量前面的下拉按钮,选择“表达式”,然后输入-g。
-
检查网格,Domain → Mesh → Check
单位设置及网格显示
-
Domain → Mesh → Units
-
Domain → Mesh → Display,检查网格区域名称
操作条件及参考值
- 操作条件
-
Physics → Solver → Operating Conditions
-
设置Specified Operating Density,默认𝟏. 𝟐𝟐𝟓 [𝒌𝒈/𝒎𝟑],其他保持默认值
-
- 参考值
-
Physics → Solver → Reference Values,保持默认值
-
材料设置
- Physics → Materials → Create/Edit
-
点击Fluent Database
-
选择water-liquid
-
模型设置
- Physics → Models → Multiphase
-
选择Volume Of Fluid
-
Number of Eulerian Phases保持默认2
-
选择Explicit
-
激活Implicit Body Force,点击Apply
-
-
在某些应用场景中,界面的高精度分辨率并非所有流体区域都需要。此时采用Sharp界面建模或结Sharp/Dispersed建模,可显著提升模拟结果的可靠性。但本案例需要实现气-水界面的高精度解析,因此建议在界面建模选项中选择Sharp方法。
相设置
- Physics → Models → Multiphase,选择标签Phase
-
定义首相,输入名称Water,并选择Water-Liquid
-
按照同样的方法设置次相Air
-
- Physics → Models → Multiphase,选择Phase Interaction标签
-
激活Surface Tension Force Modeling
-
选择Continuum Surface Force
-
设置Surface Tension Coefficient为0.072 [𝑵/𝒎],点击应用。
-
边界条件定义
-
右键Inlet,确保Direction Specification Method为Normal to Boundary,点击Apply
- 设置Inlet类型为mass-flow-inlet,右键water,点击Edit
-
设置Mass Flow Rate 为20 [𝒌𝒈/𝒔]
-
-
对气相重复此步骤,并确保质量流量设置为0[𝒌𝒈/𝒔]
- Outlet类型为pressure-outlet,右键Edit
-
设置其压力为0Pa,点击Apply
-
- 展开Outlet,右键Air,点击Edit,设置Backflow Volume Fraction为1
-
对于VOF计算,设置回流体积分数很重要,这样可以避免错误的相进入区域。此处,如果发生回流,空气将进入区域而不是水,但一般情况下,根据具体问题,回流可能涉及任何相。
-
- 将边界条件从Outlet区域复制到ambient
-
右键单击主Outlet,然后选择Copy
-
在Phase下选择mixture,然后单击Copy
-
将Phase改为air,然后单击Copy
-
求解方法及控制
- Solution → Solution → Methods
-
设置Pressure-Velocity coupling为PISO
-
其他保持默认
-
-
Solution → Controls → Controls,保持默认选项
Vof稳定性控制
- Solution → Solution → Methods → Velocity Limiting Treatment
-
激活Velocity Limiting
-
设置最大速度限制50 [𝒎/𝒔].,点击OK
-
-
VOF模拟中的非物理速度尖峰可能由多种原因引起,包括时间步长过大、物压力梯度不平衡以及自由表面附近的轻相的非物理加速。
-
时间步长的推进逐渐消退。但有时这些峰值可能失控增长并引发发散现象。限制最大速度值是防止速度无序增长和发散的有效手段。所设定的最大速度幅度应远高于任何自然状态下可能出现的速度值。此处预计最大速度约为5[𝑚/𝑠],因此输入数值需比该数值高出一个数量级。
残差检测
- Solution → Reports → Residuals
-
设置Iterations to Plot为100
-
这将使残差在图中滚动,使其更容易看到当前的时间步
-
报告定义
- Solution → Reports → Definition → New → Volume Report → Max
-
设置报告名称max-velocity
-
在Field Variable中,选择Velocity → Velocity Magnitude
-
在Cell Zones list中,选择Fluid,点击OK
-
初始化设置
-
Solution → Initialization
-
选择Standard Initialization
-
点击Option
-
激活Localized Turbulence Initialization
-
设置air Volume Fraction为1
-
点击Intialize
-
-
创建register,定义初始液面
-
右键Cell Registers,点击New → Region
-
按照下图设置坐标,最初水箱被注满6cm的水,因此输入坐标对应于6cm的高度
-
点击Save/Display,可以看到定义的区域
Patching设置
- Solution → Initialization → Patch
-
在Phase中选择Air
-
选择变量为Volume Fraction
-
设置Value为0,空气相体积分数为0意味着水的体积分数为1
-
选择region_0,并点击Patch
-
- 检查Patch结果,Results → Graphics → Contours → New
-
将contour名称改为vof-contour
-
选择Phases → Volume Fraction,并将Phase改为water
-
点击Save&Display
-
自动保存设置
- Solution → Activities → Autosave
-
Save Data File Every输入50,并从下拉菜单中选择Time Steps
-
设置文件名为tankflush
-
点击OK
-
计算设置
-
定义指令,以便在0.25秒后修改边界条件:
- Solution → Activities → Create → Execute Commands
-
在Execute Commands Manager对话框中,单击New
-
设置名称为modify-inlet-boundary
-
将Execution Type设置为Execute Once,并设置Flow Time为0.25S
-
输入指令/define boundary-conditions modify-zones zone-type inlet pressure-inlet /define boundary-conditions pressure-inlet inlet air no 1
-
动画设置
- Solution → Activities → Create → Solution Animations
-
修改名称为vof-contour-animation
-
设置Record after every为0.1s
-
设置Storage Type为HSF File
-
定义保存路径Storage Directory
-
在Animation Objects下,选择vof-contour
-
点击OK并关闭
-
时间步长设置
- Solution → Run Calculation → Run Calculation
-
Type选择为Adaptive
-
Duration Specification Method选择为Total Time
-
Total Time设置为2.5s,Initial Time Step Size设置为0.002s
-
-
保存初始的cas跟Dat,File → Write → Case & Data
-
点击Calculate
计算过程及结果
-
计算过程中可以查看到残差变化及检测数据变化
- 查看体积分数云图
-
Results → Graphics → Contours → vof-contour
-
点击Save/Display
-
- 查看动画
-
Results → Animations → Playback → vof-contour
-
选择Write/Record Format为Video File
-
设置名称为vof-animation
-
点击write,即可输出动画
-
-
检查已保存的动画,以验证液面运动
计算网格及结果文件可前往公众号(BB学长)检索同名文章。