<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic inversion of sparse complex matrix  in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812007#M4023</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;

&lt;P&gt;You can define
many rhs in the same way that I described upper and use dss function
dss_solve_complex. By the way Y=Y1*inv(Y2)*Y3 seems like Schur complimented.
Are you really need to have this matrix or you need to multiply it on some
vector only? Ive asked it because inverse of sparse matrix is dense and will calculate
really long time. But if you need to multiply matrix Y on some vector only you
can do it in next way:&lt;/P&gt;&lt;P&gt;x=Yr=Y1*inv(Y2)*Y3*r;&lt;/P&gt;&lt;P&gt;x1=Y3*r; //calculated
by mkl_ccsrgemv&lt;/P&gt;

&lt;P&gt;x2= inv(Y2)*x1;
//x2 is solution of system Y2*x2=x1, calculated by PARDISO/DSS&lt;/P&gt;

&lt;P&gt;x = Y1*x3 // calculated
by mkl_ccsrgemv&lt;/P&gt;

&lt;P&gt;With best regards,&lt;/P&gt;

&lt;P&gt;Alexander Kalinkin&lt;/P&gt;&lt;BR /&gt;</description>
    <pubDate>Tue, 01 Feb 2011 04:11:46 GMT</pubDate>
    <dc:creator>Alexander_K_Intel2</dc:creator>
    <dc:date>2011-02-01T04:11:46Z</dc:date>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812002#M4018</link>
      <description>Is it possible to invert a&lt;SPAN style="text-decoration: underline;"&gt;&lt;B&gt; sparse complex&lt;/B&gt;&lt;/SPAN&gt; matrix with MKL using C?&lt;DIV&gt;I have foundcsytri( uplo, n, a, lda, ipiv, work, info ) in LAPACK, but I guess it is not supposed toworkwith sparse matrices and also in C.&lt;/DIV&gt;&lt;DIV&gt;Thanks for your help&lt;/DIV&gt;</description>
      <pubDate>Mon, 31 Jan 2011 18:23:30 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812002#M4018</guid>
      <dc:creator>Vahid_Jalili</dc:creator>
      <dc:date>2011-01-31T18:23:30Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812003#M4019</link>
      <description>Hi,&lt;DIV&gt;You can use PARDISO with n rhs, where n is size of matrix. If you set rhs in next way:&lt;/DIV&gt;&lt;DIV&gt;rhs_i&lt;I&gt;=1;&lt;/I&gt;&lt;/DIV&gt;&lt;DIV&gt;rhs_i&lt;J&gt;=0 i&amp;lt;&amp;gt;j;&lt;/J&gt;&lt;/DIV&gt;&lt;DIV&gt;then solution vector will store inverse matrix.&lt;/DIV&gt;&lt;DIV&gt;With best regards,&lt;/DIV&gt;&lt;DIV&gt;Alexander Kalinkin&lt;/DIV&gt;</description>
      <pubDate>Mon, 31 Jan 2011 18:47:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812003#M4019</guid>
      <dc:creator>Alexander_K_Intel2</dc:creator>
      <dc:date>2011-01-31T18:47:51Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812004#M4020</link>
      <description>Needless to say, the inverse is no longer sparse, so inverting a sparse matrix is expensive in storage and time, and very inefficient if the aim is to solve a system of equations.</description>
      <pubDate>Mon, 31 Jan 2011 20:16:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812004#M4020</guid>
      <dc:creator>TimP</dc:creator>
      <dc:date>2011-01-31T20:16:42Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812005#M4021</link>
      <description>I want to have the result of multiplication of 3 complex matrices as: Y1*inv(Y2)*Y3&lt;DIV&gt;So, I don't want to solve a system. Y1 (mxn), Y2 (nxn) and Y3 (nxm) are very large and heavily sparse. Do you have any suggestion for me how to make it with MKL routines?&lt;/DIV&gt;</description>
      <pubDate>Mon, 31 Jan 2011 20:59:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812005#M4021</guid>
      <dc:creator>Vahid_Jalili</dc:creator>
      <dc:date>2011-01-31T20:59:04Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812006#M4022</link>
      <description>Alexander, thanks for your help.&lt;DIV&gt;Do you know if I can do this with DSS routines instead of PARDISO? Is it possible to define rhs as an I matrix in DSS routines?!&lt;/DIV&gt;</description>
      <pubDate>Mon, 31 Jan 2011 21:17:04 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812006#M4022</guid>
      <dc:creator>Vahid_Jalili</dc:creator>
      <dc:date>2011-01-31T21:17:04Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812007#M4023</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;

&lt;P&gt;You can define
many rhs in the same way that I described upper and use dss function
dss_solve_complex. By the way Y=Y1*inv(Y2)*Y3 seems like Schur complimented.
Are you really need to have this matrix or you need to multiply it on some
vector only? Ive asked it because inverse of sparse matrix is dense and will calculate
really long time. But if you need to multiply matrix Y on some vector only you
can do it in next way:&lt;/P&gt;&lt;P&gt;x=Yr=Y1*inv(Y2)*Y3*r;&lt;/P&gt;&lt;P&gt;x1=Y3*r; //calculated
by mkl_ccsrgemv&lt;/P&gt;

&lt;P&gt;x2= inv(Y2)*x1;
//x2 is solution of system Y2*x2=x1, calculated by PARDISO/DSS&lt;/P&gt;

&lt;P&gt;x = Y1*x3 // calculated
by mkl_ccsrgemv&lt;/P&gt;

&lt;P&gt;With best regards,&lt;/P&gt;

&lt;P&gt;Alexander Kalinkin&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 01 Feb 2011 04:11:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812007#M4023</guid>
      <dc:creator>Alexander_K_Intel2</dc:creator>
      <dc:date>2011-02-01T04:11:46Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812008#M4024</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;DIV style="text-align: left;"&gt;&lt;BR /&gt;Needless to say, the inverse is no longer sparse, so inverting a sparse 
matrix is expensive in storage and time, and very inefficient if the aim
 is to solve a system of equations.&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;Not necessarily! Of course solving an equation using inverting the coefficient matrix is not a good idea in general, no matter the matrix is sparse or dense or what format has been used, but inversion is really needed in for example electromagnetic analysis and/or graphical calculations. Besides, in many cases, the inversion of a non-singular sparse matrix will still be sparse. Using PARDISO seems to be the only reasonable way, but if the storage of your sparse matrix won't exceed the peak usage of the memory, so it may be better to simply store the data in dense format and invert it.&lt;BR /&gt;&lt;BR /&gt;Good luck,&lt;BR /&gt;&lt;BR /&gt;D.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 24 Feb 2011 14:19:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812008#M4024</guid>
      <dc:creator>Dan4</dc:creator>
      <dc:date>2011-02-24T14:19:01Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812009#M4025</link>
      <description>&lt;P&gt;HI,&lt;/P&gt;

&lt;P&gt;I agree
that inverse of sparse matrix could be sparse but PARDISO package doesnt take it
into account. Briefly, PARDISO calculate each column of inverse matrix by
setting rhs as correspondent column of unit matrix. So size of each column of
inverse matrix is N and size of inverse matrix is NxN, where N is size of
initial matrix. Hence the size of the matrix is equal to the size of a dense
one even though the inverse matrix contains a lot of zeros.&lt;/P&gt;&lt;P&gt;With best regards,&lt;/P&gt;&lt;P&gt;Alexander Kalinkin&lt;/P&gt;</description>
      <pubDate>Thu, 24 Feb 2011 17:51:07 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812009#M4025</guid>
      <dc:creator>Alexander_K_Intel2</dc:creator>
      <dc:date>2011-02-24T17:51:07Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812010#M4026</link>
      <description>&lt;DIV&gt;&lt;BR /&gt;That's true! That's why the output matrix has always been assumed to be dense. However, there are algorithms tailored for inverting sparse matrices that I didn't find in MKL, like Fast Inverse using Nested Dissection (FIND).&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;&lt;BR /&gt;Dan&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;</description>
      <pubDate>Fri, 25 Feb 2011 14:30:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812010#M4026</guid>
      <dc:creator>Dan4</dc:creator>
      <dc:date>2011-02-25T14:30:49Z</dc:date>
    </item>
    <item>
      <title>inversion of sparse complex matrix</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812011#M4027</link>
      <description>that's also true. -:). there is no similar functionality into the current version.</description>
      <pubDate>Sat, 26 Feb 2011 05:44:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/inversion-of-sparse-complex-matrix/m-p/812011#M4027</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2011-02-26T05:44:45Z</dc:date>
    </item>
  </channel>
</rss>

