MATLAB中求非方阵的广义逆矩阵

来源:互联网 发布:航班延误 知乎 编辑:程序博客网 时间:2024/04/27 17:10
如果不是方阵的话,会有个广义逆矩阵(伪逆),matlab里面用pinv()实现。
基本语法为X=pinv(A),X=pinv(A,tol),其中tol为误差,pinv为pseudo-inverse的缩写:max(size(A))*norm(A)*eps。函数返回一个与A的转置矩阵A' 同型的矩阵X,并且满足:AXA=A,XAX=X.此时,称矩阵X为矩阵A的伪逆,也称为广义逆矩阵。
  1. >> A=rand(2,3)
  2. A =
  3.     0.9572    0.8003    0.4218
  4.     0.4854    0.1419    0.9157
  5. >> B=pinv(A)
  6. B =
  7.     0.5985   -0.0838
  8.     0.7633   -0.5430
  9.    -0.4355    1.2206
  10. >> A*B*A
  11. ans =
  12.     0.9572    0.8003    0.4218
  13.     0.4854    0.1419    0.9157
复制代码