本教程介绍了如何在 STAR-CCM .中创建侵蚀建模分析。该教程模拟液流中固体颗粒引起的侵蚀。
本教程中使用的几何的最初设计是在侵蚀性作业环境下使用的阻流阀的减压装置,装置如下图所示。
此装置在侵蚀性作业环境下接受过测试,测试时使用的是砂–液侵蚀测试设备。本教程中使用的条件以实际测试为依据。在侵蚀测试中,限流器安装在直径为 53.1mm 的管道中。在两个位置测量静态压力:限流器上游 106 mm 处和下游 318 mm 处。在测试过程中定期称量限流器以获得总体质量损失。
在本教程中,使用室温下的水作为液相。入口条件如下(相当于直径为53.1 mm的管道中 28.57升/秒的流率):
表2: 液相
颗粒质量加载量为 0.39%。颗粒属性如下:
表3: 颗粒相
导入网格,命名模拟
1.获得本文所用模型(体网格导入):请下载附件
2.将模拟另存为 erosion.sim。
可视化已导入的几何
选择物理模型
物理模型定义模拟的主变量,包括压力、温度、速度和用于生成求解的数学公式。
在本教程中,不仅要考虑湍流连续相,而且还要考虑连续相中的颗粒运动,因此需要数个模型。为了模拟这些相,STAR-CCM 部署了两种不同的策略。连续的液相使用欧拉公式建模,其中的流体属性通过在整个流体域中分布的固定点获取。颗粒相使用拉格朗日方法建模,在整个连续相上跟踪其中的代表性颗粒的轨迹。
STAR-CCM 允许连续液相和离散颗粒相之间的双向耦合。但为了缩短所需的模拟时间,在本教程中不考虑耦合。
本分析仅需要一个区域来表示连续相。默认情况下,导入网格时会自动创建物理 1 连续体。编辑连续体,以便为水的流体区域选择适当的物理模型。
要选择物理模型:
选择拉格朗日相模型
1.在物理 1 连续体中,右键单击模型 > 拉格朗日多相 > 拉格朗日相节点,然后创建一个新相。
2.对于相 1 相,按顺序选择下列模型:
设置材料特性
教程的此部分说明如何处理两个相(连续相和拉格朗日相)的材料特性。在本模拟中,连续相可接受水的默认属性。本模拟的液流中掺入了砂粒,因此必须将拉格朗日相的密度设置为砂子的密度。
为拉格朗日相指定材料特性。
1.编辑物理 1 > 模型 > 拉格朗日多相 > 拉格朗日相 > 相 1 > 模型 > 固 体 > Al > 材料特性节点,然后设置下列属性:
2.将 Al 节点重命名为砂子(sand)。
设置拉格朗日相模型属性
定义拉格朗日相模型属性。曳力模型使用默认方法设置曳力系数,即 Schiller-Naumann 相关性方法。
编辑拉格朗日相 > 相 1 > 模型节点,然后设置下列属性:
为复原系数定义场函数
复原系数用以预测颗粒弹离固体壁面的角度。本教程中使用由 Forder et al. 设计的关系式:
1.打开工具 > 场函数节点。
2.向下滚动列表,直至看到颗粒入射角函数。
3.选择颗粒入射角,记录函数名属性的值。
在记录 ParticleIncidenceAngle 的所需名称后,即可为法向复原系数创建函数。
4.右键单击工具 > 场函数节点,然后在弹出菜单中选择新建 > 标量。一个新的用户场函数 1 节点出现在对象树中。
5.将用户场函数 1 重命名为 ENormal。
6.选择 ENormal,然后设置下列属性:
此时,为切向复原系数重复相同的步骤。
7.右键单击工具 > 场函数节点,然后在弹出菜单中选择新建 > 标量。一个新的用户场函数 1 节点出现在对象树中。
8.将用户场函数 1 重命名为 ETan。
9.选择 ETan,然后设置下列属性:
设置拉格朗日相边界条件
拉格朗日相边界条件用于定义颗粒和液滴碰撞到固体边界时的行为。可以为下列边界类型定义碰撞行为:
• 挡板
• 接触面(交界面)
• 壁面
本模拟中不存在挡板和接触界面,因此只需要为壁面边界类型定义边界相 互作用模型。在本节中还将设置侵蚀模型的参数。
现在,可以将前一节中创建的场函数应用于拉格朗日相边界条件。
要设置拉格朗日相边界条件:
编辑物理 1 > 模型 > 拉格朗日多相 > 拉格朗日相 > 相 1 > 边界条件 > 壁面节点,然后设置下列属性:
设置侵蚀模型
在使用 CFD 方法创建侵蚀模型时,选择的侵蚀模型必须匹配正在遭受侵 蚀的材料以及侵蚀发生的条件。此外,也要认识到,不必要求侵蚀建模始 终能以一致的准确度预测材料损失,建议不要单纯使用 CFD 建模来估计 元件使用寿命。如果估计元件使用寿命十分重要,那么应该对侵蚀模型进 行其他实验验证,藉此评估该模型在适当条件下的有效性。
在本教程中,最先使用奥卡模型,然后使用其他用户定义的模型做比较。STAR-CCM 中对奥卡模型设置的默认系数适用于碳钢的砂侵蚀。
要设置侵蚀模型:
在连续体 > 物理 1 > 模型 > 拉格朗日多相 > 拉格朗日相 > 相 1 > 边界 条件 > 壁面 > 物理值节点中,选择侵蚀率节点,并将方法设置为奥卡。
设置连续相边界条件
壁面边界的默认连续相边界条件可满足此分析的需要,其中没有用于对称 平面的用户定义参数。但必须修改入口和出口边界。
编辑区域 > 流体 > 边界 > 流入节点,然后设置下列属性:
编辑区域 > 流体 > 边界 > 流出节点,然后设置下列属性:
设置喷射器
定义用于将颗粒导入求解域的喷射器。
使用喷射器将离散拉格朗日相的颗粒导入求解域。喷射器定义颗粒的初始 状态及其空间分布。在本教程中,以与连续相的速度相匹配的速度在入口 附近导入颗粒。
创建基于显示方格的新的衍生零部件来定义喷射点,因为这可以改善颗粒 在整个管截面上的分布情况。
要设置喷射器:
1.右键单击衍生零部件节点,然后选择新建零部件 > 探针 > 显示方格。
2.在创建显示方格对话框内,将区域流体添加至输入零部件,单击创 建,然后单击关闭。
3.将衍生零部件 > 显示方格节点重命名为喷射方格。
4.选择喷射方格节点,然后为方格设置下列值:
创建喷射器:
5.右键单击喷射器节点,然后选择新建。
6.选择喷射器 1 节点,将类型设置为零部件喷射器。
7.将输入设置为衍生零部件 > 喷射方格。
8.最后将拉格朗日相设置为相 1,
在求解初始化过程中计算出喷射点数以前,点数属性一直为 0。此时必须 设置喷射器的条件和值,以便定义颗粒。
9.编辑喷射器 > 喷射器 1 > 条件节点,然后设置下列属性:
10.编辑喷射器 > 喷射器 1 > 值节点,设置下列属性:
设置求解器参数和停止条件
在拉格朗日多相模拟中,设置跟踪颗粒的最长时间十分重要,因为可能在 流体区域(例如停滞区)内捕获颗粒并使之无限期地留滞在那里。
1.编辑求解器节点,然后设置下列属性:
依据选择分离流求解器时出现的监视器,创建新的停止条件。目标是在停 止求解前,为连续量和动量获得 1.0E-3 的残差。
2.打开监视器节点。
3.同时选择下列节点:
• 连续体
• X 动量
• Y 动量
• Z 动量
4.右键单击其中一个选定节点,然后选择根据监视器创建停止条件。
5.打开停止条件 > 连续体条件节点。
可以通过一次操作为所有节点更改属性,而不用逐一修改每个节点。
6.同时选择下列节点:
• 连续体条件
• X 动量条件
• Y 动量条件
• Z 动量条件
7.在属性窗口中,将逻辑规则更改为 And。
8.同时选择下列节点:
• 连续体条件 > 最小极限
• X 动量条件 > 最小极限
• Y 动量条件 > 最小极限
• Z 动量条件 > 最小极限
9.在属性窗口中,将最小值设置为 0.001。
可视化求解
右键单击场景节点,然后选择新建场景 > 标量。
选择场景 > 标量场景 1 > 显示器 > 标量 1 > 零部件节点,然后将零部 件设置为区域 > 流体 > 对称。
选择标量 1 > 标量场节点,并将函数设置为压力。
使用鼠标键按下图所示调整标量场景 1 的方向。
生成压降报告和绘制压降图
创建入口和出口边界平均压力的报告,并将报告用于提供压降的场函数中。
对于流率是 28.09 升/秒时限流器两端的压降,有可用的实验数据。可以将这些数据与此模拟的压降预测值进行比较,从而估计结果的准确性。为实现此目的,需要创建入口和出口边界的平均压力的报告,并将报告用于 可提供压降的用户自定义场函数中。在运行模拟的过程中可绘制此场函数的绘图以估计收敛度。
在距离限流器前两个管直径的位置测量上游静态压力,在距离限流器后六 个管直径的位置测量下游静态压力。流入边界对应上游测量点,但必须在 下游测量点处创建一个截面平面。首先创建平面截面:
1.右键单击衍生零部件节点,然后选择新建零部件 > 截面 > 平面。
创建截面对话框出现在对象树上方位置。
2.在输入零部件框中,选择流体。
3.在平面参数对话框中,将 Y 原点设置为 -0.239014 m,将 X 法线设 置为 0 m,将 Y 法线设置为 1 m。其他参数可保留其默认值。
4.在显示框中,选择无显示器,如下图所示。
创建用于提取静态压力的报告:
5.右键单击报告节点,然后选择新报告 > 表面平均值。
6.将表面平均值 1 节点重命名为上游压力。
7.选择上游压力节点,然后将标量场函数设置为压力。
8.单击零部件属性的右侧。在出现的对话框中,展开区域和流体节点,然后选择流入边界,如下图所示。
为下游压力创建类似报告:
9.右键单击报告节点,然后选择新报告 > 表面平均值
10.将表面平均值 1 重命名为下游压力。
11.选择下游压力节点,并将标量场函数设置为压力,然后将零部件设置 为平面截面。
完成的属性窗口显示如下。
12. 右键单击报告节点,然后选择新建报告 > 表达式。
13. 将表达式 1 节点重命名为压降。
14. 选择压降节点。
15. 使用(自定义编辑器)输入下列定义属性:
$UpstreamPressureReport - $DownstreamPressureReport
16.单击维度属性的(自定义编辑器)。在压降 - 维度对话框中,将压力 维度设置为 1,如下图所示。
17. 最后,将单位设置为 bar。
根据此报告创建监视器和绘图。
18. 右键单击报告 > 压降节点,然后选择根据报告创建监视器和绘图。
19. 右键单击绘图 > 压降监视器绘图,然后在弹出菜单中选择打开。显示空绘图。
20. 保存模拟。
初始化并运行模拟
分两阶段运行模拟。首先获得无颗粒的液相的稳态求解,然后通过另外一 次迭代获得颗粒轨迹。这是一个合理的方法,因为尚未为拉格朗日相激活 双向耦合。
液相
要在获得液相求解的过程中禁用拉格朗日求解器:
1.选择求解器 > 拉格朗日多相节点,然后激活冻结的求解器专家属性。
2.运行
如果任其自然,模拟将继续运行直到完成 1000 次迭代或直至所有适 当的量均满足连续性残差标准 0.001。
3.模拟结束时显示压降监视器绘图,如下图所示。
4.标量场景 1
5.保存模拟。
拉格朗日相
重新激活拉格朗日多相求解器以获得颗粒轨迹和侵蚀预测。
6.步进一次,颗粒追踪结束后,保存模拟。
可视化结果
本教程中要关注的主要结果是限流器表面上的侵蚀率。可创建一个标量场景来显示此分布。
1. 右键单击场景节点,然后选择新建场景 > 标量。
2. 打开场景 > 标量场景 2 节点,然后选择显示器 > 标量 1 > 零部件节点。
3. 将零部件设置为区域 > 流体 > 限流器。
4. 将函数设置为侵蚀率。
估计总体侵蚀率
创建场函数和报告以估计总体侵蚀率。
要获得整个限流器的侵蚀率(单位为 g/hr)的估计值,必须创建场函数,藉此求得计算出的各边界面上的侵蚀率与表面积的乘积。
要估计总体侵蚀率:
创建场函数:
1. 右键单击工具 > 场函数节点,然后选择新建。
2. 将用户场函数 1 节点重命名为总体侵蚀率。
3. 编辑尺寸属性,将质量设置为 1,将时间设置为 -1。
4. 将函数名设置为 OverallErosionRate。
5. 编辑定义属性,在对话框中输入下列定义:
$ErosionRate * mag($$Area)
通过创建用户自定义单位,可以利用 kg/s 以外的单位来生成总体侵蚀率 报告。下面举例说明以g/hr为单位创建报告。转换因子是:1 g/hr = 2.777778 x 10-7 kg/s。
6. 右键单击工具 > 单位节点,然后从弹出菜单中选择新建。
7. 将单位 1 节点重命名为 g/hr。
8. 选择 g/hr 节点,然后将描述设置为 g/hr。
9. 编辑尺寸属性,将质量设置为 1。
10. 将时间设置为 -1。
11. 单击确定。
12. 将转换属性的值设置为 2.777778E-7。
13.使用场函数和单位创建报告:
14. 右键单击报告节点,然后选择新建报告 > 总和。
15. 将总和 1 节点重新命名为总体侵蚀率。
16. 将标量场函数设置为总体侵蚀率。
17. 单击零部件属性的右半部分,展开区域和流体节点,选择限流器。
18. 使用下拉菜单将单位设置为 g/hr。
19. 右键单击总体侵蚀率报告节点,然后从下拉菜单中选择运行报告。输出窗口显示运行报告获得的结果:
预测的数量仅针对四分之一个环带。要获得真实案例的完整侵蚀率,需要乘以 4。