小编K J*_*son的帖子

LinAlgError:数组的最后2个维度必须是正方形

我需要为x 解决一组形式为A x = B的联立方程.我使用了numpy.linalg.solve函数,输入A和B,但是我得到错误'LinAlgError:数组的最后2个维必须是正方形'.我该如何解决?

这是我的代码:

A = matrix([[v1x, v2x], [v1y, v2y], [v1z, v2z]])
print A

B = [(p2x-p1x-nmag[0]), (p2y-p1y-nmag[1]), (p2z-p1z-nmag[2])]
print B

x = numpy.linalg.solve(A, B)
Run Code Online (Sandbox Code Playgroud)

矩阵/向量的值在代码中先前计算,这很好,但值是:

A =

(-0.56666301, -0.52472909)
(0.44034147, 0.46768087)
(0.69641397,  0.71129036)
Run Code Online (Sandbox Code Playgroud)

B =

(-0.38038602567630364, -24.092279373295057, 0.0)
Run Code Online (Sandbox Code Playgroud)

x应该具有形式(x1,x2,0)

python numpy linear-algebra

8
推荐指数
2
解决办法
2万
查看次数

标签 统计

linear-algebra ×1

numpy ×1

python ×1