NumPy参考 >例行程序 >线性代数(numpy.linalg) > numpy.linalg.solve
numpy.linalg.
solve
(a,b )[源代码] ¶求解线性矩阵方程或线性标量方程组。
计算确定的(即满秩的)线性矩阵方程ax = b的“精确”解x。
系数矩阵。
普通或“因变量”值。
解决方案ax = b。返回的形状与b相同。
如果a为奇数或非正方形。
笔记
1.8.0版中的新功能。
广播规则适用,numpy.linalg
有关详细信息,请参阅文档。
解决方案是使用LAPACK例程计算的_gesv
。
一个必须是正方形满秩,并且即,所有的行(或者,等价地,列)必须是线性独立的; 如果都不正确,则使用
lstsq
最小二乘方的系统/方程式最佳“解”。
参考文献
G.Strang,“ 线性代数及其应用”,第二版,佛罗里达州奥兰多,Academic Press,Inc.,1980年,第5页。22
例子
解决方程组并:3 * x0 + x1 = 9
x0 + 2 * x1 = 8
>>> a = np.array([[3,1], [1,2]])
>>> b = np.array([9,8])
>>> x = np.linalg.solve(a, b)
>>> x
array([2., 3.])
检查解决方案是否正确:
>>> np.allclose(np.dot(a, x), b)
True