(第一部分)了解如何使用粗粒度建模(CGM)设置并处理仿真,以及如何将*.f2r文件导入Rocky进行单向Fluent耦合。
(第二部分)了解如何确认颗粒流何时达到稳定状态,如何比较输出之间的质量流,以及如何构建自定义属性来估算剪切力的功。
本教程的主要目的是了解如何使用Coarse-Graining在保持系统行为的同时,增加颗粒大小,但使用减少的(更大)颗粒数。
此外,我们还将了解如何按.f2r文件(可选)导出Ansys Fluent结果并在Rocky中进一步将这个已经处理过的CFD仿真与我们的DEM仿真设置相结合。
考虑的场景是在混合三通管内气动传输微米级颗粒。
您将了解如何:
按.f2r文件(可选)导出FluentCFD结果
将.f2r文件导入Rocky
使用Coarse-Graining来放大颗粒大小(并减少处理时间)
通过Boundary Collisions Statistics收集强度数据
而且您将使用这些程序和功能:
(可选)Ansys Fluent:
Export Solution to Rocky
Rocky:
Coarse-Graining
Fluent单向稳态耦合
Boundary Collision Statistics
本高级教程假定您已掌握Rocky用户界面(UI)及Rocky项目工作流程。
如果情况并非如此,建议您在开始本教程之前至少先完成教程01-05。
重要: 尽管本教程使用Ansys Fluent的CFD结果,您仍无需拥有Fluent许可证。具体而言:
如果没有Ansys Fluent,则可以跳过CFD设置步骤,并在准备将其导入Rocky时使用所提供的结果。
(可选)如果您有Ansys Fluent并希望自己处理CFD结果,请确保您有有效的Ansys2025 R1许可证。
要设置Fluent案例,请执行以下操作:
从 此处 下载
dem_tut17_files.zip文件。将
dem_tut17_files.zip解压缩到您的工作目录下。打开Ansys Fluent。
在Fluent Launcher的Dimension下,确保选择3D,同时,在Solver Options下,确保选中Double Precision。
重要: 与Rocky耦合需要Double Precision和3D。
在Solution工作区的Capability Level下,从下拉列表中选择Case。
从Browsing Case File对话框中,导航到您之前下载的几何结构文件夹,选择mixing_tee_fluent.cas文件,然后单击Open。
在Parallel下,设置Solver Process数。
点击Start。
在本教程中,我们将导出一个.f2r(Fluent到Rocky)文件,这需要事先安装一个特殊的Fluent/Rocky export 组件。
通过以下操作确保拥有该组件:
在Fluent程序窗口的顶部,查看是否列出了Rocky Export 菜单(如图所示)。
如果您在Fluent中没有看到该菜单,则执行以下操作:从Rocky 程序的Options菜单指向Ansys,然后点击Install Fluent/Rocky export (如图所示)。
在FluentOutline View结构树面板的Solution下双击Run Calculation。
在Run Calculation Task Page中,单击Calculate。如果需要初始化案例,请点击Yes。
计算完成后,请从Rocky Export 菜单指向Export one-way data,然后点击Export current data to Rocky(如图所示)。
.f2r文件将自动保存在与.cas文件相同的位置。
关闭Fluent。(本教程无需保存案例。)
注意: 如果您在没有Ansys Fluent的情况下完成了本教程,可从这一步开始。
从 此处 下载
dem_tut17_files.zip文件。将
dem_tut17_files.zip解压缩到您的工作目录下。打开Rocky 2025 R1
创建一个新项目。
将空项目保存到您选择的位置。
在本教程中,我们要执行以下所有操作:
启用Coarse-Graining ,帮助仿真微米级颗粒。
使用Boundary Collision Statistics模块收集Intensities。该数据对分析冲击磨损和功耗很有用。
通过我们之前使用的Fluent.cas文件导入几何结构(在可选步骤中)。
我们先从了解Coarse-Graining开始。
Coarse-Graining可帮助您增加原始粒度,以便使用可行数量(更大)的颗粒来研究系统行为。
这种物理场通过以下方式实现这一点:
放大颗粒尺寸,这可减少需要处理的颗粒数,从而降低计算负荷。
对新放大颗粒调整颗粒相互作用,使较大的颗粒表现得更像其所代表的较小颗粒。
Coarse-Graining不是创建一个可能涉及数亿个微小颗粒的不切实际的案例,而是实现在不影响准确度的情况下,使用更易于管理的颗粒数分析近似案例。
注意: Rocky中使用的Coarse-Graining模型基于Bierwisch等人的研究工作(2009)。如欲了解更多详情,请参考Rocky DEM 技术手册。
要在Rocky中应用Coarse-Graining,您需要为每个Particle集指定唯一的CGM Scale Factor。
该因子乘以原始颗粒大小,可得到一个更容易处理的、按比例放大的颗粒,称为parcel。
单个放大的parcel 的任务是表示许多原始尺寸的颗粒,同时保持与其表示的较小颗粒相同的相互作用行为。
要实现后一个目标,还可使用CGM Scale Factor来调整放大parcel的接触、粘附力、热以及阻力等相互作用属性,使其表现更像原始尺寸的颗粒。
使用下表中的信息开始设置您的Rocky项目。
提示: 如果您在这些表格中遇到了不熟悉的设置或过程,请参考Rocky用户手册和/或其他教程(通过入门教程和高级教程),以找到您需要的详细说明。
步骤 数据实体 编辑器位置 参数或操作 设置 A Study Study Study Name CGM Study B Physics Physics | Gravity Y-direction 0 [m/s2] Z-direction -9.81 [m/s2] Physics | Momentum Numerical Softening Factor 0.1 [ - ] Physics | Coarse-Graining Enable Coarse-Graining (已启用) C Modules Modules Boundary Collision Statistics (已启用) D Modules ﹂Boundary Collision Statistics
Boundary Collision Statistics Intensities (已启用) E Geometries Import Wall mixing_tee_fluent.cas的Import Unit设置为“m” 注意: “CGM”是指Coarse Grain Modeling。
导入五个独立的几何结构组件。
在本教程中,我们只需wall几何结构。
在Data面板中,多项选择两个入口及两个出口几何结构组件。
右键单击所选的四项,然后单击Remove Geometries。
重要: 此时应只保留壁面几何结构组件。
接下来,我们将定义一个表面,将其用作入口,将颗粒释放到域中。
此外,我们还将创建一个具有三种不同尺寸的球形颗粒组。
注意,我们将为Materials和Materials Interactions设置使用默认值。
使用下表中的信息继续设置Rocky项目。
步骤 数据实体 编辑器位置 参数或操作 设置 A Geometries 创建Circular Surface B Geometries ﹂Circular Surface <01>
Circular Surface Center Coordinates 0, 0, 0.36 [m] Max Radius 0.048 [m] Angle 90 [dega] C Particles 创建颗粒
在Data Editors面板的Particle主选项卡上,选择Size子选项卡,然后检查CGM Scale Factor:
现在,我们将CGM Scale Factor 保留为1(颗粒等于原始尺寸)。
在本教程的后面,我们将比较CGM Scale Factors 1和30的颗粒数。
点击Add 按钮(绿色+号)两次,添加两个以上的颗粒行。
对于每行,请定义Size(和Units)和Cumulative %值(如图所示)。单击View。
提示:Particles Details窗口始终反映集合中largest particle的尺寸。(本案例为7.5e-05 m。)
在Inlets and Outlets步骤中,我们将创建一个Particle Inlet。
使用下表中的信息继续设置Rocky项目。
步骤 数据实体 编辑器位置 参数或操作 设置 A Inlets and Outlets 创建Particle Inlet B Inputs ﹂Particle Inlet <01>
Particle Inlet Entry Point Circular Surface <01> ⯆ Particle Inlet | Particles 添加行(x1) (1) Particle | Mass Flow Rate Particle <01> ⯆ @ 0.1 [t/h] … | Time Stop 1 [s] … | Entry Target Normal Velocity (已启用) 4 [m/s]
现在我们来看看,如果我们按这个(原始)颗粒尺寸仿真,可估算多少颗粒。
在Data面板中,单击Inlets and Outlets。
在Data Editors面板的Info选项卡上,查看颗粒的估算数。
注意: 该估算是使用Inlet参数(例如Start和Stop Times、Target Velocity和Surface Dimensions)和Particles参数(例如Size和Material)进行的。
对于本教程,我们会假设我们没有处理数十亿个估算颗粒的计算资源。
为了使该仿真更合理地进行,我们现在将设置一个更高的CGM Scale Factor ,以减少颗粒数。
在Data面板的Particles下,单击Particle <01>。
在Data Editors面板的Size子选项卡上,增加CGM Scale Factor。
再次查看Inlets and Outlets位置的颗粒估算,可以看到明显减少的颗粒。
在Data面板中,单击Inlets and Outlets。
在Data Editors面板的Info选项卡上,查看更新的颗粒估计。
现在只有数万个颗粒,这种案例应该更容易处理。此外,Coarse-Graining所作的修正将确保相互作用与原始案例的相互作用非常接近。
重要: 提醒一下,CGM因子f乘以颗粒直径,这意味着parcel的体积和质量比原始颗粒的体积和质量大f3倍。结果是颗粒数减少f3倍。
本教程使用夸大的CGM因子30来加速仿真进程。但请注意,过大的CGM因子可能会导致不切实际的物理结果和数值不稳定(例如双向耦合案例)。
在CFD Coupling步骤,我们将导入一些已在Fluent中处理的稳态CFD结果。
从Data面板中,选择CFD Coupling。
在Data Editors面板的Coupling Mode列表中,选择(1-Way下)Fluent (Fluid > Particle) 选项。
在Select Fluent 2 Rocky export file对话框中,执行一项以下操作:
如果您完成了Ansys Fluent中前面的步骤,请导航到geometry文件夹,找到fluent_to_rocky.f2r 文件(导出结果时由Ansys Fluent生成),然后点击Open。
如果您没有完成Ansys Fluent中前面的步骤,请导航到geometry/cfd-one-way文件夹,选择mixing_tee_cfd.f2r 文件,然后点击Open。
在Data Editors面板的1-Way Fluent | Interactions 选项卡上,启用Turbulent Dispersion复选框。
现在CFD结果已经在Rocky中,您可以可视化组成Fluent网格的单元质心的节点。
重要: 考虑到单元的数量,显示CFD网格的所有矢量并不是一种好的做法,因为这样会冻结Rocky界面。
更好的做法是创建网格的薄切片,并仅显示该切片内的矢量。
使用下表中的信息来设置该薄片并对其可视化。
步骤 数据实体 编辑器位置 参数或操作 设置 A CFD Coupling ﹂1-Way Fluent
创建Cube用户进程 B User Processes ﹂Cube <01>
Cube Name Flow Vectors Center 0.45, 0, 0 [m] Magnitude 1.7, 0.02, 0.9 [m] C User Processes ﹂Flow Vectors
在新的3D View中显示 D User Processes ﹂Flow Vectors
Coloring Vectors (已启用) Vectors | Property Velocity ⯆ Vectors | Vector scale 0.025 [ - ] Vectors | Normalized vectors (已启用)
着色矢量显示,流体通过两个入口(图的左侧)进入域并通过两个出口(图的右侧)流动。
提示: 要查看矢量,您可能需要将wall 几何结构设置为透明或隐藏。
最后,我们需要定义Solver设置。
请使用下表中的信息完成Rocky设置。
步骤 数据实体 编辑器位置 参数或操作 设置 A Solver Solver | Time Simulation Duration 1 [s] Output Settings | Time Interval 0.01 [s] Solver | General Simulation Target CPU⯆
在Solver 实体中,单击Start。
出现Simulation Summary屏幕,然后开始处理。
提示: 您可以使用Auto Refresh复选框,以在处理过程中在3D View窗口中查看结果。
本教程旨在使用我们在第一部分中设置和处理的混合三通仿真的结果,来分析哪些壁面区域最容易磨损,了解颗粒在出口间分布的方式。
您将了解如何:
确定颗粒流何时达到稳定状态
比较几何结构出口之间的质量流
构建Custom Properties,估算剪切力的功
而且您将使用这些功能:
时间图
直方图
用户进程,包括:
Cubes
Particles Time Selections
Property
Particles Trajectory
Custom Properties
本高级教程假定您已掌握Rocky用户界面(UI)及Rocky项目工作流程。
如果情况并非如此,建议您在开始本教程之前至少先完成教程01-05。
重要: 尽管本教程使用Ansys Fluent的CFD结果,但您无需拥有Fluent许可证来完成本教程。
如果您已完成本教程的第一部分,请确保Rocky项目已打开。(第二部分将从第一部分结束的地方继续。)
如果您没有完成第一部分,请执行以下所有操作:
从 此处 下载
dem_tut17_files.zip文件。将
dem_tut17_files.zip解压缩到您的工作目录。打开Rocky 2025 R1
重要: 要使用所提供的Rocky项目文件,您必须拥有Rocky2025 R1或更高版本。如果您有较早版本的Rocky,请将Rocky升级到最新版本,或从头开始完成第一部分。
在Rocky程序中点击Open Project 按钮,找到tutorial_17_A_pre-processing文件夹,然后打开 tutorial_17_A_pre-processing.rocky 文件。
处理仿真。(从Data面板中,选择Solver,然后从Data Editors面板中,单击Start按钮。)
处理完成后,便可分析结果。
要进行统计分析,就必须选择混合三通内颗粒量保持稳定的一段时间。
我们将通过测量Particles Count 随时间变化的曲线来执行这项操作。
使用下表中的信息创建该数列图。
步骤 项 位置 参数或操作 设置 A Window(菜单) 创建New Time Plot B Particles Curves | Particles Count 拖放到打开的Time Plot <01>窗口
得到的时间数列图表明,在大约0.5秒后,区域内的颗粒数保持稳定。
0.5秒 ~ 1.0秒是设备连续运行的一段时间,可用于统计分析。
接下来,我们要比较两个出口之间的质量流,了解颗粒分离是如何发生的。
因此,我们将定义三个Cube User Processes;一个用于入口,另外两个用于出口。
请使用下表中的信息来定义这些Cubes。
步骤 数据实体 编辑器位置 参数或操作 设置 A Particles 创建Cube用户进程 B User Processes ﹂Cube <01>
Cube Name Inlet Cube Center 0, 0, 0.305 [m] Magnitude 0.121, 0.157, 0.234 [m] C Particles 创建Cube用户进程 D User Processes ﹂Cube <01>
Cube Name Outlet Cube (Downwards) Center 0.9, 0, -0.334 [m] Magnitude 0.128, 0.157, 0.153 [m] E Particles 创建Cube用户进程 F User Processes ﹂Cube <01>
Cube Name Outlet Cube (Main) Center 1.174, 0, -0.005 [m] Magnitude 0.188, 0.157, 0.19 [m]
现在可以在3D View中可视化立方体。
为了测量一旦达到稳定状态(从0.5 s开始)通过每个立方体的总质量,我们将为每个Cube创建一个Particles Time Selection进程。
使用下表中的信息定义这些进程。
步骤 数据实体 编辑器位置 参数或操作 设置 A User Processes ﹂Inlet Cube
创建Particles Time Selection用户进程 B User Processes ﹂Particles Time Selection <01>
Time Selection Name Inlet Measurement Domain Range After Time ⯆ Initial 0.5 [s] C User Processes ﹂Outlet Cube (Downwards)
创建Particles Time Selection用户进程 D User Processes ﹂Particles Time Selection <01>
Time Selection Name Outlet Measurements (Downwards) Domain Range After Time ⯆ Initial 0.5 [s] E User Processes 创建Particles Time Selection用户进程 F User Processes ﹂Particles Time Selection <01>
Time Selection Name Outlet Measurement (Main) Domain Range After Time ⯆ Initial 0.5 [s]
接下来,我们将构建一个Histogram,比较每个Cube之间的总质量和颗粒大小。
使用下表中的信息创建该数列图。
步骤 项 位置 参数或操作 设置 A Window(菜单) 创建New Histogram B User Processes ﹂Inlet Measurement
Properties | Particle Size 拖放到打开的Histogram <01> 窗口 C User Processes ﹂Outlet Measurement (Downward)
D User Processes ﹂Outlet Measurement (Main)
E Histogram (window) Configure histogram(按钮) F Configure Histogram(对话框) Weight Particle Mass ⯆ Number of Bins 3 Percent Values (已启用)
Histogram显示了三个颗粒尺寸范围的mass fraction。
注意: 您的直方图Bin颜色可能与图中所示的不同。
暗红色Bin表明大约66%的Inlet 质量分数是小颗粒。中型和大型颗粒各占17%的质量分数。
对于Main Outlet(橙色统计堆栈),我们几乎有80%的小颗粒质量分数。
蓝色Bin(Downwards Outlet)表明:颗粒越大,质量分数越高。换句话说,较大的颗粒通常会向下流动。
这些结果很合理,因为较大的颗粒(质量更大)需要更多的能量来加速,并在重力作用下逃离向下的出口。
注意: 由于我们使用的是CGM,因此横坐标所列的颗粒尺寸比我们在Particles步骤中设置的尺寸大30 倍。
在Rocky中,您可以使用surface wear modification功能来为磨损效果实现可视化。
该功能中使用的wear law通过考虑几何结构表面的剪切功来预测其随时间变化的磨损情况。
然而,对于我们在本教程中研究的案例,几何结构的表面修改不会很明显,因为仿真时间很短。
相反,我们不仅可计算剪切力在每个三角形表面上所做的总功,而且随后还可验证几何结构的哪些区域具有最大的剪切功。
您可能还记得:在第一部分中,我们为Boundary Collision Statistics启用了Intensities数据收集。我们可以使用这些数据执行剪切功分析。
一个良好的近似值表达式是:
公式 17–1. |
其中:
是给定的时间步长。
是给定的边界三角形。
[J]是
三角形上的Cumulative Shear Work ,从0到
。
[W/m2]为瞬时Intensity:
三角形上的Shear。
[m2]是Area:Cell,这是
三角形的面积。
是时间[s]。
[s]是两个输出间的时间,由Output Frequency决定。
现在我们来创建一个新的自定义 Property来对此进行定义。
首先,我们要计算Cumulative Intensity:Shear,这是方程式的因子。
使用下表中的信息创建这个自定义属性。
步骤 项 位置 参数或操作 设置 A Geometries ﹂wall
Properties Add new custom property(按钮) B Add new(对话框) Name Cumulative Intensity: Shear Output unit W/m2 Inputs | Intensity: Shear (已启用) C Custom Property (对话框) Expression sum(A[:t+1]
新的Cumulative Intensity:Shear (Custom)属性将出现在Transient下的Properties选项卡上。
我们现在要计算实际的Cumulative Shear Work。
使用下表中的信息创建第二个自定义属性。
步骤 项 位置 参数或操作 设置 A Geometries ﹂wall
Properties Add new custom property(按钮) B Add new(对话框) Name Cumulative Shear Work Output unit J Inputs | Area: Cell (已启用) Inputs | Cumulative Intensity: Shear (Custom) (已启用) C Custom Property (对话框) Expression A*B*OUTPUT_FREQUENCY
新的Cumulative Shear Work (Custom)属性将出现在Transient下的Properties选项卡上。
要可视化这个新的Cumulative Shear Work (Custom)属性,请将其拖放到3D View窗口中。
为了突出显示受磨损影响最大的表面三角形,我们将创建一个Property进程来对其进行过滤。
使用下表中的信息创建这个Property进程。
步骤 数据实体 编辑器位置 参数或操作 设置 A Geometries ﹂wall
创建Property用户进程 B User Processes ﹂Property <01>
Property Property Cumulative Shear Work (Custom) ⯆ Mode Cut ⯆ Type Range ⯆ Minimum value 5e-06 [N.m] Maximum value 0.001 [N.m] Coloring Faces (已启用) Faces | Property Cumulative Shear Work (Custom) ⯆ Faces | Show on Node? (已启用) Edges (已清除) 在Data面板中,隐藏Geometries下的两个项,每个Cube和Particles Time Selection User Processes,并通过点击其各自的眼图图标显示Particles。
下面显示的是最后一次输出时间的结果:[100] 1 s
现在我们将手动定义色阶的界限,看看表面磨损随时间变化的情况。
在Data面板的Color Scales下,选择Cumulative Shear Work (Custom)。
在Data Editors面板中,将Limits options设置为User Defined,然后单击Compute limits in time range and set as "User defined"按钮。
在Calculate limits for the time range对话框中,单击OK。
使用Time工具栏上的滑块,查看Cumulative Shear Work随时间变化的情况。
为了更好地了解颗粒与几何结构相互作用的情景,我们可创建一个Particles Trajectory 进程:
在Time工具栏中将输出时间设置为[80] 0.8 s。
使用下表中的信息创建该Particles Trajectory进程。
步骤 数据实体 编辑器位置 参数或操作 设置 A Particles 创建Particles Trajectory用户进程 B User Processes ﹂Particles Trajectory <01>
Particle Trajectory Update Particles Selection(按钮) Coloring Edges (已启用) Edges | Property Absolute Translational Velocity ⯆ 在Data面板中,通过启用Particles Trajectory <01>项的眼图图标确保其可见。
结果如下所示。
如下图所示,大部分剪切功都发生在主管道的底部。
在主管道底部,剪切功最大的区域为:
颗粒入口正下方的区域。
流分离的区域。
这些区域的剪切功较大,因此最容易出现磨损。

