<?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 Since m is an output variable in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSBGVX-documentation-ifail-dimension-is-n/m-p/959538#M15792</link>
    <description>&lt;P&gt;Since m is an output variable, its value is not known before the subroutine ?sbgvx is called except in the special case where only a subset of the eigenvalues are being sought and their count is already known before the call. It is impossible to declare an array with an unknown size (at compile time) unless one is using allocatable arrays, which we are not doing here. Therefore, the array &lt;STRONG&gt;ifail&lt;/STRONG&gt; must be declared with dimension &lt;STRONG&gt;n&lt;/STRONG&gt;. The MKL manual states in the &lt;EM&gt;output&lt;/EM&gt; section what the &lt;EM&gt;contents&lt;/EM&gt; of locations 1:m of the array are, but the caller must allocate the array to be sufficiently large in order to cover all eventualities.&lt;/P&gt;</description>
    <pubDate>Tue, 25 Mar 2014 13:44:00 GMT</pubDate>
    <dc:creator>mecej4</dc:creator>
    <dc:date>2014-03-25T13:44:00Z</dc:date>
    <item>
      <title>DSBGVX documentation: ifail dimension is n?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSBGVX-documentation-ifail-dimension-is-n/m-p/959537#M15791</link>
      <description>&lt;P&gt;dsbgvx kept crashing on me with an access violation for large enough problems (n=3636). I am compiling for an x64 target.&lt;/P&gt;

&lt;P&gt;Meticulously studying the manual, &lt;A href="http://software.intel.com/sites/products/documentation/hpc/mkl/mklman/index.htm#GUID-659297EE-D35B-428C-ABBE-1A7EBE2B0F6E"&gt;http://software.intel.com/sites/products/documentation/hpc/mkl/mklman/index.htm#GUID-659297EE-D35B-428C-ABBE-1A7EBE2B0F6E&lt;/A&gt;, I noticed that the dimension of ifail is m for dsbgvx, and n for sbgvx.&lt;/P&gt;

&lt;P&gt;Allocating n integers for ifail, dsbgvx stops crashing.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;Another peculiarity is that dsbgvx does not crash on me while compiled for an Win32 target.&lt;/P&gt;

&lt;P&gt;Questions:&lt;/P&gt;

&lt;P&gt;I am selecting only m out of n eigenvalues. The information I aim for should fit in w(1:m) and z(1:n,1:m), as discussed in the Fortran 95 interface of e.g. ?stein. So, is w(n) and z(n,n) really required in dsbgvx?&lt;/P&gt;

&lt;P&gt;Now that ifail(n) works and ifail(m) fails, should the manual read that the dimension of ifail must be n? And if so, why do w(m), z(n,m) and ifail(m) work for Win32 targets?&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 25 Mar 2014 12:51:39 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSBGVX-documentation-ifail-dimension-is-n/m-p/959537#M15791</guid>
      <dc:creator>martenjan</dc:creator>
      <dc:date>2014-03-25T12:51:39Z</dc:date>
    </item>
    <item>
      <title>Since m is an output variable</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSBGVX-documentation-ifail-dimension-is-n/m-p/959538#M15792</link>
      <description>&lt;P&gt;Since m is an output variable, its value is not known before the subroutine ?sbgvx is called except in the special case where only a subset of the eigenvalues are being sought and their count is already known before the call. It is impossible to declare an array with an unknown size (at compile time) unless one is using allocatable arrays, which we are not doing here. Therefore, the array &lt;STRONG&gt;ifail&lt;/STRONG&gt; must be declared with dimension &lt;STRONG&gt;n&lt;/STRONG&gt;. The MKL manual states in the &lt;EM&gt;output&lt;/EM&gt; section what the &lt;EM&gt;contents&lt;/EM&gt; of locations 1:m of the array are, but the caller must allocate the array to be sufficiently large in order to cover all eventualities.&lt;/P&gt;</description>
      <pubDate>Tue, 25 Mar 2014 13:44:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSBGVX-documentation-ifail-dimension-is-n/m-p/959538#M15792</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2014-03-25T13:44:00Z</dc:date>
    </item>
    <item>
      <title>Thanks, this makes it very</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSBGVX-documentation-ifail-dimension-is-n/m-p/959539#M15793</link>
      <description>&lt;P&gt;Thanks, this makes it very clear.&lt;/P&gt;

&lt;P&gt;That also explains why z(n,n) is required.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 26 Mar 2014 13:55:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/DSBGVX-documentation-ifail-dimension-is-n/m-p/959539#M15793</guid>
      <dc:creator>martenjan</dc:creator>
      <dc:date>2014-03-26T13:55:49Z</dc:date>
    </item>
  </channel>
</rss>

