1、初等变换法
求元索为具体数字的矩阵的逆矩阵,常用初等变换法‘如果A可逆,则A’可通过初等变换,化为单位矩阵 I
用A的逆右乘上式两端,得:
可以看到当A通过初等变换化为单位处阵的同时,对单位矩阵I作同样的初等变换,就化为A的逆矩阵。
2、伴随矩阵法:
此方法求逆知阵,对于小型矩阵,特别是二阶方阵求逆既方便、快阵,又有规律可循。因为二阶可逆矩阵的伴随矩阵,只需要将主对角线元素的位置互换,次对角线的元索变号即可。
扩展资料:
三角矩阵的性质:
1、由于带三角矩阵的矩阵方程容易求解,在解多元线性方程组时,总是将其系数矩阵通过初等变换化为三角矩阵来求解;
2、又如三角矩阵的行列式就是其对角线上元素的乘积,很容易计算。
3、一个所有顺序主子式不为零的可逆矩阵A可以通过LU分解变成一个下三角矩阵L与一个上三角矩阵U的乘积。
下三角矩阵的逆矩阵:
将下三角矩阵划分成块矩阵,如上图所示,则其逆矩阵结果如下图。
扩展资料
下三角矩阵的定义:
若矩阵L具有下列形式:
则称为下三角矩阵
若矩阵U具有下列形式:
则称为上三角矩阵。
许多矩阵运算保持下三角性不变:
1、两个下三角矩阵的和下三角。
2、两个下三角矩阵的乘积是下三角。
3、一个可逆的下三角矩阵的逆是下三角。
4、下三角矩阵与常数相乘是一个下三角矩阵。
以上性质对上三角矩阵也成立。
下面给出一个C语言的算法实现:
public static double[] luEvaluate(double[][] L, double[][] U, double[] b)
{
// Ax = b -> LUx = b. Then y is defined to be Ux
double[] x = new double[b.Length];
double[] y = new double[b.Length];
// Forward solve Ly = b
for (int i = 0; i < b.Length; i++)
{
y[i] = b[i];
for (int j = 0; j < i; j++) {
y[i] -= L[i][j] * y[j];
}
y[i] /= L[i][i];
}
// Backward solve Ux = y
for (int i = b.Length - 1; i >= 0; i--)
{
x[i] = y[i];
for (int j = i + 1; j < n; j++) {
x[i] -= U[i][j] * x[j];
}
x[i] /= U[i][i];
}
return x;
}
下三角矩阵的逆矩阵:
将下三角矩阵划分成块矩阵,如上图所示,则其逆矩阵结果如下图。
下三角矩阵函数:
tril(A,k)%求矩阵A的第K条对角线以下的元素。
例如:
tril(ones(3,3),0)
ans =
1 0 0
1 1 0
1 1 1
>> triu(ones(3,3),0)
ans =
1 1 1
0 1 1
0 0 1
1、伴随矩阵的方法(如果不嫌麻烦)
2、初等行变换法(这个很简单吧,一下就写出来了)
3、解方程组,如AX=Y,则x=A^-1Y,需要构造向量X和Y,比较难
针对下三角形通常就这些方法了如果是比较特殊的矩阵,比如稀疏的下三角矩阵等,还可以增加一种方法:
4、分块矩阵的方法 推荐方法2,(A|E)——>(E|A^-1) 这里E是单位矩阵,工科常使用I表示认真求一两个矩阵,就可以找到规律了,以后就可以直接写出来.
到底应该怎么样去求逆矩阵才好呢?