Numpy Toeplitz矩阵

时间:2014-01-17 19:34:30

标签: python numpy fortran cublas numba

我尝试使用scipy.linalg.toeplitz(c, r=None)在Python中构建一个toeplitz矩阵。虽然我成功了,但我无法维护Fortran订购。我需要确保构造的toeplitz数组保持Fortran排序,因为我正在调用BLAS函数。

我有办法做到这一点吗?

1 个答案:

答案 0 :(得分:1)

最简单的方法就是在Fortran订购中制作副本。 toeplitz创建一个新数组,但不会让您控制排序。

E.g。

x = scipy.linalg.toeplitz([1, 2, 3, 4])
x = np.asfortranarray(x)

如果您想节省内存,也可以就地执行此操作。 E.g。

x[:] = x.T
x = x.T