version 1.3, 2010/08/06 15:28:41
|
version 1.9, 2011/07/22 07:38:07
|
Line 1
|
Line 1
|
SUBROUTINE DLAQP2( M, N, OFFSET, A, LDA, JPVT, TAU, VN1, VN2, |
SUBROUTINE DLAQP2( M, N, OFFSET, A, LDA, JPVT, TAU, VN1, VN2, |
$ WORK ) |
$ WORK ) |
* |
* |
* -- LAPACK auxiliary routine (version 3.2) -- |
* -- LAPACK auxiliary routine (version 3.3.1) -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- LAPACK is a software package provided by Univ. of Tennessee, -- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- |
* November 2006 |
* -- April 2011 -- |
* |
* |
* .. Scalar Arguments .. |
* .. Scalar Arguments .. |
INTEGER LDA, M, N, OFFSET |
INTEGER LDA, M, N, OFFSET |
Line 75
|
Line 75
|
* Partial column norm updating strategy modified by |
* Partial column norm updating strategy modified by |
* Z. Drmac and Z. Bujanovic, Dept. of Mathematics, |
* Z. Drmac and Z. Bujanovic, Dept. of Mathematics, |
* University of Zagreb, Croatia. |
* University of Zagreb, Croatia. |
* June 2006. |
* -- April 2011 -- |
* For more details see LAPACK Working Note 176. |
* For more details see LAPACK Working Note 176. |
* ===================================================================== |
* ===================================================================== |
* |
* |
Line 88
|
Line 88
|
DOUBLE PRECISION AII, TEMP, TEMP2, TOL3Z |
DOUBLE PRECISION AII, TEMP, TEMP2, TOL3Z |
* .. |
* .. |
* .. External Subroutines .. |
* .. External Subroutines .. |
EXTERNAL DLARF, DLARFP, DSWAP |
EXTERNAL DLARF, DLARFG, DSWAP |
* .. |
* .. |
* .. Intrinsic Functions .. |
* .. Intrinsic Functions .. |
INTRINSIC ABS, MAX, MIN, SQRT |
INTRINSIC ABS, MAX, MIN, SQRT |
Line 125
|
Line 125
|
* Generate elementary reflector H(i). |
* Generate elementary reflector H(i). |
* |
* |
IF( OFFPI.LT.M ) THEN |
IF( OFFPI.LT.M ) THEN |
CALL DLARFP( M-OFFPI+1, A( OFFPI, I ), A( OFFPI+1, I ), 1, |
CALL DLARFG( M-OFFPI+1, A( OFFPI, I ), A( OFFPI+1, I ), 1, |
$ TAU( I ) ) |
$ TAU( I ) ) |
ELSE |
ELSE |
CALL DLARFP( 1, A( M, I ), A( M, I ), 1, TAU( I ) ) |
CALL DLARFG( 1, A( M, I ), A( M, I ), 1, TAU( I ) ) |
END IF |
END IF |
* |
* |
IF( I.LE.N ) THEN |
IF( I.LE.N ) THEN |
* |
* |
* Apply H(i)' to A(offset+i:m,i+1:n) from the left. |
* Apply H(i)**T to A(offset+i:m,i+1:n) from the left. |
* |
* |
AII = A( OFFPI, I ) |
AII = A( OFFPI, I ) |
A( OFFPI, I ) = ONE |
A( OFFPI, I ) = ONE |