ScaLAPACK Archives

[Scalapack] complex pivoted qr factorisation

Yes, that is the order I find, which I have tested on two machines.  I
forgot to mention that when the numbers are exactly 0.5 and 0.0, the
order comes out correctly.  Also, the output matrices still multiply
to give the original matrix.  Only the pivoting appears to be wrong.


On 20 October 2011 04:28, James Demmel <demmel@Domain.Removed> wrote:
There was a relatively recently repaired bug of this kind in the LAPACK
the problem was that when some R(i,i) is very tiny (as in the examples
cancellation from updating the column norms can cause them to be inaccurate
and not reflect the true R(i,i) values, which then do not appear in sorted

But that should not cause R(2,2) and R(3,3) in the first example below to
come out in the wrong order, since they are of vastly different magnitudes.
Is this really the wrong order that appeared?


On 10/19/11 10:07 AM, James, Rodney wrote:

Hello David,

Thank you for the report. ?It looks like this is probably a bug -- we will
take a look at this and hopefully get a fix in place sometime in the near


On Oct 18, 2011, at 9:32 PM, David Wang wrote:

Hello Scalapack,

I have been using the pivoted QR factorisation routine (pzgeqpf) from
scalapack-1.8.0. ?I have found that, in some cases, the diagonal
elements of the R matrix are not arranged in order of descending
magnitude as described in the user's guide. ?I have attached a test
case for you to verify. ?e.g. I get something like:

R(0,0) -0.707107 + 0i
R(1,1) -0.707107 + 0i
R(2,2) 8.16273e-17 + 0i
R(3,3) -0.243173 + 0i
R(4,4) 4.82605e-17 + 0i

This behaviour can be reproduced for the single precision complex case
(although not with the supplied test matrix). ?The same test case
works for the real case (pdgeqpf). ?e.g.

R(0,0) -0.707107
R(1,1) -0.707107
R(2,2) 0.5
R(3,3) 3.96991e-17
R(4,4) 2.2336e-17

I have not had any problems with the equivalent lapack routines (zgeqp3),
and have not see any mention of this in the errata.


Scalapack mailing list

Scalapack mailing list

<Prev in Thread] Current Thread [Next in Thread>

For additional information you may use the LAPACK/ScaLAPACK Forum.
Or one of the mailing lists, or