Télécharger invmat.eso

Retour à la liste

Numérotation des lignes :

  1. C INVMAT SOURCE PV 16/11/17 21:59:42 9180
  2. SUBROUTINE INVMAT(MAT,MATRIK,IRET)
  3. IMPLICIT INTEGER(I-N)
  4. IMPLICIT REAL*8 (A-H,O-Z)
  5. c **************************************
  6. C * ROUTINE d inversion de MATRIK *
  7. C * Diagonale *
  8. C * MAT : MATRIK entree *
  9. C * MATRIK : MATRIK :sortie *
  10. C * MATRIK est la matrice inverse de *
  11. C * MAT sous forme matrice elementaire *
  12. C * est sous forme morse *
  13. C **************************************
  14.  
  15. POINTEUR MAT.MATRIK
  16.  
  17. SEGACT MAT
  18. IF (MAT.IRIGEL(7,1).NE.5) THEN
  19. WRITE(6,*) 'Impossible d inverser une'
  20. WRITE(6,*) 'matrice non diagonale'
  21. IRET=1
  22. RETURN
  23. END IF
  24. SEGDES MAT
  25.  
  26. CALL MCOPY(MAT,MATRIK)
  27. SEGACT MATRIK*MOD
  28.  
  29. IMATRI=IRIGEL(4,1)
  30. SEGACT IMATRI
  31.  
  32. NBSOUS=LIZAFM(/1)
  33. NBME=LIZAFM(/2)
  34.  
  35. DO I=1,NBSOUS
  36. DO J=1,NBME
  37. IZAFM=LIZAFM(I,J)
  38. SEGACT IZAFM*MOD
  39. NBEL=AM(/1)
  40. DO K=1,NBEL
  41. AM(K,1,1)=1/AM(K,1,1)
  42. END DO
  43. SEGDES IZAFM
  44. END DO
  45. END DO
  46.  
  47. SEGDES IMATRI
  48. SEGDES MATRIK
  49.  
  50. END
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales