首页/文章/ 详情

【教程】4-ParaView对SPH粒子拟合成连续自由液面

8天前浏览181


使用ParaView软件,可以通过光线追踪渲染(OSPRay)对平滑粒子流体动力学(SPH)的结果——点群数据,进行连续自由液面化的可视化。
本文以一个水坝溃决的SPH结果作为样本,进行光线追踪的可视化。
效果  

 

 
   

1.SPH结果的加载和点高斯表示


 

启动ParaView,通过"Open"图标打开"Open File"窗口,导航到你解压数据的文件夹。

带有连续编号的时间序列数据将以"文件名_..vtk"的格式显示,加载这些文件将作为时间序列数据加载。
在这里,选择:
 ParticleData_Fluid_..vtk
加载SPH点群数据。
按下"Apply"按钮,将颜色设置为"velocity",表示方法设置为"Point Gaussian",并将
 |Gaussian Radius| 0.02|
设置后,进一步推进时间,将显示如下的点群。    


2.SPH体插值


 

由于SPH的结果是点群数据,首先需要将其插值到体积数据(三维图像数据)。为此,使用SPH体插值滤波器。

通过点击
 Filters > Point Interpolation > SPH Volume Interpolator
进行设置。
在"Array Selections"下设置如下:
·密度数组:density
·质量数组:无
·截断数组:无
·空间步长:0.04    
另外,在"Volume Parameters"中,指定包围解析区域的边界框及其分辨率(需要事先调查解析区域的坐标)。
·显示框:不勾选
·原点:-2, 0, -0.75
·缩放:4, 3, 1.5
按下"Apply"按钮,将表示方法设置为"Volume",将以体积渲染的方式显示。
    

3.等值体积


 

为了在光线追踪中绘制,需要进一步提取表示水面的面形状。为此,使用提取等值体积的"Iso Volume"滤波器。

点击
 Filters > Alphabetical > Iso Volume
并设置
·输入标量:Shepard Summation
·最小值:0.1
应用后,将显示如下的等值体积。

  

4.光线追踪渲染


 

提取了所需的水面形状后,接下来设置光线追踪。

在"Pipeline Browser"中选择"IsoVolume1"为选中状态,并将"Ray Tracing"设置如下:
·材质:water    
同时,在"Ray Traced Rendering"中勾选"Enable Ray Tracing",并设置
·后端:OSPRay pathtracer
·每像素样本数:5
·降噪:勾选
如果查看器的背景色是黑色等暗色,可能不太容易看清楚。

  

5.视频


 

将上述设置应用于视频,可以得到如下效果。    



    

来源:CFD饭圈
UM渲染ParaView
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-09-08
最近编辑:8天前
CFD饭圈
硕士 分享CFD文章,感谢关注
获赞 9粉丝 4文章 345课程 0
点赞
收藏
作者推荐

【教程】2-ParaView可视化CFD血流量仿真数据

数据本教程使用的数据包括:- 血流模拟数据- 多种数据类型- 连续数据场(非结构化网格,四面体):流体场,等离子体- 粒子数据(非结构化点):在流动中移动的单个粒子- 红细胞(RBC,非结构化网格,三角形):RBC表面的网格- 健康状态- 疾病状态 1. 加载多组件数据集 从文件菜单(也可以点击上面的文件夹图标)打开以下数据集(选择后点击“确定”)文件将显示在管道浏览器中 在对象检查器中点击应用您需要一个接一个地这样做:- continuum...vtu- particles...vtu- rbc_...vtu- bad_rbc...vtu注意:名称中的“...”和文件浏览器中的箭头表示这些文件中每个都有多个时间步长使用所有默认设置,您应该会看到类似这样的内容 2. 选择要查看的数据 让我们从查看continuum.000*data开始。这是一个具有速度和计数(密度)值的非结构化网格。 - 使用管道浏览器旁边的名字旁边的眼球图标隐藏其他数据集。- 黑色=可见,灰色=隐藏- 选择pipeline browser中的continuum.000*(名称被高亮)- 单击名称以突出显示- 操纵外观或应用过滤器时,这些操作始终影响所选的数据集- 切换到对象检查器中的显示选项卡- 在颜色由下拉菜单中选择速度- 在GUI顶部附近的菜单栏中,也有颜色由的快捷方式 3. 操作颜色图 要更改用于表示速度的颜色: - 在颜色由下,点击编辑颜色图...按钮- 在颜色刻度编辑器窗口中点击选择预设按钮- 在预设颜色刻度窗口中,选择:蓝色到红色彩虹,并点击确定。然后在颜色刻度编辑器窗口上点击关闭- 您也可以创建和保存自己颜色图 4. 数据表示 为了能够看到圆柱体内的粒子和红细胞,我们需要能够看穿它。如果我们在对象检查器视图中稍微滚动一下:- 一组标记为风格的控件 - 在表示方式下拉菜单中,选择线框 5. 生成流线 ParaView允许从管道中现有的数据集生成不同类型的数据–流线:由流场的向量生成。这些曲线显示了流体元素在任何时间点将行进的方向–确保在管道浏览器中选择了continuum.000*data–从主菜单选择:过滤器->按字母顺序->流迹追踪器,或从菜单栏点击流迹追踪器图标–在对象检查器中确保选择了属性选项卡–滚动到种子,并更改种子类型为线源–点击Y轴按钮,将种子线设置为沿Y轴运行–默认分辨率设置为100。这会使事情有点混乱,特别是当我们开始添加其他数据时,因此让我们将其减少到25–点击应用按钮 6. 将流线作为管道 流线就是线。我们可以使用管道过滤器将它们表示为3D对象,而不仅仅是线。- 在管道浏览器中选择StreamTracer1,从主菜单选择:过滤器->按字母顺序->管道- 在对象检查器中确保选择了属性选项卡- 默认的半径值对于这个数据来说有点太大了,让我们将这个值设置为0- 点击应用按钮- 注意StreamLine1对象已经自动隐藏了- 有多种不同的方法可以给这些管道上色- 选择Tubes1,在对象检查器中切换到显示选项卡- 颜色由下拉菜单允许您从几个不同的变量中选择 7. 切割平面(切片) 现在让我们添加一些切割平面或切片,以查看连续体数据的横截面是什么样子的。- 再次确保在管道浏览器中选择了continuum.000*data- 过滤器->按字母顺序->切片,或从菜单栏点击切片图标- 在对象检查器中确保选择了属性选项卡- 在对象检查器底部有一个标题为切片偏移值的部分。在这里,我们可以为多个切片生成值- 首先点击删除所有按钮以删除初始值- 接下来,点击新范围按钮。这将打开一个添加范围对话框。- 将步数设置为7。点击确定- 点击应用按钮- 在对象检查器中选择Slice1,切换到显示选项卡- 将颜色由值设置为速度 8. 数据表示:不透明度 即使将连续体数据表示为线框,内部结构仍然有相当大的遮挡。为了通过线框进一步减少这种遮挡,我们可以使它更透明。–再次确保在管道浏览器中选择了continuum.000*data–在对象检查器中确保选择了显示选项卡–在对象检查器中有一个标题为风格的部分–将不透明度设置为0.2 9. 模拟数据动画 由于我们的数据具有多个时间步长,我们可以轻松地通过它们进行动画播放,以查看数据随时间的变化。–只需点击GUI顶部动画栏上的播放按钮–暂停以使其停止–循环:当此按钮被切换时,动画将重复播放,直到停止 10. 动画 动画可以保存到磁盘作为电影文件,以便以后播放。– 从主菜单:文件->保存动画 – 动画设置对话框:保存动画– 文件类型:AVI文件(*.avi)– 在文件名中输入一个名称– 点击确定– 电影可以用标准的媒体播放器播放(Windows Media Player,QuickTime,VLC等) 11. 粒子作为字形 字形是另一种可视化数据的方式,其中图形元素的属性由数据的属性决定。 所有粒子都显示为图形窗口中的红色点。这个特定数据集中大约有39K个粒子,这使得显示有点混乱。为了过滤掉其中一些,并为它们创建3D表示,我们将对这些数据应用字形过滤器。 现在让我们将其他一些数据添加回场景中。让我们从粒子数据开始。 所有粒子都显示为图形窗口中的红色点。这个特定数据集中大约有39K个粒子,这使得显示相当混乱。为了过滤掉其中一些,并为它们创建3D表示,我们将对这些数据应用字形过滤器。– 注意:particles.000*仍然可见。 – 取消隐藏particles.000*数据:点击眼球图标– 选择particles.000*数据:点击名称– 过滤器->按字母顺序->字形,或从菜单栏点击字形图标– 字形类型:球体– 半径:0.15– 方向:未选中– 缩放模式:关闭– 设置缩放因子:1 - 编辑:选中– 最大点数:3000– 屏蔽点:选中– 随机模式:未选中– 点击应用按钮– 由于我们的目标是简化显示,让我们通过点击管道浏览器旁边眼球图标来切换它们,隐藏particles.000*。– 让我们还切换到对象检查器的显示选项卡,选择Glyph1,并更改颜色由值到GlyphVector。由于GlyphVector值基于速度。我们可以编辑颜色图...并选择我们之前为速度选择的相同的蓝色到红色彩虹预设 12. 进入:红细胞 现在让我们添加另外两个数据集,它们是由多边形网格组成的红细胞(RBCs)。这两个数据集基本上是同一种类型的数据,因此我们可以对它们应用相同的过滤器,并对它们进行相同类型的表现更改。然而,一些RBC被生成它们的模拟标记为健康(rbc.000),一些被标记为疾病(bad_rbc.000)。– 通过点击旁边的眼球图标使rbc.000和bad_rbc.000数据集可见 13. 使用颜色 区分数据 为了能够区分这两种类型的数据,我们可以改变它们的表现。 一种方法是将两个数据集的颜色设置为不同的颜色。为rbc.000和bad_rbc.000中的每一个重复此过程,选择不同的颜色。 –在管道浏览器中选择一个rbc数据集–转到对象检查器中的显示选项卡–在颜色由下拉菜单中选择纯色–点击设置纯色...按钮–从出现的“选择颜色”对话框中选择一种颜色–为另一个rbc数据集重复上述步骤,选择不同的颜色 14. 进一步探索:突出网格 更改其中一个红细胞(RBC)数据集的表示方式。 在这个例子中,为了减少显示多个重叠网格时的混淆,连续体.000*数据也被隐藏了。 –选择其中一个RBC数据集–转到对象检查器中的显示选项卡–对于表示方式,选择“带有边缘的表面”–在边缘样式部分,点击“设置边缘颜色...”按钮,从选择颜色对话框中选择不同的颜色 15. 进一步探索:突出顶点 添加字形以说明其中一个RBC数据集的顶点位置。 –选择其中一个RBC数据集–选择字形过滤器–由于这个过滤器最近使用过,也可以在:过滤器->最近的->字形下找到 –像之前的例子一样,为字形属性设置各种配置选项–注意:这次我们想要显示RBC的所有顶点,所以我们应该取消选中“屏蔽点”选项 16. 进一步探索:按变量颜色 尝试尝试其他数据对象的查看选项和表示方式。 更改:- 颜色由值- 不透明度- 表示方式- 等等 17. 背景颜色 背景颜色是最终可视化的重要组成部分–从主菜单选择:编辑->视图设置...–在视图设置对话框的常规下,选择选择颜色–选择颜色:确定–应用,然后确定 来源:CFD饭圈

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈