<?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 apply DLARF to a vector? in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/apply-DLARF-to-a-vector/m-p/772158#M721</link>
    <description>Hello,&lt;BR /&gt;&lt;BR /&gt;I would like to use dlarf to apply an elementary Householder reflector to a vector rather than to a matrix, how can I do that? &lt;BR /&gt;&lt;BR /&gt;My context is that of updating a QR decomposition after deleting columns. I'm reusing the Fortran routines from the links:&lt;BR /&gt;&lt;A class="postlink" href="http://www.maths.manchester.ac.uk/%7Eclucas/updating/delcols.f"&gt;&lt;/A&gt;&lt;A href="http://www.maths.manchester.ac.uk/~cluc" target="_blank"&gt;http://www.maths.manchester.ac.uk/~cluc&lt;/A&gt; ... /delcols.f&lt;BR /&gt;&lt;A class="postlink" href="http://www.maths.manchester.ac.uk/%7Eclucas/updating/delcolsq.f"&gt;&lt;/A&gt;&lt;A href="http://www.maths.manchester.ac.uk/~cluc" target="_blank"&gt;http://www.maths.manchester.ac.uk/~cluc&lt;/A&gt; ... delcolsq.f&lt;BR /&gt;&lt;BR /&gt;I
 can apply and test the delcols QR update correctly using delcols.f, I 
then use a modified version of delcolsq.f as test to apply the update to
 the Q_B'*C i.e. Q_delcols*Q_B'*C and this works fine I get my new R 
upper triangular. I don't know why the authors of those functions 
decided to provide a delcolsq.f that requires generating explicitly the Q
 since no one in practice ever expensively generate the Q explicitly but
 well ... my version of their delcolsq to be able to apply it to my 
Q_B'*C is included below and this works fine ... I can test that it 
annihilates the offending non zero terms under the diagonal. However, 
when I try to apply the same transformation to my vector c solving an 
overdetermined system (the c of the solve Ax=b, c=Q_B'*b and I need to 
do c=Q_delcols*c on top) it doesn't work. I have tried modifying the 
Fortran code below to take Q as a vector rather than a matrix but it 
doesn't produce the correct results. I have also tried to fool the DLARF
 setting the ldc=1 (or LDQ below) but doesn't work either. Can anyone 
shed some light into how to do this?&lt;BR /&gt;&lt;BR /&gt;Many thanks in advance,&lt;BR /&gt;Best regards,&lt;BR /&gt;Giovanni &lt;BR /&gt;&lt;BR /&gt;      LAST  = MIN( M-1, N )&lt;BR /&gt;*&lt;BR /&gt;      DO 10 J = K, LAST&lt;BR /&gt;*&lt;BR /&gt;         LENH = MIN( P+1, M-J+1 )&lt;BR /&gt;*&lt;BR /&gt;*        Apply H(J) to trailing matrix from left&lt;BR /&gt;*&lt;BR /&gt;         AJJ = A( J, J )&lt;BR /&gt;         A( J, J ) = ONE&lt;BR /&gt;         CALL DLARF( 'L', LENH, M-J, A( J, J ), 1, TAU( J-K+1 ),&lt;BR /&gt;     $               Q( J, J ), LDQ, WORK )&lt;BR /&gt;*&lt;BR /&gt;         A( J, J ) = AJJ&lt;BR /&gt;*&lt;BR /&gt;   10 CONTINUE</description>
    <pubDate>Sun, 15 Apr 2012 21:21:13 GMT</pubDate>
    <dc:creator>Azua_Garcia__Giovann</dc:creator>
    <dc:date>2012-04-15T21:21:13Z</dc:date>
    <item>
      <title>apply DLARF to a vector?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/apply-DLARF-to-a-vector/m-p/772158#M721</link>
      <description>Hello,&lt;BR /&gt;&lt;BR /&gt;I would like to use dlarf to apply an elementary Householder reflector to a vector rather than to a matrix, how can I do that? &lt;BR /&gt;&lt;BR /&gt;My context is that of updating a QR decomposition after deleting columns. I'm reusing the Fortran routines from the links:&lt;BR /&gt;&lt;A class="postlink" href="http://www.maths.manchester.ac.uk/%7Eclucas/updating/delcols.f"&gt;&lt;/A&gt;&lt;A href="http://www.maths.manchester.ac.uk/~cluc" target="_blank"&gt;http://www.maths.manchester.ac.uk/~cluc&lt;/A&gt; ... /delcols.f&lt;BR /&gt;&lt;A class="postlink" href="http://www.maths.manchester.ac.uk/%7Eclucas/updating/delcolsq.f"&gt;&lt;/A&gt;&lt;A href="http://www.maths.manchester.ac.uk/~cluc" target="_blank"&gt;http://www.maths.manchester.ac.uk/~cluc&lt;/A&gt; ... delcolsq.f&lt;BR /&gt;&lt;BR /&gt;I
 can apply and test the delcols QR update correctly using delcols.f, I 
then use a modified version of delcolsq.f as test to apply the update to
 the Q_B'*C i.e. Q_delcols*Q_B'*C and this works fine I get my new R 
upper triangular. I don't know why the authors of those functions 
decided to provide a delcolsq.f that requires generating explicitly the Q
 since no one in practice ever expensively generate the Q explicitly but
 well ... my version of their delcolsq to be able to apply it to my 
Q_B'*C is included below and this works fine ... I can test that it 
annihilates the offending non zero terms under the diagonal. However, 
when I try to apply the same transformation to my vector c solving an 
overdetermined system (the c of the solve Ax=b, c=Q_B'*b and I need to 
do c=Q_delcols*c on top) it doesn't work. I have tried modifying the 
Fortran code below to take Q as a vector rather than a matrix but it 
doesn't produce the correct results. I have also tried to fool the DLARF
 setting the ldc=1 (or LDQ below) but doesn't work either. Can anyone 
shed some light into how to do this?&lt;BR /&gt;&lt;BR /&gt;Many thanks in advance,&lt;BR /&gt;Best regards,&lt;BR /&gt;Giovanni &lt;BR /&gt;&lt;BR /&gt;      LAST  = MIN( M-1, N )&lt;BR /&gt;*&lt;BR /&gt;      DO 10 J = K, LAST&lt;BR /&gt;*&lt;BR /&gt;         LENH = MIN( P+1, M-J+1 )&lt;BR /&gt;*&lt;BR /&gt;*        Apply H(J) to trailing matrix from left&lt;BR /&gt;*&lt;BR /&gt;         AJJ = A( J, J )&lt;BR /&gt;         A( J, J ) = ONE&lt;BR /&gt;         CALL DLARF( 'L', LENH, M-J, A( J, J ), 1, TAU( J-K+1 ),&lt;BR /&gt;     $               Q( J, J ), LDQ, WORK )&lt;BR /&gt;*&lt;BR /&gt;         A( J, J ) = AJJ&lt;BR /&gt;*&lt;BR /&gt;   10 CONTINUE</description>
      <pubDate>Sun, 15 Apr 2012 21:21:13 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/apply-DLARF-to-a-vector/m-p/772158#M721</guid>
      <dc:creator>Azua_Garcia__Giovann</dc:creator>
      <dc:date>2012-04-15T21:21:13Z</dc:date>
    </item>
    <item>
      <title>apply DLARF to a vector?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/apply-DLARF-to-a-vector/m-p/772159#M722</link>
      <description>Please ignore, I made a mistake, it works now.</description>
      <pubDate>Sun, 15 Apr 2012 21:57:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/apply-DLARF-to-a-vector/m-p/772159#M722</guid>
      <dc:creator>Azua_Garcia__Giovann</dc:creator>
      <dc:date>2012-04-15T21:57:36Z</dc:date>
    </item>
  </channel>
</rss>

