aboutsummaryrefslogtreecommitdiff
path: root/SRC/ssytri2x.f
diff options
context:
space:
mode:
authorlangou <langou@users.noreply.github.com>2011-01-26 14:02:05 +0000
committerlangou <langou@users.noreply.github.com>2011-01-26 14:02:05 +0000
commit890ff5ee9c7fd351957abd45b6c64990b4c7759d (patch)
treecfd4d8feb85994e4067b38c235764e4bd96fb1ee /SRC/ssytri2x.f
parent99c4971bd83367bd650ca2c39199aa9fa22b1141 (diff)
1) Je viens de modifier le fichier timer_dsytri2.c de telle sorte a ce qu'il
traite les matrices avec des lda. Exemple: > gfortran timer_dsytri2.c /Users/langou/Documents/lapack-dev-trunk.svn/lapack_LINUX.a -framework vecLib > ./a.out -U -lda 1079 -n 100 DSYTRI2 info=0, check=1.891597e-14 Dispo dans ldlt.git. Marche bien. Upper ou Lower. LDA different de N ou pas. Le check est || A . inv(A) - I || / || A || (Je pense que il faut diviser par || A || * || inv(A) ||, pas tres important.) 2) Du coup, dans ce commit, je rectifie tous les codes. Cela compile. Je n'ai pas verifie les testings. Je n'ai pas ecrit de driver pour verifier. (Le driver n'est que pour la version DOUBLE.) JL
Diffstat (limited to 'SRC/ssytri2x.f')
-rw-r--r--SRC/ssytri2x.f16
1 files changed, 8 insertions, 8 deletions
diff --git a/SRC/ssytri2x.f b/SRC/ssytri2x.f
index f628aa82..29168dba 100644
--- a/SRC/ssytri2x.f
+++ b/SRC/ssytri2x.f
@@ -308,15 +308,15 @@
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
@@ -487,12 +487,12 @@
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