Apply fixes from Reference-LAPACK PR538

This commit is contained in:
Martin Kroeker 2021-04-27 12:52:49 +02:00 committed by GitHub
parent 352efdd13a
commit 3526ff2507
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 33 additions and 32 deletions

View File

@ -707,9 +707,10 @@
CALL CLACPY( 'Full', N, NRHS, BSAV, LDA, B, LDA ) CALL CLACPY( 'Full', N, NRHS, BSAV, LDA, B, LDA )
IF( .NOT.PREFAC ) IF( .NOT.PREFAC )
$ CALL CLASET( 'Full', N, N, ZERO, ZERO, AFAC, $ CALL CLASET( 'Full', N, N, CMPLX( ZERO ),
$ LDA ) $ CMPLX( ZERO ), AFAC, LDA )
CALL CLASET( 'Full', N, NRHS, ZERO, ZERO, X, LDA ) CALL CLASET( 'Full', N, NRHS, CMPLX( ZERO ),
$ CMPLX( ZERO ), X, LDA )
IF( IEQUED.GT.1 .AND. N.GT.0 ) THEN IF( IEQUED.GT.1 .AND. N.GT.0 ) THEN
* *
* Equilibrate the matrix if FACT = 'F' and * Equilibrate the matrix if FACT = 'F' and

View File

@ -449,10 +449,11 @@
* Form the inverse of A. * Form the inverse of A.
* *
CALL CPOTRI( UPLO, N, A, LDA, INFO ) CALL CPOTRI( UPLO, N, A, LDA, INFO )
IF ( N .NE. 0 ) THEN
* *
* Compute the 1-norm condition number of A. * Compute the 1-norm condition number of A.
* *
IF ( N .NE. 0 ) THEN
AINVNM = CLANHE( '1', UPLO, N, A, LDA, AINVNM = CLANHE( '1', UPLO, N, A, LDA,
+ S_WORK_CLANHE ) + S_WORK_CLANHE )
RCONDC = ( ONE / ANORM ) / AINVNM RCONDC = ( ONE / ANORM ) / AINVNM
@ -461,7 +462,6 @@
* *
CALL CLACPY( UPLO, N, N, ASAV, LDA, A, LDA ) CALL CLACPY( UPLO, N, N, ASAV, LDA, A, LDA )
END IF END IF
* *
END IF END IF
* *

View File

@ -444,7 +444,6 @@
CALL DPOTRI( UPLO, N, A, LDA, INFO ) CALL DPOTRI( UPLO, N, A, LDA, INFO )
IF ( N .NE. 0 ) THEN IF ( N .NE. 0 ) THEN
* *
* Compute the 1-norm condition number of A. * Compute the 1-norm condition number of A.
* *

View File

@ -707,9 +707,10 @@
CALL ZLACPY( 'Full', N, NRHS, BSAV, LDA, B, LDA ) CALL ZLACPY( 'Full', N, NRHS, BSAV, LDA, B, LDA )
IF( .NOT.PREFAC ) IF( .NOT.PREFAC )
$ CALL ZLASET( 'Full', N, N, ZERO, ZERO, AFAC, $ CALL ZLASET( 'Full', N, N, DCMPLX( ZERO ),
$ LDA ) $ DCMPLX( ZERO ), AFAC, LDA )
CALL ZLASET( 'Full', N, NRHS, ZERO, ZERO, X, LDA ) CALL ZLASET( 'Full', N, NRHS, DCMPLX( ZERO ),
$ DCMPLX( ZERO ), X, LDA )
IF( IEQUED.GT.1 .AND. N.GT.0 ) THEN IF( IEQUED.GT.1 .AND. N.GT.0 ) THEN
* *
* Equilibrate the matrix if FACT = 'F' and * Equilibrate the matrix if FACT = 'F' and

View File

@ -599,10 +599,10 @@
* Restore the matrices A and B. * Restore the matrices A and B.
* *
IF( IFACT.EQ.2 ) IF( IFACT.EQ.2 )
$ CALL ZLASET( UPLO, N, N, CMPLX( ZERO ), $ CALL ZLASET( UPLO, N, N, DCMPLX( ZERO ),
$ CMPLX( ZERO ), AFAC, LDA ) $ DCMPLX( ZERO ), AFAC, LDA )
CALL ZLASET( 'Full', N, NRHS, CMPLX( ZERO ), CALL ZLASET( 'Full', N, NRHS, DCMPLX( ZERO ),
$ CMPLX( ZERO ), X, LDA ) $ DCMPLX( ZERO ), X, LDA )
* *
* Solve the system and compute the condition number * Solve the system and compute the condition number
* and error bounds using ZHESVXX. * and error bounds using ZHESVXX.

View File

@ -611,10 +611,10 @@
CALL ZLACPY( 'Full', N, NRHS, BSAV, LDA, B, LDA ) CALL ZLACPY( 'Full', N, NRHS, BSAV, LDA, B, LDA )
IF( .NOT.PREFAC ) IF( .NOT.PREFAC )
$ CALL ZLASET( UPLO, N, N, CMPLX( ZERO ), $ CALL ZLASET( UPLO, N, N, DCMPLX( ZERO ),
$ CMPLX( ZERO ), AFAC, LDA ) $ DCMPLX( ZERO ), AFAC, LDA )
CALL ZLASET( 'Full', N, NRHS, CMPLX( ZERO ), CALL ZLASET( 'Full', N, NRHS, DCMPLX( ZERO ),
$ CMPLX( ZERO ), X, LDA ) $ DCMPLX( ZERO ), X, LDA )
IF( IEQUED.GT.1 .AND. N.GT.0 ) THEN IF( IEQUED.GT.1 .AND. N.GT.0 ) THEN
* *
* Equilibrate the matrix if FACT='F' and * Equilibrate the matrix if FACT='F' and

View File

@ -605,10 +605,10 @@
* Restore the matrices A and B. * Restore the matrices A and B.
* *
IF( IFACT.EQ.2 ) IF( IFACT.EQ.2 )
$ CALL ZLASET( UPLO, N, N, CMPLX( ZERO ), $ CALL ZLASET( UPLO, N, N, DCMPLX( ZERO ),
$ CMPLX( ZERO ), AFAC, LDA ) $ DCMPLX( ZERO ), AFAC, LDA )
CALL ZLASET( 'Full', N, NRHS, CMPLX( ZERO ), CALL ZLASET( 'Full', N, NRHS, DCMPLX( ZERO ),
$ CMPLX( ZERO ), X, LDA ) $ DCMPLX( ZERO ), X, LDA )
* *
* Solve the system and compute the condition number * Solve the system and compute the condition number
* and error bounds using ZSYSVXX. * and error bounds using ZSYSVXX.