求解线性方程组
对于Ax=b
,已知A
和b
,怎么算出x
?
调用solve
方法直接求解:
还可以验证一下:
计算逆矩阵求解线性方程组
对于这样的线性方程组:
- x + y + z = 6
- 2y + 5z = -4
- 2x + 5y - z = 27
可以表示成矩阵的形式:
[ 1 1 1 0 2 5 2 5 − 1 ] [ x y z ] = [ 6 − 4 27 ] \left[\begin{array}{ccc} 1 & 1 & 1 \\ 0 & 2 & 5 \\ 2 & 5 & -1 \end{array}\right]\left[\begin{array}{l} x \\ y \\ z \end{array}\right]=\left[\begin{array}{c} 6 \\ -4 \\ 27 \end{array}\right] ⎣⎡10212515−1⎦⎤⎣⎡xyz⎦⎤=⎣⎡6−427⎦⎤
用公式可以表示为:Ax=b,其中A是矩阵,x和b都是列向量
- 逆矩阵(inverse matrix)的定义:
设A是数域上的一个n阶矩阵,若存在另一个n阶矩阵B,使得: AB=BA=E ,则我们称B是A的逆矩阵,而A则被称为可逆矩阵。注:E为单位矩阵。
- 使用逆矩阵求解线性方程组的方法:
两边都乘以 A − 1 A^{-1} A−1,变成 A − 1 A x = A − 1 b A^{-1}Ax=A^{-1}b A−1Ax=A−1b,因为任何矩阵乘以单位矩阵都是自身,所以 x = A − 1 b x = A^{-1}b x=A−1b
求解逆矩阵
np.linalg.inv()
方法就可以求解逆矩阵: