如何组织此mayavi代码以加快速度?

时间:2019-06-16 09:16:27

标签: python-3.x numpy mayavi

我正在为我的物理项目编写脚本。我的代码运行了18个小时,并显示了矢量场。

xyz是坐标矩阵,而cef是包含数百万个向量的矩阵。

我尝试设置遮罩点,但是没有用。

vectors=mlab.pipeline.vector_field(x, y, z, c, e, f)

mlab.pipeline.vectors(vectors, mask_points = 100, scale_factor = 0.5, 
                          mode = "arrow", resolution = 8, line_width = 3)

mlab.show()

有人知道加快执行速度的方法吗?

1 个答案:

答案 0 :(得分:0)

如何从所有字段的一小部分开始,以查看执行时间如何随给定的数据量扩展?您将看到类似的东西:

eachX = 100
eachY = 200
eachZ = 50
vectors = mlab.pipeline.vector_field(x[::eachX, ::eachY, ::eachZ],
                                     y[::eachX, ::eachY, ::eachZ],
                                     z[::eachX, ::eachY, ::eachZ],
                                     c[::eachX, ::eachY, ::eachZ],
                                     e[::eachX, ::eachY, ::eachZ],
                                     f[::eachX, ::eachY, ::eachZ])