1 : C PIVLI SOURCE CHAT 05/01/13 02:14:19 5004 2 : SUBROUTINE PIVLI(A,B,M,L,LU) 3 : C 4 : IMPLICIT INTEGER(I-N) 5 : IMPLICIT REAL*8(A-H,O-Z) 6 : DIMENSION A(M,M),B(M) 7 : C 8 : C TEST de consistance numérique 9 : C 10 : DO 125 I=1,LU 11 : DO 126 K=1,LU 12 : C 13 : IF (DABS(A(I,K)).LE.1.E-6) THEN 14 : A(I,K)=1.E-6 15 : ENDIF 16 : CONTINUE 17 : IF (DABS(B(I)).LE.1.E-6) THEN 18 : B(I)=1.E-6 19 : ENDIF 20 : C 21 : 126 CONTINUE 22 : 125 CONTINUE 23 : C 24 : SUP=ABS(A(L,L)) 25 : NUM=L 26 : EF=1.E-10 27 : C 28 : DO 30 I=L+1,LU 29 : C 30 : IF (ABS(A(I,L)).GT.SUP) THEN 31 : SUP=ABS(A(I,L)) 32 : NUM=I 33 : ENDIF 34 : C 35 : 30 CONTINUE 36 : C 37 : IF (SUP.LT.EF) THEN 38 : C PRINT* 39 : C PRINT*, 'IL N EXISTE AUCUNE VALEUR DE RESOLUTION' 40 : C PRINT* 41 : C PRINT*, 'LA MATRICE N EST PAS INVERSIBLE' 42 : C PRINT* 43 : STOP 44 : ENDIF 45 : C 46 : DO 35 I=L,LU 47 : C 48 : T=A(L,I) 49 : A(L,I)=A(NUM,I) 50 : A(NUM,I)=T 51 : C 52 : 35 CONTINUE 53 : C 54 : T=B(L) 55 : B(L)=B(NUM) 56 : B(NUM)=T 57 : C 58 : RETURN 59 : END 60 : 61 : 62 :
© Cast3M 2003 - All rights reserved.
Disclaimer