- SUBROUTINE CHESWAPR( UPLO, N, A, I1, I2)
+ SUBROUTINE CHESWAPR( UPLO, N, A, LDA, I1, I2)
*
* -- LAPACK auxiliary routine (version 3.3.0) --
* -- LAPACK is a software package provided by Univ. of Tennessee, --
*
* .. Scalar Arguments ..
CHARACTER UPLO
- INTEGER I1, I2, N
+ INTEGER I1, I2, LDA, N
* ..
* .. Array Arguments ..
- COMPLEX A(N,N)
+ COMPLEX A( LDA, N )
*
* Purpose
* =======
* inverse is formed and the part of A above the diagonal is
* not referenced.
*
+* LDA (input) INTEGER
+* The leading dimension of the array A. LDA >= max(1,N).
+*
* I1 (input) INTEGER
* Index of the first row to swap
*
* LOWER
* first swap
* - swap row I1 and I2 from 1 to I1-1
- CALL CSWAP ( I1-1, A(I1,1), N, A(I2,1), N )
+ CALL CSWAP ( I1-1, A(I1,1), LDA, A(I2,1), LDA )
*
* second swap :
* - swap A(I1,I1) and A(I2,I2)
DO WHILE ( I .LE. N )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL CHESWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL CHESWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL CHESWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL CHESWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
I=I+1
IF ( (I-1) .LT. IP)
- $ CALL CHESWAPR( UPLO, N, A, I-1 ,IP )
+ $ CALL CHESWAPR( UPLO, N, A, LDA, I-1 ,IP )
IF ( (I-1) .GT. IP)
- $ CALL CHESWAPR( UPLO, N, A, IP ,I-1 )
+ $ CALL CHESWAPR( UPLO, N, A, LDA, IP ,I-1 )
ENDIF
I=I+1
END DO
DO WHILE ( I .GE. 1 )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL CHESWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL CHESWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL CHESWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL CHESWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
- IF ( I .LT. IP) CALL CHESWAPR( UPLO, N, A, I ,IP )
- IF ( I .GT. IP) CALL CHESWAPR( UPLO, N, A, IP ,I )
+ IF ( I .LT. IP) CALL CHESWAPR( UPLO, N, A, LDA, I ,IP )
+ IF ( I .GT. IP) CALL CHESWAPR( UPLO, N, A, LDA, IP ,I )
I=I-1
ENDIF
I=I-1
- SUBROUTINE CSYSWAPR( UPLO, N, A, I1, I2)
+ SUBROUTINE CSYSWAPR( UPLO, N, A, LDA, I1, I2)
*
* -- LAPACK auxiliary routine (version 3.3.0) --
* -- LAPACK is a software package provided by Univ. of Tennessee, --
*
* .. Scalar Arguments ..
CHARACTER UPLO
- INTEGER I1, I2, N
+ INTEGER I1, I2, LDA, N
* ..
* .. Array Arguments ..
- COMPLEX A(N,N)
+ COMPLEX A( LDA, N )
*
* Purpose
* =======
* inverse is formed and the part of A above the diagonal is
* not referenced.
*
+* LDA (input) INTEGER
+* The leading dimension of the array A. LDA >= max(1,N).
+*
* I1 (input) INTEGER
* Index of the first row to swap
*
* LOWER
* first swap
* - swap row I1 and I2 from I1 to I1-1
- CALL CSWAP ( I1-1, A(I1,1), N, A(I2,1), N )
+ CALL CSWAP ( I1-1, A(I1,1), LDA, A(I2,1), LDA )
*
* second swap :
* - swap A(I1,I1) and A(I2,I2)
DO WHILE ( I .LE. N )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL CSYSWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL CSYSWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL CSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL CSYSWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
I=I+1
IF ( (I-1) .LT. IP)
- $ CALL CSYSWAPR( UPLO, N, A, I-1 ,IP )
+ $ CALL CSYSWAPR( UPLO, N, A, LDA, I-1 ,IP )
IF ( (I-1) .GT. IP)
- $ CALL CSYSWAPR( UPLO, N, A, IP ,I-1 )
+ $ CALL CSYSWAPR( UPLO, N, A, LDA, IP ,I-1 )
ENDIF
I=I+1
END DO
DO WHILE ( I .GE. 1 )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL CSYSWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL CSYSWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL CSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL CSYSWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
- IF ( I .LT. IP) CALL CSYSWAPR( UPLO, N, A, I ,IP )
- IF ( I .GT. IP) CALL CSYSWAPR( UPLO, N, A, IP ,I )
+ IF ( I .LT. IP) CALL CSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF ( I .GT. IP) CALL CSYSWAPR( UPLO, N, A, LDA, IP ,I )
I=I-1
ENDIF
I=I-1
- SUBROUTINE SSYSWAPR( UPLO, N, A, I1, I2)
+ SUBROUTINE SSYSWAPR( UPLO, N, A, LDA, I1, I2)
*
* -- LAPACK auxiliary routine (version 3.3.0) --
* -- LAPACK is a software package provided by Univ. of Tennessee, --
*
* .. Scalar Arguments ..
CHARACTER UPLO
- INTEGER I1, I2, N
+ INTEGER I1, I2, LDA, N
* ..
* .. Array Arguments ..
- REAL A(N,N)
+ REAL A( LDA, N )
*
* Purpose
* =======
* inverse is formed and the part of A above the diagonal is
* not referenced.
*
+* LDA (input) INTEGER
+* The leading dimension of the array A. LDA >= max(1,N).
+*
* I1 (input) INTEGER
* Index of the first row to swap
*
* LOWER
* first swap
* - swap row I1 and I2 from I1 to I1-1
- CALL SSWAP( I1-1, A(I1,1), N, A(I2,1), N )
+ CALL SSWAP( I1-1, A(I1,1), LDA, A(I2,1), LDA )
*
* second swap :
* - swap A(I1,I1) and A(I2,I2)
DO WHILE ( I .LE. N )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL SSYSWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL SSYSWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL SSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL SSYSWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
I=I+1
IF ( (I-1) .LT. IP)
- $ CALL SSYSWAPR( UPLO, N, A, I-1 ,IP )
+ $ CALL SSYSWAPR( UPLO, N, A, LDA, I-1 ,IP )
IF ( (I-1) .GT. IP)
- $ CALL SSYSWAPR( UPLO, N, A, IP ,I-1 )
+ $ CALL SSYSWAPR( UPLO, N, A, LDA, IP ,I-1 )
ENDIF
I=I+1
END DO
DO WHILE ( I .GE. 1 )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL SSYSWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL SSYSWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL SSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL SSYSWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
- IF ( I .LT. IP) CALL SSYSWAPR( UPLO, N, A, I ,IP )
- IF ( I .GT. IP) CALL SSYSWAPR( UPLO, N, A, IP ,I )
+ IF ( I .LT. IP) CALL SSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF ( I .GT. IP) CALL SSYSWAPR( UPLO, N, A, LDA, IP ,I )
I=I-1
ENDIF
I=I-1
- SUBROUTINE ZHESWAPR( UPLO, N, A, I1, I2)
+ SUBROUTINE ZHESWAPR( UPLO, N, A, LDA, I1, I2)
*
* -- LAPACK auxiliary routine (version 3.3.0) --
* -- LAPACK is a software package provided by Univ. of Tennessee, --
*
* .. Scalar Arguments ..
CHARACTER UPLO
- INTEGER I1, I2, N
+ INTEGER I1, I2, LDA, N
* ..
* .. Array Arguments ..
- COMPLEX*16 A(N,N)
+ COMPLEX*16 A( LDA, N )
*
* Purpose
* =======
* inverse is formed and the part of A above the diagonal is
* not referenced.
*
+* LDA (input) INTEGER
+* The leading dimension of the array A. LDA >= max(1,N).
+*
* I1 (input) INTEGER
* Index of the first row to swap
*
* LOWER
* first swap
* - swap row I1 and I2 from 1 to I1-1
- CALL ZSWAP ( I1-1, A(I1,1), N, A(I2,1), N )
+ CALL ZSWAP ( I1-1, A(I1,1), LDA, A(I2,1), LDA )
*
* second swap :
* - swap A(I1,I1) and A(I2,I2)
DO WHILE ( I .LE. N )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL ZHESWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL ZHESWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL ZHESWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL ZHESWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
I=I+1
IF ( (I-1) .LT. IP)
- $ CALL ZHESWAPR( UPLO, N, A, I-1 ,IP )
+ $ CALL ZHESWAPR( UPLO, N, A, LDA, I-1 ,IP )
IF ( (I-1) .GT. IP)
- $ CALL ZHESWAPR( UPLO, N, A, IP ,I-1 )
+ $ CALL ZHESWAPR( UPLO, N, A, LDA, IP ,I-1 )
ENDIF
I=I+1
END DO
DO WHILE ( I .GE. 1 )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL ZHESWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL ZHESWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL ZHESWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL ZHESWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
- IF ( I .LT. IP) CALL ZHESWAPR( UPLO, N, A, I ,IP )
- IF ( I .GT. IP) CALL ZHESWAPR( UPLO, N, A, IP ,I )
+ IF ( I .LT. IP) CALL ZHESWAPR( UPLO, N, A, LDA, I ,IP )
+ IF ( I .GT. IP) CALL ZHESWAPR( UPLO, N, A, LDA, IP ,I )
I=I-1
ENDIF
I=I-1
- SUBROUTINE ZSYSWAPR( UPLO, N, A, I1, I2)
+ SUBROUTINE ZSYSWAPR( UPLO, N, A, LDA, I1, I2)
*
* -- LAPACK auxiliary routine (version 3.3.0) --
* -- LAPACK is a software package provided by Univ. of Tennessee, --
*
* .. Scalar Arguments ..
CHARACTER UPLO
- INTEGER I1, I2, N
+ INTEGER I1, I2, LDA, N
* ..
* .. Array Arguments ..
- DOUBLE COMPLEX A(N,N)
+ DOUBLE COMPLEX A( LDA, N )
*
* Purpose
* =======
* inverse is formed and the part of A above the diagonal is
* not referenced.
*
+* LDA (input) INTEGER
+* The leading dimension of the array A. LDA >= max(1,N).
+*
* I1 (input) INTEGER
* Index of the first row to swap
*
* LOWER
* first swap
* - swap row I1 and I2 from I1 to I1-1
- CALL ZSWAP( I1-1, A(I1,1), N, A(I2,1), N )
+ CALL ZSWAP( I1-1, A(I1,1), LDA, A(I2,1), LDA )
*
* second swap :
* - swap A(I1,I1) and A(I2,I2)
DO WHILE ( I .LE. N )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL ZSYSWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL ZSYSWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL ZSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL ZSYSWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
I=I+1
IF ( (I-1) .LT. IP)
- $ CALL ZSYSWAPR( UPLO, N, A, I-1 ,IP )
+ $ CALL ZSYSWAPR( UPLO, N, A, LDA, I-1 ,IP )
IF ( (I-1) .GT. IP)
- $ CALL ZSYSWAPR( UPLO, N, A, IP ,I-1 )
+ $ CALL ZSYSWAPR( UPLO, N, A, LDA, IP ,I-1 )
ENDIF
I=I+1
END DO
DO WHILE ( I .GE. 1 )
IF( IPIV(I) .GT. 0 ) THEN
IP=IPIV(I)
- IF (I .LT. IP) CALL ZSYSWAPR( UPLO, N, A, I ,IP )
- IF (I .GT. IP) CALL ZSYSWAPR( UPLO, N, A, IP ,I )
+ IF (I .LT. IP) CALL ZSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF (I .GT. IP) CALL ZSYSWAPR( UPLO, N, A, LDA, IP ,I )
ELSE
IP=-IPIV(I)
- IF ( I .LT. IP) CALL ZSYSWAPR( UPLO, N, A, I ,IP )
- IF ( I .GT. IP) CALL ZSYSWAPR( UPLO, N, A, IP ,I )
+ IF ( I .LT. IP) CALL ZSYSWAPR( UPLO, N, A, LDA, I ,IP )
+ IF ( I .GT. IP) CALL ZSYSWAPR( UPLO, N, A, LDA, IP ,I )
I=I-1
ENDIF
I=I-1