<?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 Thanks again for helping me in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925235#M13323</link>
    <description>&lt;P&gt;Thanks again for helping me with this.&amp;nbsp; You have been very helpful.&lt;/P&gt;</description>
    <pubDate>Mon, 05 May 2014 20:55:44 GMT</pubDate>
    <dc:creator>rdees</dc:creator>
    <dc:date>2014-05-05T20:55:44Z</dc:date>
    <item>
      <title>How can I remove a column from a sparse matrix (CSR) using MKL</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925229#M13317</link>
      <description>&lt;P&gt;I need to revove a column from a large sparse matrix that is stored in CSR format, using MKL.&amp;nbsp; I cannot find an MKL routine that does this directly.&amp;nbsp; Can anyone tell me how it can be done?&amp;nbsp;&amp;nbsp; I'm using Fortran.&amp;nbsp; Thx.&amp;nbsp; Bob&lt;/P&gt;</description>
      <pubDate>Mon, 24 Feb 2014 20:54:18 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925229#M13317</guid>
      <dc:creator>rdees</dc:creator>
      <dc:date>2014-02-24T20:54:18Z</dc:date>
    </item>
    <item>
      <title>Here is an example where the</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925230#M13318</link>
      <description>&lt;P&gt;Here is an example where the input 8 X 8 matrix is symmetric and only the upper triangle is processed. The example shows the third column being deleted. The call to&amp;nbsp;mkl_ddnscsr() is only for printing purposes, and is not needed for the column deletion.&lt;/P&gt;

&lt;P&gt;[NOTE: The program listing is portrayed by the formatter as double spaced. That was not intended, and I request the Intel people to tell me how to avoid such unintended double spacing.]&lt;/P&gt;

&lt;P&gt;[fortran]&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; PROGRAM pardiso_sym&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; IMPLICIT NONE&lt;BR /&gt;
	C.. All other variables&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; INTEGER maxfct, mnum, mtype, phase, n, nrhs, error, msglvl&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; INTEGER iparm(64)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; INTEGER ia(9),ian(9)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; INTEGER ja(18)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; REAL*8 a(18),ad(8,7)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; REAL*8 b(8)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; REAL*8 x(8)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; INTEGER i, j,k,kn, idum,job(6), info, jdel&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; REAL*8 waltime1, waltime2, ddum&lt;BR /&gt;
	C.. Fill all arrays containing matrix data.&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; DATA n /8/, nrhs /1/, maxfct /1/, mnum /1/&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; DATA ia /1,5,8,10,12,15,17,18,19/&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; DATA ja&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;1 /1, &amp;nbsp;3, &amp;nbsp; &amp;nbsp;6,7,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;2 &amp;nbsp; &amp;nbsp;2,3, &amp;nbsp;5,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;3 &amp;nbsp; &amp;nbsp; &amp;nbsp;3, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;8,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;4 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;4, &amp;nbsp; &amp;nbsp;7,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;5 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;5,6,7,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;6 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;6, &amp;nbsp;8,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;7 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;7,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;8 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;8/&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; DATA a&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;1 /7.d0, &amp;nbsp; &amp;nbsp; 1.d0, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;2.d0,7.d0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;2 &amp;nbsp; &amp;nbsp; &amp;nbsp; -4.d0,8.d0, &amp;nbsp; &amp;nbsp; 2.d0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;3 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1.d0, &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;5.d0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;4 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 7.d0, &amp;nbsp; &amp;nbsp; 9.d0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;5 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;5.d0,1.d0,5.d0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;6 &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; -1.d0, &amp;nbsp; &amp;nbsp; 5.d0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;7 &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;11.d0,&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp;8 &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; 5.d0/&lt;BR /&gt;
	c&lt;BR /&gt;
	c &amp;nbsp;Drop column 3&lt;BR /&gt;
	c&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; data job/1,1,1,0,0,0/&lt;BR /&gt;
	c&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; jdel = 3 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ! column to delete&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; kn = 0&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; ian(1)=1&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; do i=1,n&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;do k=ia(i),ia(i+1)-1 &amp;nbsp; &amp;nbsp; &amp;nbsp;! row i&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if(ja(k).ne.jdel)then&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;kn=kn+1&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if(ja(k).gt.jdel)then&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ja(kn)=ja(k)-1&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ja(kn)=ja(k)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;endif&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;a(kn)=a(k)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; endif&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;end do&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ian(i+1)=kn+1&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; end do&lt;BR /&gt;
	c&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; do i=1,n&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;write(*,'(7(2x,I2,1x,F10.3))')(ja(j),a(j),j=ian(i),ian(i+1)-1)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; end do&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; write(*,*)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; call mkl_ddnscsr(job,n,n-1,ad,n,a,ja,ian,info)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; write(*,*)'info = ',info&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; do i=1,n&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;write(*,'(7F10.3)')(ad(i,j),j=1,7)&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; end do&lt;BR /&gt;
	&amp;nbsp; &amp;nbsp; &amp;nbsp; END[/fortran]&lt;/P&gt;</description>
      <pubDate>Tue, 25 Feb 2014 15:18:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925230#M13318</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2014-02-25T15:18:00Z</dc:date>
    </item>
    <item>
      <title>Here is an example that shows</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925231#M13319</link>
      <description>&lt;P&gt;Here is an example that shows how to perform the column deletion that you sought. I show how to delete a column in a symmetric matrix represented by only its upper triangular part. Please note that the call to mkl_ddnscsr() is not needed for the column deletion, but to facilitate printing the modified matrix.&lt;/P&gt;

&lt;P&gt;[Note to Forum Moderators: My first response (#2) was held up for approval for several hours. Then, after it was approved, I noticed that the inline code was formatted with double spacing, and added a couple of sentences to #2 to disclaim that I had inserted the extra blank lines. When I did the edits and clicked "SUBMIT", the whole of #2 evaporated, and the forum TOC showed the number of replies as 0. In response to this event, I posted #3. Subsequently, #2 appeared again. There is much duplication between the two: readers please note this!]&lt;/P&gt;</description>
      <pubDate>Tue, 25 Feb 2014 15:26:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925231#M13319</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2014-02-25T15:26:00Z</dc:date>
    </item>
    <item>
      <title>mecej4,  Thx so much.  It</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925232#M13320</link>
      <description>&lt;P&gt;mecej4,&amp;nbsp; Thx so much.&amp;nbsp; It works great.&amp;nbsp; Do you happen to have a version of this code that would work on an non-symmetric, sparse matrix.&amp;nbsp; If you do, that would be very helpful too.&lt;/P&gt;</description>
      <pubDate>Tue, 25 Feb 2014 16:06:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925232#M13320</guid>
      <dc:creator>rdees</dc:creator>
      <dc:date>2014-02-25T16:06:03Z</dc:date>
    </item>
    <item>
      <title>Here is similar code for an</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925233#M13321</link>
      <description>&lt;P&gt;Here is similar code for an unsymmetric, non-square matrix. The matrix is 7 X 8 and column-3 is deleted, giving a 7 X 7 matrix.&lt;/P&gt;</description>
      <pubDate>Tue, 25 Feb 2014 18:33:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925233#M13321</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2014-02-25T18:33:00Z</dc:date>
    </item>
    <item>
      <title>meje4 - Thx again - It works</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925234#M13322</link>
      <description>&lt;P&gt;meje4 - Thx again - It works great - I appreciate your help.&lt;/P&gt;</description>
      <pubDate>Wed, 26 Feb 2014 14:09:48 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925234#M13322</guid>
      <dc:creator>rdees</dc:creator>
      <dc:date>2014-02-26T14:09:48Z</dc:date>
    </item>
    <item>
      <title>Thanks again for helping me</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925235#M13323</link>
      <description>&lt;P&gt;Thanks again for helping me with this.&amp;nbsp; You have been very helpful.&lt;/P&gt;</description>
      <pubDate>Mon, 05 May 2014 20:55:44 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/How-can-I-remove-a-column-from-a-sparse-matrix-CSR-using-MKL/m-p/925235#M13323</guid>
      <dc:creator>rdees</dc:creator>
      <dc:date>2014-05-05T20:55:44Z</dc:date>
    </item>
  </channel>
</rss>

