<?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 Re:Intel MKL _feast eigensolver problem in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Intel-MKL-feast-eigensolver-problem/m-p/1193898#M29790</link>
    <description>&lt;P&gt;how could we check the behaviour on our side?&lt;/P&gt;&lt;BR /&gt;</description>
    <pubDate>Tue, 21 Jul 2020 15:12:46 GMT</pubDate>
    <dc:creator>Gennady_F_Intel</dc:creator>
    <dc:date>2020-07-21T15:12:46Z</dc:date>
    <item>
      <title>Intel MKL _feast eigensolver problem</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Intel-MKL-feast-eigensolver-problem/m-p/1193808#M29789</link>
      <description>&lt;P&gt;Hi community,&lt;/P&gt;
&lt;P&gt;I'm tring to use the zfeast_hcsrgv solver to solve a generalized eigenvalue problem of the following format:&lt;/P&gt;
&lt;P&gt;M*v = lambda*B*v&lt;/P&gt;
&lt;P&gt;where M is a hermitian matrix.&lt;/P&gt;
&lt;P&gt;The problem I'm solving is finding the electromagnetic eigenmodes using finite difference method. As for the simplest case in vacuum, the matrix M is a sparse one and B is a diagonal with constant diagonal entries in it.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Suppose the mesh size of the calculation domain is N by N by N, and therefore the size of matrices M and B is&amp;nbsp; N^3 by N^3. At the beginning I used a small mesh size, and I could run the zfeast solver and get correct results. However, when I used a finer mesh, the solver exited with the following message:&lt;/P&gt;
&lt;P&gt;Intel MKL Extended Eigensolver WARNING: No eigenvalue has been found in the proposed search interval.&lt;/P&gt;
&lt;P&gt;INFO code =: 1&lt;/P&gt;
&lt;P&gt;Essentially, by using a finer mesh, the mesh size N is increased and so is the matrice size. In addition, the non-zero elements in M is inversely proportional to mesh size, thus a finer mesh makes the non-zeros in M larger. The non-zeros in B is unchanged.&lt;/P&gt;
&lt;P&gt;Based on this, I suspect that the failure of the eigensolver is due to the large difference in magnitude order between non-zero elements in M and B. I tried to scale the eigenvalue problem by divide a scale factor to M, but either the solver still fails, or it takes forever to complete the iteration.&lt;/P&gt;
&lt;P&gt;Could anyone give me any suggestions on how to fix this problem? Any kind of feedback would be greatly appreciated.&lt;/P&gt;
&lt;P&gt;Thanks in advance!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sincerely,&lt;/P&gt;
&lt;P&gt;Boyuan&lt;/P&gt;</description>
      <pubDate>Tue, 21 Jul 2020 05:54:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Intel-MKL-feast-eigensolver-problem/m-p/1193808#M29789</guid>
      <dc:creator>zhang__boyuan</dc:creator>
      <dc:date>2020-07-21T05:54:46Z</dc:date>
    </item>
    <item>
      <title>Re:Intel MKL _feast eigensolver problem</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Intel-MKL-feast-eigensolver-problem/m-p/1193898#M29790</link>
      <description>&lt;P&gt;how could we check the behaviour on our side?&lt;/P&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 21 Jul 2020 15:12:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Intel-MKL-feast-eigensolver-problem/m-p/1193898#M29790</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2020-07-21T15:12:46Z</dc:date>
    </item>
    <item>
      <title>Re: Re:Intel MKL _feast eigensolver problem</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Intel-MKL-feast-eigensolver-problem/m-p/1194002#M29791</link>
      <description>&lt;P&gt;Hi Gennady,&lt;/P&gt;
&lt;P&gt;Thanks for the reply. My code for generating the M matrix is pretty long, so I attached the data files instead.&lt;/P&gt;
&lt;P&gt;The mesh_20 file is the case where the mesh size is 20 by 20 by 20, while the mesh_25 case is with mesh size 25 by 25 by 25.&lt;/P&gt;
&lt;P&gt;In both cases, B.dat , B_ iIndex.dat, B_ jIndex.dat are the non-zero entries, their row indices and their column indices in matrix B, respectively.&lt;/P&gt;
&lt;P&gt;M_real.dat, M_imag.dat, M_iIndex.dat, M_ jIndex.dat are the real part and imaginary part of the non-zero entries, their row indices and their column indices in matrix M, respectively.&lt;/P&gt;
&lt;P&gt;For the mesh_20 case, I can get the correct eigenvalues, which is shown in the figure below:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Eigen modes.png" style="width: 561px;"&gt;&lt;img src="https://community.intel.com/t5/image/serverpage/image-id/11348iD11C69686F0A008A/image-size/large/is-moderation-mode/true?v=v2&amp;amp;px=999&amp;amp;whitelist-exif-data=Orientation%2CResolution%2COriginalDefaultFinalSize%2CCopyright" role="button" title="Eigen modes.png" alt="Eigen modes.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;The input search range for the eigenvalues is [4*pi*pi*1e14, 4*pi*pi*2e16], and the input number of eigenmodes M0 = 200. The input parameter vector fpm is set as:&lt;/P&gt;
&lt;P&gt;fpm[0] = 1;&lt;BR /&gt;fpm[1] = 8;&lt;BR /&gt;fpm[2] = 12;&lt;BR /&gt;fpm[3] = 20;&lt;BR /&gt;fpm[6] = 5;&lt;BR /&gt;fpm[26] = 1;&lt;BR /&gt;fpm[27] = 1;&lt;/P&gt;
&lt;P&gt;with other elements being 0.&lt;/P&gt;
&lt;P&gt;The matrix type is 'full'. The size of the matrix is nsize = 3*20*20*20 in the mesh_20 case, and nsize = 3*25*25*25 in the mesh_25 case.&lt;/P&gt;
&lt;P&gt;With the same input parameters (except nsize), the zfeast_hcsrgv in the mesh_25 case exits almost instantaneously with no eigenvalues can be found in the search interval warning message.&lt;/P&gt;
&lt;P&gt;Please let me know if there is any other information you need to reproduce these two cases.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best regards,&lt;/P&gt;
&lt;P&gt;Boyuan&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jul 2020 04:33:50 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Intel-MKL-feast-eigensolver-problem/m-p/1194002#M29791</guid>
      <dc:creator>zhang__boyuan</dc:creator>
      <dc:date>2020-07-22T04:33:50Z</dc:date>
    </item>
  </channel>
</rss>

