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

  • Post author:
  • Post category:其他


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

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

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

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。

1b1ee5fbd8eb0aa614d358a1ca76d939.png

在Coloring中选择要显示的数据

beba0f606790fa7df61def6ca34ba491.png

标签:输出,scalars,vtk,Matlab,rho,phase,Paraview

来源: https://www.cnblogs.com/dalanjing/p/10699097.html