非方阵左除矩阵结果是如何获得的?。
4 views (last 30 days)
Show older comments
矩阵I与B为同行数矩阵,但是都不是方阵,那么下式的w(:,1)结果是如何求得呢?对于求解过程不明白。
I=[1,2,3;
4,5,6
7,8,9
3,2,6];
B=[1,4
1,3
1,7
1,9]
w = zeros(2, 3);
w(:,1)=B\I(:,1);
0 Comments
Accepted Answer
kanouo
on 14 May 2023
涉及到使用奇异值分解计算伪逆矩阵,具体推导证明自己去查线性代数相关教材。
过程就是先奇异值分解,[ U, S, V ] = svd( B );
再求算伪逆矩阵 PinvB = V * spdiags( diag( S ).^( -1 ), 0, Columns, Rows ) * U'; % Rows = size( B, 1 ); Columns = size( B, 2 );
于是 w_2 = PinvB * I( :, 1 ); 与左除 w_1 = B \ I( :, 1 ); 两者一致(具体计算出的w_1 与 w_2 会有些微的浮点误差)
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!