非方阵左除矩阵结果是如何获得的?。

4 ビュー (過去 30 日間)
goriae
goriae 2023 年 5 月 14 日
回答済み: kanouo 2023 年 5 月 14 日
矩阵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);

採用された回答

kanouo
kanouo 2023 年 5 月 14 日
涉及到使用奇异值分解计算伪逆矩阵,具体推导证明自己去查线性代数相关教材。
过程就是先奇异值分解,[ 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 件)

カテゴリ

Help Center および File Exchange线性代数 についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!