<?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 Found another issue with a in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925591#M13347</link>
    <description>&lt;P&gt;Found another issue with a test case. Now, unfortunately this still doesn't resolve my issue but thought someone out there may have seen this:&lt;/P&gt;
&lt;P&gt;if A=[3 0 0 0; 0 0 0 0 ; 0 0 0 0; 0 0 0 5]&lt;/P&gt;
&lt;P&gt;then although the sparse feast output is 0, there is no output from the eigen-vectors or values. I've attached my code if someone wouldn't mind taking a look. I put a "while loop" in but I get the wrong eigen values and vectors although I get an output. The while-loop is in place of the if statement in my function to convert Dense2Csr. It is commented out.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;000&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;]&lt;/P&gt;</description>
    <pubDate>Wed, 11 Sep 2013 15:18:38 GMT</pubDate>
    <dc:creator>Aaron_M_</dc:creator>
    <dc:date>2013-09-11T15:18:38Z</dc:date>
    <item>
      <title>Sparse FEAST</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925585#M13341</link>
      <description>&lt;P&gt;Hi,&lt;BR /&gt;&lt;BR /&gt;I ran into an issue with the sparse FEAST implementation of "dfeast_scsrev" &amp;amp; "dfeast_scsrgv".&lt;BR /&gt;The actual matrix I need eigen-decomposed is of size 4096 x 4096. Here is a test case that &lt;BR /&gt;presents the same problem:&lt;BR /&gt;&lt;BR /&gt;A = [ 1 1 0&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1 0 0&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 0 0]&lt;BR /&gt;&lt;BR /&gt;In CSR format A is:&lt;BR /&gt;vals=(1, 1, 1)&lt;BR /&gt;rows=(1, 3, 4)&lt;BR /&gt;cols=(1, 2, 1).&lt;BR /&gt;&lt;BR /&gt;Now this does not take in to accoun the third row and column of all zeros. In fact, in CSR format&lt;BR /&gt;it is no different than:&lt;BR /&gt;&lt;BR /&gt;A'= [ 1 1 &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1 0].&lt;BR /&gt;&lt;BR /&gt;However, for my problem, I can't simply truncate the Hilbert space, it is imperative that I return&lt;BR /&gt;an eigenvalue of 0. The dense version of FEAST( dfeast_syev) can eigen-decompose both these matrices,&lt;BR /&gt;however, the sparse version can only do the latter, not the former. It just hangs. Please let me know&lt;BR /&gt;of any suggestions! Thank you!&lt;BR /&gt;&lt;BR /&gt;Here is the source code for the general version of Sparse: &lt;BR /&gt;Version: icc version 13.1.0 (gcc version 4.4.7 compatibility)&lt;BR /&gt;///////////Trial for Sparse General///////////&lt;BR /&gt;&lt;BR /&gt;#include &amp;lt;iostream&amp;gt;&lt;BR /&gt;#include &amp;lt;stdio.h&amp;gt;&lt;BR /&gt;#include &amp;lt;stdlib.h&amp;gt;&lt;BR /&gt;#include &amp;lt;mkl.h&amp;gt;&lt;BR /&gt;#include &amp;lt;vector&amp;gt;&lt;BR /&gt;#include &amp;lt;vector&amp;gt;&lt;BR /&gt;&lt;BR /&gt;using namespace std;&lt;BR /&gt;&lt;BR /&gt;void convertDense2CSR( double *A, int N, vector&amp;lt;double&amp;gt; &amp;amp;Values, vector&amp;lt;int&amp;gt; &amp;amp;Rows, vector&amp;lt;int&amp;gt; &amp;amp;Cols) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Convert matrix A (dense format) to CSR&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Values.clear();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rows.clear();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Cols.clear();&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int nnz = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int lastRow = -1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i=0; i&amp;lt;N; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int j=0; j&amp;lt;N; j++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (A[i*N+j] != 0) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Values.push_back( A[i*N+j] );&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Cols.push_back( j+1 );&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (i != lastRow) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rows.push_back( nnz+1 );&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nnz++;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lastRow = i;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rows.push_back( nnz+1 );&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;int main()&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; int N = 3;&lt;BR /&gt;&amp;nbsp; int i, j;&lt;BR /&gt;&amp;nbsp; double A[9] = {1, 1, 0, 1, 0, 0, 0, 0, 0};&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp; double B[9] = {1, 0, 0, 0, 1, 0, 0, 0, 1};&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf (" 'A: \n\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0; i&amp;lt;3; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (j=0; j&amp;lt;3; j++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("%12.4f", A[i*N+j]);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf (" B: \n\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0; i&amp;lt;3; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (j=0; j&amp;lt;3; j++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("%12.4f", B[i*N+j]);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; ////////////////////////////////&lt;BR /&gt;&amp;nbsp; /////////////FEAST//////////////&lt;BR /&gt;&amp;nbsp; ////////////////////////////////&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp; /* EIGEN-VALUE SYSTEM*/ &lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; int LDA = N;&lt;BR /&gt;&amp;nbsp; char UPLO = 'F';&lt;BR /&gt;&amp;nbsp; double Emin = -10.0, Emax = 10.0;&lt;BR /&gt;&amp;nbsp; int M0 = N;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; /* INPUT PARAMETERS FOR FEAST*/&lt;BR /&gt;&amp;nbsp; int feastparam[128];&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; /* OUTPUT VARIABLES FOR FEAST*/&lt;BR /&gt;&amp;nbsp; double&amp;nbsp; *E, *res, *X;&lt;BR /&gt;&amp;nbsp; double&amp;nbsp; epsout, trace;&lt;BR /&gt;&amp;nbsp; int&amp;nbsp; loop, info, M;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; /*Allocate memory for eigenvaluues. eigenvectors/residuals*/&lt;BR /&gt;&amp;nbsp; /* Note: I'm doing this differently than the example*/&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; E = (double *)calloc( M0*sizeof( double ), 64 );&amp;nbsp; //eigenvalues&lt;BR /&gt;&amp;nbsp; res = (double *)calloc( M0*sizeof( double ), 64 );&amp;nbsp; //residuals&lt;BR /&gt;&amp;nbsp; X = (double *)calloc( M0*M0*sizeof( double ), 64 ); //eigenvectors&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; /* !!!!!!!!!!!!! FEAST !!!!!!!!!!!!!!!!! */&lt;BR /&gt;&amp;nbsp; FEASTINIT(feastparam);&lt;BR /&gt;&amp;nbsp; feastparam[0] = 0; // change default value&lt;BR /&gt;&amp;nbsp; //feastparam[5] = 0; // change default value&lt;BR /&gt;&amp;nbsp; dfeast_syev( &amp;amp;UPLO, &amp;amp;N, A, &amp;amp;LDA, feastparam, &amp;amp;epsout, &amp;amp;loop, &amp;amp;Emin, &amp;amp;Emax, &amp;amp;M0, E, X, &amp;amp;M, res, &amp;amp;info ); &lt;BR /&gt;&amp;nbsp; ///*&lt;BR /&gt;&amp;nbsp; printf("\nReport using Dense version:\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(" Eigenvalues\n\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0; i&amp;lt;N; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("%12.5f \n", E&lt;I&gt;);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("\n");//*/&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ///*&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf (" 'X' Eigenvectors \n\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0; i&amp;lt;N; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (j=0; j&amp;lt;N; j++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("%12.4f", X[i*N+j]);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //*/&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("\nReport using General&amp;nbsp; Sparse version:\n");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //char UPLO = 'F';&lt;BR /&gt;&amp;nbsp; //double Emin = -10.0, Emax = 10.0;&lt;BR /&gt;&amp;nbsp; int M01 = N;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; /* INPUT PARAMETERS FOR FEAST*/&lt;BR /&gt;&amp;nbsp; //int feastparam[128];&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; /* OUTPUT VARIABLES FOR FEAST*/&lt;BR /&gt;&amp;nbsp; double&amp;nbsp; *E1, *res1, *X1;&lt;BR /&gt;&amp;nbsp; double&amp;nbsp; epsout1, trace1;&lt;BR /&gt;&amp;nbsp; int&amp;nbsp; loop1, info1, M1;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; /*Allocate memory for eigenvaluues. eigenvectors/residuals*/&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; vector&amp;lt;double&amp;gt; Values;&lt;BR /&gt;&amp;nbsp; vector&amp;lt;int&amp;gt;&amp;nbsp; Cols, Rows;&lt;BR /&gt;&amp;nbsp; vector&amp;lt;double&amp;gt; ValuesB;&lt;BR /&gt;&amp;nbsp; vector&amp;lt;int&amp;gt;&amp;nbsp; ColsB, RowsB;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; convertDense2CSR( A, N, Values, Rows, Cols );&lt;BR /&gt;&amp;nbsp; convertDense2CSR( B, N, ValuesB, RowsB, ColsB );&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; /*&lt;BR /&gt;&amp;nbsp; cout &amp;lt;&amp;lt; "Set CSR version of A.&amp;nbsp; We have, values: " &amp;lt;&amp;lt; endl;&lt;BR /&gt;&amp;nbsp; for (int i=0; i&amp;lt; Values.size(); i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;cout &amp;lt;&amp;lt; Values.at(i) &amp;lt;&amp;lt; "&amp;nbsp;&amp;nbsp; &amp;nbsp;";&lt;BR /&gt;&amp;nbsp; } cout &amp;lt;&amp;lt; endl;&lt;BR /&gt;&amp;nbsp; cout &amp;lt;&amp;lt; "We have, cols: " &amp;lt;&amp;lt; endl;&lt;BR /&gt;&amp;nbsp; for (int i=0; i&amp;lt; Cols.size(); i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;cout &amp;lt;&amp;lt; Cols.at(i) &amp;lt;&amp;lt; "&amp;nbsp;&amp;nbsp; &amp;nbsp;";&lt;BR /&gt;&amp;nbsp; } cout &amp;lt;&amp;lt; endl;&lt;BR /&gt;&amp;nbsp; cout &amp;lt;&amp;lt; "We have, rows: " &amp;lt;&amp;lt; endl;&lt;BR /&gt;&amp;nbsp; for (int i=0; i&amp;lt; Rows.size(); i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;cout &amp;lt;&amp;lt; Rows.at(i) &amp;lt;&amp;lt; "&amp;nbsp;&amp;nbsp; &amp;nbsp;";&lt;BR /&gt;&amp;nbsp; } cout &amp;lt;&amp;lt; endl;&lt;BR /&gt;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; E1 = (double *)calloc( M01*sizeof( double ), 64 );&amp;nbsp; //eigenvalues&lt;BR /&gt;&amp;nbsp; res1 = (double *)calloc( M01*sizeof( double ), 64 );&amp;nbsp; //residuals&lt;BR /&gt;&amp;nbsp; X1 = (double *)calloc( M01*M01*sizeof( double ), 64 ); //eigenvectors&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; /* !!!!!!!!!!!!! FEAST !!!!!!!!!!!!!!!!! */&lt;BR /&gt;&amp;nbsp; FEASTINIT(feastparam);&lt;BR /&gt;&amp;nbsp; feastparam[0] = 0; // change default value&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; printf("FEAST OUTPUT INFO %d \n",info);&lt;BR /&gt;&amp;nbsp; dfeast_scsrgv(&amp;amp;UPLO,&amp;amp;N,(&amp;amp;Values[0]),(&amp;amp;Rows[0]),(&amp;amp;Cols[0]),(&amp;amp;ValuesB[0]),(&amp;amp;RowsB[0]),(&amp;amp;ColsB[0]) ,feastparam,&amp;amp;epsout1,&amp;amp;loop1,&amp;amp;Emin,&amp;amp;Emax,&amp;amp;M01,E1,X1,&amp;amp;M1,res1,&amp;amp;info1);&lt;BR /&gt;&amp;nbsp; if ( info1 != 0 ){ return 1;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; printf(" EigenValues2: \n");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; for (i=0; i&amp;lt;N; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("%12.5f", E1&lt;I&gt;);&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp; printf("\n Eigenvector matrix X2: \n");&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; for (i=0; i&amp;lt;N; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (j=0; j&amp;lt;N; j++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf ("%12.4f", X1[j+i*N]);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("\n");&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;/I&gt;&lt;/I&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 09 Sep 2013 17:40:07 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925585#M13341</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-09T17:40:07Z</dc:date>
    </item>
    <item>
      <title>Aaron,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925586#M13342</link>
      <description>&lt;P&gt;Aaron,&lt;/P&gt;
&lt;P&gt;Thanks for your question. I'll do some investigation and let you know. For the time being, can you use dense FEAST (dfeast_syev) as workaround?&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 09 Sep 2013 17:58:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925586#M13342</guid>
      <dc:creator>Zhang_Z_Intel</dc:creator>
      <dc:date>2013-09-09T17:58:13Z</dc:date>
    </item>
    <item>
      <title>Zhang,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925587#M13343</link>
      <description>&lt;P&gt;Zhang,&lt;/P&gt;
&lt;P&gt;As of right now I am. But it is a huge bottleneck in my program, hence the allure of using the sparse version. My 4096x4096 is very sparse, it only has 600 non-zero elements in it, but it takes a few mins for the dense FEAST run. I was hoping that by using sparse I could shave that down to under a minute.&lt;/P&gt;
&lt;P&gt;Thanks for the reply,&lt;/P&gt;
&lt;P&gt;Aaron.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 09 Sep 2013 18:03:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925587#M13343</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-09T18:03:17Z</dc:date>
    </item>
    <item>
      <title>Aaron,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925588#M13344</link>
      <description>&lt;P&gt;Aaron,&lt;/P&gt;
&lt;P&gt;It turns out that there is an error in your CSR representation of A. CSR format stipulates that the length of 'rows' must be (&lt;EM&gt;number&lt;/EM&gt;&lt;EM&gt;_of_rows + 1&lt;/EM&gt;). So 'rows' should be {1, 3, 4, 4} in your code. I've changed the &lt;EM&gt;convertDense2CSR &lt;/EM&gt;routine accordingly and now your test code works fine. See below:&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;void convertDense2CSR( double *A, int N, vector&amp;lt;double&amp;gt; &amp;amp;Values, vector&amp;lt;int&amp;gt; &amp;amp;Rows, vector&amp;lt;int&amp;gt; &amp;amp;Cols) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Convert matrix A (dense format) to CSR&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Values.clear();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rows.clear();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Cols.clear();&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int nnz = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int lastRow = -1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i=0; i&amp;lt;N; i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int j=0; j&amp;lt;N; j++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (A[i*N+j] != 0) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Values.push_back( A[i*N+j] );&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Cols.push_back( j+1 );&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (i != lastRow) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rows.push_back( nnz+1 );&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nnz++;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lastRow = i;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rows.push_back( nnz+1 );&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;STRONG&gt; if (Rows.size() &amp;lt; N+1) {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rows.push_back( nnz+1 );&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/STRONG&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 10 Sep 2013 18:05:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925588#M13344</guid>
      <dc:creator>Zhang_Z_Intel</dc:creator>
      <dc:date>2013-09-10T18:05:26Z</dc:date>
    </item>
    <item>
      <title>Zhang,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925589#M13345</link>
      <description>&lt;P&gt;Zhang,&lt;/P&gt;
&lt;P&gt;Thanks so much for the help. I actually have tried to implement this into another code, with a matrix of size 64x64. Now instead of hanging, I get an info output of -4. There isn't any documentation on that and it isn't listed as one of the errors. Any suggestions?&lt;/P&gt;
&lt;P&gt;Aaron.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 11 Sep 2013 13:28:16 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925589#M13345</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-11T13:28:16Z</dc:date>
    </item>
    <item>
      <title>Zhang,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925590#M13346</link>
      <description>&lt;P&gt;Zhang,&lt;/P&gt;
&lt;P&gt;Thanks so much for the help! I've tried implementing the change in a larger state space, 64x64 matrix. The FEAST info output is -4. That is not listed in the documentation and was wondering if you had seen something like that before?&lt;/P&gt;
&lt;P&gt;Aaron.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 11 Sep 2013 13:33:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925590#M13346</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-11T13:33:17Z</dc:date>
    </item>
    <item>
      <title>Found another issue with a</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925591#M13347</link>
      <description>&lt;P&gt;Found another issue with a test case. Now, unfortunately this still doesn't resolve my issue but thought someone out there may have seen this:&lt;/P&gt;
&lt;P&gt;if A=[3 0 0 0; 0 0 0 0 ; 0 0 0 0; 0 0 0 5]&lt;/P&gt;
&lt;P&gt;then although the sparse feast output is 0, there is no output from the eigen-vectors or values. I've attached my code if someone wouldn't mind taking a look. I put a "while loop" in but I get the wrong eigen values and vectors although I get an output. The while-loop is in place of the if statement in my function to convert Dense2Csr. It is commented out.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;000&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;]&lt;/P&gt;</description>
      <pubDate>Wed, 11 Sep 2013 15:18:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925591#M13347</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-11T15:18:38Z</dc:date>
    </item>
    <item>
      <title>Aaron,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925592#M13348</link>
      <description>&lt;P&gt;Aaron,&lt;/P&gt;
&lt;P&gt;Please attach your test code for the case A=[3 0 0 0; 0 0 0 0 ; 0 0 0 0; 0 0 0 5]. Thanks!&lt;/P&gt;</description>
      <pubDate>Wed, 11 Sep 2013 16:28:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925592#M13348</guid>
      <dc:creator>Zhang_Z_Intel</dc:creator>
      <dc:date>2013-09-11T16:28:51Z</dc:date>
    </item>
    <item>
      <title>Here they are. The first one</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925593#M13349</link>
      <description>&lt;P&gt;Here they are. The first one "sparse2" is the 4 x 4. The second one is a 64 x 64.&lt;/P&gt;</description>
      <pubDate>Wed, 11 Sep 2013 16:34:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925593#M13349</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-11T16:34:19Z</dc:date>
    </item>
    <item>
      <title>Figured it out! Used the</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925594#M13350</link>
      <description>&lt;P&gt;Figured it out! Used the mklddnscsr function instead of use my own. It works like a charm! Thanks guys!&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Aaron.&lt;/P&gt;</description>
      <pubDate>Wed, 11 Sep 2013 20:49:48 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925594#M13350</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-11T20:49:48Z</dc:date>
    </item>
    <item>
      <title>Quote:Aaron M. wrote:</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925595#M13351</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Aaron M. wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Figured it out! Used the mklddnscsr function instead of use my own. It works like a charm! Thanks guys!&lt;/P&gt;
&lt;P&gt;Aaron.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;
&lt;P&gt;Fantastic! Thank you for letting us know.&lt;/P&gt;</description>
      <pubDate>Thu, 12 Sep 2013 16:38:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925595#M13351</guid>
      <dc:creator>Zhang_Z_Intel</dc:creator>
      <dc:date>2013-09-12T16:38:15Z</dc:date>
    </item>
    <item>
      <title>Quick question:</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925596#M13352</link>
      <description>&lt;P&gt;Quick question:&lt;/P&gt;
&lt;P&gt;I have two implementations of FEAST(dense and sparse) of a 4096x4096 matrix. The dense version works great, the sparse version has an output that I attached. It can't be because the data set is too large because the dense version works, and the mklddncsr works great too. Any ideas??&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Sep 2013 20:46:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925596#M13352</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-16T20:46:38Z</dc:date>
    </item>
    <item>
      <title>Aaron,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925597#M13353</link>
      <description>&lt;P&gt;Aaron,&lt;/P&gt;
&lt;P&gt;How many OpenMP threads did you specify when you ran the sparse FEAST? How big is the memory on your system?&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Sep 2013 16:00:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925597#M13353</guid>
      <dc:creator>Zhang_Z_Intel</dc:creator>
      <dc:date>2013-09-17T16:00:33Z</dc:date>
    </item>
    <item>
      <title>Memory is 192GB.</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925598#M13354</link>
      <description>&lt;P&gt;Memory is 192GB.&lt;/P&gt;
&lt;P&gt;OMP_NUM_THREADS is 16.&lt;/P&gt;
&lt;P&gt;Initially I thought that there just wasn't enough memory, but it doesn't seem to be a problem with dense FEAST.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Sep 2013 17:33:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925598#M13354</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-17T17:33:44Z</dc:date>
    </item>
    <item>
      <title>Aaron,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925599#M13355</link>
      <description>&lt;P&gt;Aaron,&lt;/P&gt;
&lt;P&gt;This looks like a bug in sparse FEAST. Can you share with us your test matrix? Thanks!&lt;/P&gt;</description>
      <pubDate>Tue, 17 Sep 2013 17:50:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925599#M13355</guid>
      <dc:creator>Zhang_Z_Intel</dc:creator>
      <dc:date>2013-09-17T17:50:13Z</dc:date>
    </item>
    <item>
      <title>I've attached the test file.</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925600#M13356</link>
      <description>&lt;P&gt;I've attached the test file. Unfortunately I have to jump through hoops to get to the test matrix I need eigen-decomposed. I'm sorry, it's un-inevitable. The FEAST implementation starts at line 595 and is marked "FEAST". From that section on:&lt;/P&gt;
&lt;P&gt;1. I use mklddnscr to convert my test matrix labeled "Sym" to "Symcsr , Sym J, &amp;amp; Sym I"&lt;/P&gt;
&lt;P&gt;2. &amp;nbsp;at line 662 is where I call dfeast_scsrev. It will crash.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;3. line 669 is a commented out dfeast_syev. That works. Just comment out line 662 and un-comment dense FEAST and the code runs beautifully, albiet slowly. It takes ~140 seconds to work with dense FEAST.&lt;/P&gt;
&lt;P&gt;Thank you.&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Sep 2013 19:05:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925600#M13356</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-17T19:05:54Z</dc:date>
    </item>
    <item>
      <title>Aaron,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925601#M13357</link>
      <description>&lt;P&gt;Aaron,&lt;/P&gt;
&lt;P&gt;The MKL engineering team confirms this is a bug. Thank you for reporting it. I will keep you updated when the big is fixed. &lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Sep 2013 21:12:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925601#M13357</guid>
      <dc:creator>Zhang_Z_Intel</dc:creator>
      <dc:date>2013-09-18T21:12:44Z</dc:date>
    </item>
    <item>
      <title>Zhang,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925602#M13358</link>
      <description>&lt;P&gt;Zhang,&lt;/P&gt;
&lt;P&gt;Has there been any progress? Please let me know. Thank you.&lt;/P&gt;
&lt;P&gt;Aaron.&lt;/P&gt;</description>
      <pubDate>Mon, 23 Sep 2013 15:58:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925602#M13358</guid>
      <dc:creator>Aaron_M_</dc:creator>
      <dc:date>2013-09-23T15:58:03Z</dc:date>
    </item>
    <item>
      <title>Aaron,</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925603#M13359</link>
      <description>&lt;P&gt;Aaron,&lt;/P&gt;
&lt;P&gt;The MKL team is looking at this issue. You will hear back from us within 2 weeks. We will try to provide a temporary workaround, if possible. A permanent fix to this problem will be put in the product in the next update release (due in 2~3 months). &lt;/P&gt;
&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 23 Sep 2013 16:39:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925603#M13359</guid>
      <dc:creator>Zhang_Z_Intel</dc:creator>
      <dc:date>2013-09-23T16:39:45Z</dc:date>
    </item>
    <item>
      <title>Aaron, </title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925604#M13360</link>
      <description>&lt;P&gt;Aaron,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;please check if the problem is still exists in the latest update 1 ( MKL v.11.1 Update 1) released the last Friday and let us know the results.&lt;/P&gt;
&lt;P&gt;Gennady&lt;/P&gt;</description>
      <pubDate>Wed, 30 Oct 2013 06:49:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Sparse-FEAST/m-p/925604#M13360</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2013-10-30T06:49:13Z</dc:date>
    </item>
  </channel>
</rss>

