Faster inverse of a lower triangular matrix than inv(A)?

21 views (last 30 days)
Dear All,
I have a sparse lower triangular matrix A. I want to obtain the inverse of A. A has a size of 6000 X 6000. I find inv(A) takes more than 5 seconds. I do not know if there is a faster approach to get the inverse of A?
Thanks. Bei

Accepted Answer

Matt J
Matt J on 19 Oct 2018
Edited: Matt J on 19 Oct 2018
The reason I want to obtain the inverse of A is that I need to select a number of rows from inv(A) for further uses. I do not just solve Ax=b linear equation.
The two are almost the same thing:
B=speye(size(A));
rows = B(rowIndices,:)/A

More Answers (1)

Torsten
Torsten on 19 Oct 2018
See here
https://de.mathworks.com/matlabcentral/answers/332233-updating-inverse-of-a-lower-triangular-matrix
why it is a bad idea to invert a lower triangular matrix.
  1 Comment
Benson Gou
Benson Gou on 19 Oct 2018
Edited: Benson Gou on 19 Oct 2018
Thanks, Torsten.
The reason I want to obtain the inverse of A is that I need to select a number of rows from inv(A) for further uses. I do not just solve Ax=b linear equation.
I also used the idea of x=A\b to obtain the rows (800 rows) I want to select from inv(A). But it took more than 9 seconds.
Thank you, anyway.

Sign in to comment.

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!