Symmetric Sparse Inversion

Symmetric Sparse Inversion

Hi,

I am trying to find an inverse of a sparse matrix and then multiply it with another sparse matrix: A*inv(B). But I could not find any routine for making inverese of a sparse matrix. The only function that I found is inv() which I don not know is for sparse matrix or not and if it is  how can I input the sparse matrix.

Any help is appreciated. Thanks

4 post / 0 nuovi
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione

A and B are symetric and I'm using kernel library in FORTRAN. 

To get inv(B), you can solve the system B*inv(B)=I, where I is the identity matrix. You can use the MKL PARDISO direct sparse solver for this purpose. Learn more about MKL PARDISO from the documentation: http://software.intel.com/en-us/node/470282

Also, do you intend B as a sparse upper or lower triangular matrix? If so then it might be easier to use the "mkl_?csrsm" function. This can compute inv(B')*A, then take a transpose of the result to get what you need. See more about "mkl_?csrsm" here: http://software.intel.com/en-us/node/468602#D4C63016-4279-4E47-8ECA-DC04...

Vahid, what do you intend to do with the inverse, once you have found it?

This is an important question, and several articles exist wherein it is argued that, with a few exceptions, both efficiency and accuracy are sacrificed by forming the inverse explicitly.

Lascia un commento

Eseguire l'accesso per aggiungere un commento. Non siete membri? Iscriviti oggi