C PIVLI SOURCE CHAT 05/01/13 02:14:19 5004 SUBROUTINE PIVLI(A,B,M,L,LU) C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) DIMENSION A(M,M),B(M) C C TEST de consistance numérique C DO 125 I=1,LU DO 126 K=1,LU C IF (DABS(A(I,K)).LE.1.E-6) THEN A(I,K)=1.E-6 ENDIF CONTINUE IF (DABS(B(I)).LE.1.E-6) THEN B(I)=1.E-6 ENDIF C 126 CONTINUE 125 CONTINUE C SUP=ABS(A(L,L)) NUM=L EF=1.E-10 C DO 30 I=L+1,LU C IF (ABS(A(I,L)).GT.SUP) THEN SUP=ABS(A(I,L)) NUM=I ENDIF C 30 CONTINUE C IF (SUP.LT.EF) THEN C PRINT* C PRINT*, 'IL N EXISTE AUCUNE VALEUR DE RESOLUTION' C PRINT* C PRINT*, 'LA MATRICE N EST PAS INVERSIBLE' C PRINT* STOP ENDIF C DO 35 I=L,LU C T=A(L,I) A(L,I)=A(NUM,I) A(NUM,I)=T C 35 CONTINUE C T=B(L) B(L)=B(NUM) B(NUM)=T C RETURN END