Skip to main content

5. 后处理流程

本节以示例的形式说明如何针对已计算完的结果开展可视化和分析工作,并解释OceanKit的使用逻辑。

注意: 在使用OceanKit的后处理功能时,建议先关闭项目文件,以免模型显示与结果显示重合。

5.1 结果的导入

假如已经开展了VFOSP的动力学计算,结果文件存放于org目录下,可以看到有以00001-xx,00002-xx开头的结果文件,为了将结果文件导入,可以有两种方式:

方式一:通过工作区和工具栏操作,如下图所示

打开结果文件

步骤如下:

  1. 在工作区选中结果树结点
  2. 点击菜单或工具栏的添加子项(或者双击结果树结点)
  3. 在弹出的“加载结果数据”对话框中,点击Browser浏览文件
  4. 选择要打开的结果目录中任意以0000x-xx开头的txt文件
  5. 打开后“加载结果数据”对话框会进入数据选择状态

方式二:通过鼠标拖入

步骤如下:

  1. 直接将org目录下的任意TXT文件用鼠标拖入到显示区中
  2. 拖入后,OceanKit会弹出“加载结果数据”对话框,用于数据选择

通过以上两种方式打开文件后,加载结果数据对话框如下图所示:

加载结果数据选择

该对话框的选项说明如下:

文件

  • 文件路径:显示当前结果文件的路径,OceanKit会自动扫描当前文件夹下的所有结果文件
  • 文件格式:选择用何种格式打开

模型

  • 名称:导入后,模型显示的名称,默认为结果文件夹名称,因为OceanKit可以同时导入多个模型,需要采用不同的名称
  • 范围:导入结果文件的时间步范围,分别为起始时间步,时间步间隔,终止时间步(-1表示最后一个时间步)

结点数据选择

表示选择导入哪些结点向量,注意,这里列出的都是结点属性,而非单元属性。这些向量属性在在计算中输出的文件数据,不需要OceanKit进行计算。

结点数据计算

表示基于前面的结点数据,让OceanKit进行二次计算得到的向量属性,目前支持Mises应力(SMises)和总位移(dS)

“柱坐标”选项表示可以将部分结果数据从原来的直角坐标系统转成柱坐标系统,会转成柱坐标的变量包括:

  • Dx, Dy, Dz: 转换柱坐标后的数据存放在变量名为:Tx, Ty, Tz中,分别表示轴向位移、径向位移和环向位移。因此导入数据后,Dx、Dy和Dz还是直角坐标的数据,如果要显示径向位移和环向位移请选择Ty或者Tz。之所以保留Dx、Dy和Dz直角坐标数据,是为了后面便于用户设置变形缩放比例,需要用到Dx、Dy和Dz。

  • Vx, Vy, Vz:转换柱坐标后仍保存于变量Vx, Vy, Vz中

  • Ax, Ay, Az:转换柱坐标后变量名不变

  • Fx, Fy, Fz:转换柱坐标后变量名不变

  • Sxx, Syy, Szz, Sxy, Syz, Szx:转换柱坐标后变量名不变

  • Exx, Eyy, Ezz, Exy, Eyz, Ezx:转换柱坐标后变量名不变

模型镜像

  • 用于1/2、1/4、1/8模型的导入
  • 选择x面表示表示模型将会沿x面产生模型的镜像数据
  • 对于1/2模型,只需要选择x面镜像,即可得到全模型
  • 对于1/4模型,则需要同时选择x面和y面
  • 对于1/8模型,则需要同时选择x面、y面和z面

显示选项

  • 创建光照数据(占用更多内存),选择之后,可以对模型显示带有光照的效果,但会消耗更多的内存。

5.2 结果数据组成

下图表示导入结果数据后,会工作区结果项下产生名称为org的子项(称为结果模型),它包括模型数据模型展示数据修改数据绘图4个子项。这4个子项分别以不同形式表达结果文件。

模型数据组成

模型数据

模型数据子项下会显示当前导入的结果文件的每一个时间步的数据(称为一帧),当点击“time 0”树结点时,在属性区会显示这一帧的基本信息。如下图所示:

帧数据信息

可以看出,每一帧包含三种数据:

  • 点数据:它代表的是模型中的结点数据
  • 边数据:它代表的是模型中单元的所有边数据
  • 面数据:它代表的是模型中单元的所有面数据(一般为三角形)

值得说明的是:

  • OceanKit导入了所有的结点数据,但单元数据被拆分成了“边数据”和“面数据”,这是为了后期对单元显示进行灵活的控制
  • 单元数据只包含拓扑信息,并不包含单元应力、单元应变等数据
  • 所有的云图显示都是针对结点数据进行设置的

上图属性区中,可以看到点数据有两项,一个叫“point”,这是实际的结点数据集名称,在后面的显示设置中可以用到,而24121表示结点的数量。另一个叫"vfosp-tri-norm"的,是OceanKit生成的用于光照显示的点数据,一般情况下可以忽略它。

上图属性区中,边数据表示单元边的数据集名称和数量,而面数据则表示单元面的数据集名称和数量,同时也给出了所有数据的尺寸范围。

因为每一帧模型的状态是不一样的(比如云图),当点击每一帧子项时,模型显示区会展示所选帧的模型状态。

5.3 数据三维显示

结果模型子项中的第二个文件夹叫模型展示,主要用于控制对模型结果进行三维显示,比如应力云图,变形等。可以在模型展示项通过双击树结点或者工具栏的新增子项,来添加不同的展示效果。

在OceanKit中,一个模型的一种显示形式称为展示,一个模型可以有多个展示展示可以针对不同的基本数据采用不同的形式进行显示。展示是三维模型的基本显示单元,每一个展示隶属于一个结果模型。每个展示提供丰富的设置和选项,可以分别设置展示中点、边和三角形的显示形式,颜色,筛选等。基于展示,一个模型可以显示出十分复杂的三维图像。

例如,下图分别采用了两个不同展示,来表现同一个模型的不同部分:

不同展示组合

5.3.1 显示应力云图

下面通过显示结果模型的应力云图来说明对于数据三维显示的一些基本操作和概念。(注意:导入数据时请确认勾选了SMises结果数据。)

开启云图显示

模型导入之后,OceanKit会在模型展示下生成一个默认的展示子项,点击该子项,可在属性区对三维展示进行控制,该项包括五个属性页,如下图所示:

5个属性页面

  • (1)通用属性页:一般通用属性设置
  • (2)点属性页:用于控制点的显示
  • (3)边属性页:用于控制边的显示
  • (4)面属性页:用于控制边的显示
  • (5)拾取属性页:用于在显示区拾取结点数据,并显示结点信息

以上属性页面的每个属性含义可参考第6. 界面操作,这里通过显示应力云图介绍部分属性的使用。

  1. 点击点属性页
  2. 在颜色类别下,更改模式为云图
  3. 在点属性列表中,选择”SMises“
  4. 在渐变风格中选择”hsv“颜色模式

这样就完成了应力云图的显示设置,但当前时间步为第0帧,应力云图没有变化,所以显示的颜色是一样的,因此,可以选择不同的时间步,来显示应力云图分布,跳到不同时间步有两种方式:

方式 1:在工作区的模型数据树结点下选择不同的时间步数据子项即可转到相应的时间步

方式 2:通过菜单或工具栏按钮打开动画控制栏,如下图所示:

开启动画控制栏

将动画控制栏的进度条中拖到不同的位置,即可显示不同时间步的数据。同时也可以用鼠标右键点击进度条不同的位置,跳到相应的时间步。

显示渐变标尺

在显示区展示云图标尺的步骤为:

  1. 点击通用属性页
  2. 在渐变色卡分类中勾选显示
  3. 在显示区中便会显示渐变标尺

显示渐变标尺

开启光照效果

为了让模型显示更逼真,可以打开光照效果(注意:在导入数据时,选择了创建光照数据(占用更多内存)),操作步骤如下:

  1. 点击面属性页(因为光照是通过面数据表现出来的)
  2. 在显示风格选择Plane Light

开启光照效果

5.3.2 结点选择和拾取

显示部分结点

在后处理中,有时只想显示模型的部分区域,比如,只显示坐标x>-1的模型区域,可以通过以下操作实现:

  1. 点击点属性页
  2. 在选择类别下的运算表达式中输入x>-1,并回车,就完成了选择
  3. 选择成功之后,便会显示出选择了多少个结点,显示区也会发生改变

结点选择

具体支持的其它表达式和规则可参考6.1 主界面介绍中的详细说明。

拾取结点信息

如果希望选择模型中某一个结点,并查看其信息,可以通过以下操作完成:

  1. 点击拾取属性页
  2. 在模式中选择顶点信息
  3. 在显示区模型中点击要选择的结点
  4. 属性区将显示该结点的所有信息
  5. 点击显示区任意空白区可结束选择

结点信息

测量两结点距离

如果希望测量两个结点的间距,可以通过以下步骤完成:

  1. 点击拾取属性页
  2. 在模式中选择两点间距
  3. 在显示区模型中点击要测量的两个结点
  4. 属性区将显示结点信息和两点的间距
  5. 点击显示区任意空白区可结束选择

测量两结点距离

5.3.3 单元边显示调整

如果要改变单元边的颜色可通过以下步骤完成:

  1. 点击边属性页
  2. 点击颜色对话框修改颜色

单元边显示

5.3.4 动画播放和截图

显示区截图

后处理过程中,如果有需要截图保存的显示,可在设置好模型展示之后,点菜单或工具栏的截图按钮,截图文件名是自动生成的(这样可以多次截图,不用每次都输入文件名),保存的目录需要通过OceanKit的文件设置提前设定好,如下图所示:

截图目录设置

多时间步动画播放

动画播放功能可以通过动画控制栏进行操作,点击播放和暂停即可,也可以设置播放速度等信息,如下图所示:

动画播放

动画截图功能

在动画播放过程中,可以开启录制按钮,以对每一帧进行自动截图,并保存到截图目录。用户可以后期采用第三方工具将图片进行编辑并生成动画文件。

5.4 数据修改

OceanKit支持对结果中的数据在导入后进行修改,以满足不同的显示需求。目前支持的修改为变形缩放功能,便于增加或减小结构的变形比例。

5.4.1 变形缩放

在计算结果中,一般结构的实际变形比较小,为了使变形显示更明显,可以对变形进行缩放,具体操作如下:

变形缩放功能

  1. 点击工作区结果模型的数据修改树结点,新建产生一个“变形缩放”修改类型
  2. 点击新的数据修改子项,并修改属性
  3. 设置缩放因子
  4. 点击应用,即完成缩放操作

5.5 数据的绘图

OceanKit支持对模型中某一结点属性随时间步的变化进行曲线绘图,也支持针对同一结果绘制多个曲线图以进行比较。

5.5.1 自定义结点绘图

例如,要绘制结点1、45、678的Mises应力随时间步的变化曲线,操作步骤为:

自定义结点绘图

  1. 点击工作区结果模型的数据绘图树结点,新建产生一个新的结点向量绘图
  2. 点击新的绘图子项绘图 0
  3. 在属性区选择向量名称为Svm
  4. 在1号结点中输入1并回车
  5. 在2号结点中输入45并回车
  6. 在3号结点中输入678并回车

以下是曲线绘图结果:

曲线绘图结果

5.5.2 结点拾取绘图

OceanKit支持从模型选择结点,并绘制曲线,具体操作如下:

首先,在模型展示中选择结点:

  1. 在工作区选择一个模型展示,例如”展示 0“
  2. 点击在拾取属性页
  3. 如果要选3个结点,则在模式中选择三点角度(也可以用单点或两点模式)
  4. 依次在显示区的模型中选择要的结点

然后,在数据绘图中刷新曲线数据:

  1. 在工作区点击要绘图项
  2. 在属性区更改数据模式为模型拾取
  3. 点击刷新即可

刷新曲线数据