我对使用.vtu文件真的很陌生,我需要从解决方案中的一些数组中提取网格数据和数据,将它们存储在两个.npy文件中,一个用于网格,一个用于变量,然后继续进行一些后处理。 虽然我能够从网格中提取点,从数组中提取单元数据,并在numpy数组中进行转换,但我不知道如何将单元数据转换为点数据。
Here is my code:
reader = vtk.vtkXMLUnstructuredGridReader()
reader.SetFileName("myfile.vtu")
reader.Update()
# Get the coordinates of nodes in the mesh
nodes_vtk_array= reader.GetOutput().GetPoints().GetData()
OH_vtk_array = reader.GetOutput().GetCellData().GetArray('OH mass frac.')
#Get the coordinates of the nodes
nodes_nummpy_array = vtk_to_numpy(nodes_vtk_array)
x,y,z= nodes_nummpy_array[:,0] , nodes_nummpy_array[:,1] , nodes_nummpy_array[:,2]
OH_numpy_array = vtk_to_numpy(OH_vtk_array)
OH = OH_numpy_array
我希望有人能帮助我,即使这是个非常愚蠢的问题:)
非常感谢!!!