减少行梯形表格(rref)

时间:2015-02-24 15:59:57

标签: matlab linear-algebra numerical-methods

我发现Matlab中的rref通过patial pivoting进行高斯消除,例如,让A为5x9矩阵:

0.4898    0.2760    0.4984    0.7513    0.9593    0.8407    0.3500    0.3517    0.2858
0.4456    0.6797    0.9597    0.2551    0.5472    0.2543    0.1966    0.8308    0.7572
0.6463    0.6551    0.3404    0.5060    0.1386    0.8143    0.2511    0.5853    0.7537
0.7094    0.1626    0.5853    0.6991    0.1493    0.2435    0.6160    0.5497    0.3804
0.7547    0.1190    0.2238    0.8909    0.2575    0.9293    0.4733    0.9172    0.5678

rref(A)给出:

1.0000         0         0         0         0   10.9716   -6.2494   33.3062   16.0275
     0    1.0000         0         0         0   -2.2910    1.6003   -9.5889   -3.9001
     0         0    1.0000         0         0   -3.3952    1.8012   -6.8843   -3.4078
     0         0         0    1.0000         0   -8.3071    5.8617  -27.3981  -13.0805
     0         0         0         0    1.0000    4.2036   -2.4313   11.1545    5.2517

如何通过执行A的LU分解来获得与rref相同的结果? 我发现LU分解也可以通过部分旋转进行高斯消除。如何用LU替换代码rref? 在[L,U] = lu(A)之后要做的步骤是什么,以获得与上例的rref(A)相同的结果。

1 个答案:

答案 0 :(得分:0)

如果您假设 A (大小 nxm )是一个复合矩阵,例如 A =(A1 | A2) A1 a nxn 矩阵和 A2 a nx(mn)矩阵。

如果 A1 是可逆的,那么你可以写 R ,矩阵 A 精简行梯形表 >:

R = A1 ^ -1(A1 | A2)=(Id | A1 ^ -1 A2)

因此,您可以使用LU分解或直接多RHS求解器来计算 A1 ^ -1 A2