【问题标题】:A_inverse*A=Identity Matrix in Octave? [duplicate]A_inverse*A=Octave 中的恒等矩阵? [复制]
【发布时间】:2015-11-01 14:11:40
【问题描述】:

如果 A 是一个 nxn 矩阵,那么在八度音程中,pinv(A) 表示 A 的逆矩阵。 pinv(A)*A 然后应该产生单位矩阵 I(n)。但是下面的代码不起作用。

A=[ 1 2 3,
4 5 6,
7 8 9];

pinv(A)*A


0.83333   0.33333  -0.16667
0.33333   0.33333   0.33333
-0.16667   0.33333   0.83333

i=1,2,3 的对角元素 (pinv(A)*(A))[i,i] 甚至都不接近一。出了什么问题?

【问题讨论】:

  • 矩阵的伪逆(nxm维,n可能不等于m)是方阵逆的一般情况吗?如果是这样,上面的对角线元素应该接近1?或者对于两个矩阵 A,B,在 octave 中,是否有可能:ABB=B 即使 A 不是 B 的逆矩阵?

标签: matrix octave inverse


【解决方案1】:

尝试使用inv(A)函数,你会得到非常有用的信息:

 >> inv(A)
 warning: matrix singular to machine precision, rcond = 1.54198e-018

矩阵 A 不可逆!它是单一的。尝试更改矩阵 A:

>> A=[ 10 2 3; 4 5 6; 7 8 9]
A =
10    2    3
4    5    6
7    8    9
>> inv(A)*A
ans =
 1.00000   0.00000   0.00000
-0.00000   1.00000   0.00000
 0.00000   0.00000   1.00000
>> pinv(A)*A
ans =
 1.0000e+000  -2.2204e-016  -4.4409e-016
-1.7764e-015  1.0000e+000  -3.5527e-015
 5.3291e-015  5.3291e-015  1.0000e+000

【讨论】:

    【解决方案2】:

    pinv() 返回伪逆。

    Moore–Penrose pseudoinverse

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-22
      • 1970-01-01
      • 2021-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-11
      • 1970-01-01
      相关资源
      最近更新 更多