I want to know that what is the efficient way to inverse a sparse matrix.

I want to implement this type of equation using sparse matrix.

$ \Sigma\ = \Omega^{-1}$ Here $ \Omega $ is a Sparse Matrix or it is efficient to say that $ \Omega $ is a band diagonal matrix whose diagonal and off diagonal element have some values and rest of the entries are zero.

My equation is

$ \mu = \Omega^{-1} \ Xi $

Now what is the efficient way to compute Matrix inverse?

  • 1
    $\begingroup$ It's rarely a good idea to form the inverse of a matrix $A$ explicitly. Usually you are solving $Ax = b$, and you want $x$ only. The best method for solving $Ax = b$ depends on what kind of sparsity pattern $A$ has. Special methods have been developed for banded matrices. This is discussed in Golub and Van Loan, for example. There is probably a library you can use that will do it for you. $\endgroup$ – littleO Sep 5 '18 at 1:03

In general there is no efficient way to invert a sparse matrix, since the inverse of a sparse matrix need not be sparse. But you have much more structure because your matrix is band diagonal. Moreover, based on my reading of your question, you only have a single off-diagonal band. In this case you don't need to actually an inverse of $\Omega$. You can just do backward substitution on $\Omega$ and it will be efficient.

See examples in https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/moler/lu.pdf if you need more help.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.