Matlab处理数据导出Paraview可读的vtk文件(二)

由于我在用SPH方法仿真时用的是FORTRAN语言,并且没有找到直接输出vtk文件的代码,因此偷懒通过MATLAB转换一下数据。

用到的Matlab子程序可通过一下链接找到。

Matlab处理数据导出Paraview可读的vtk文件(一)

假设我每个粒子输出的格式按照下面输出的

x(i), y(i), z(i), vx(i), vy(i), vz(i), p(i), rho(i), phase(i)

含义为每个粒子的坐标,速度,压强,密度,相。

     vtkwrite(‘output.vtk’,'unstructured_grid',x(:),y(:),z(:),'vectors','velocity',vx(:),vy(:),vz(:),'scalars', 'pressure',p(:), 
         'scalars', 'rho',rho(:),'scalars', 'phase',phase(:));

解释:

1,输出文件名

2,定义非结构网格,还有其他选项

3,后面跟每个点的坐标

4,‘vectors’定义向量,后面‘velocity’是自定义的名字,比如速度,然后后面跟速度的三个分量

5,‘scalars’定义数值,后面引号中自定义名字,比如压强和密度等

6,向量和数值最后在paraview中都有对应的显示方式。


将生成的vtk文件拖进paraview就可以在Representation中选择Point Gaussian。

 在Coloring中选择要显示的数据


 

二、显示向量

 1、选择菜单中filter->Alphabetical->Glyph

或者点下面

/2、设置你要显示的向量

 

posted @ 2019-04-12 22:35  大蓝鲸  阅读(4414)  评论(0编辑  收藏  举报