How can I get inverse matrix at 50 x 50 sparse matrix?
4 ビュー (過去 30 日間)
古いコメントを表示
Hello,
I have a square sparse matrix A (50 x 50), and I need to get the inverse matrix of A.
for example, at A x B = C, I know A and C so I have to know matrix B. So I have to get A's inverse matrix.
But if I use inv(A) at the code, every matrix element of inv(A) get 'inf'.
How could I get this inverse matrix? Do I have other method to get matrix B?
1 件のコメント
Bruno Luong
2024 年 10 月 18 日
Typically this happens when you try to solve on non invertible matrix. Small example
A=[1 2; 1 2]
inv(A)
B=rand(2);
C=A*B
B = A\C
回答 (1 件)
Walter Roberson
2024 年 10 月 18 日
If inv(A) is all inf then chances are that A is singular. You should check rank(A) before proceeding.
You should probably not be forming inv(A) explicitly. You should probably be using
B = A\C;
The \ operator will find a solution that minimizes the sum of squares
Note that the inverse of a sparse matrix is typically a dense matrix. But that isn't going to matter if you use the \ operator.
3 件のコメント
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!