C COUMAS    SOURCE    PV        11/03/07    21:16:09     6885
      SUBROUTINE COUMAS(REL,LRE,CARAC,COORD,KERRE)
C-----------------------------------------------------------------------
C  ROUTINE DE CALCUL DE LA MATRICE DE MASSE ELEMENTAIRE DE L ELEMENT DE
C  COUPLAGE LITU
C
C  ENTREE
C          LRE     DIMENSION DU TABLEAU REL
C          CARAC   TABLEAU DE CARACTERISTIQUES GEOMETRIQUES ET
C                  MATERIELLES DU TUYAU FLUIDE  ( 8 VALEURS )
C          COORD   COORDONNEES DES 2 NOEUDS
C
C  SORTIE
C          REL     MATRICE DE MASSE ELEMENTAIRE
C          KERRE   INDICE NON NUL SI PROBLEME , NUL SINON
C-----------------------------------------------------------------------
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)
      DIMENSION REL(LRE,LRE),CARAC(200),COORD(3,2),P(10,10),
     &          XE(2),YE(2),ZE(2),XMATLO(10,10),VECT(3)
      REAL*8 LCAR
C
      KERRE=0
C
      RAY  = CARAC(1)
      RC   = CARAC(2)
      RHO  = CARAC(10)
      LCAR = CARAC(11)
      RHOR = CARAC(12)
C
      DO 1 I=1,3
      VECT(I)=CARAC(2+I)
   1  CONTINUE
C
      DO 2 I=1,2
      XE(I)=COORD(1,I)
      YE(I)=COORD(2,I)
      ZE(I)=COORD(3,I)
   2  CONTINUE
      XL=(XE(2)-XE(1))**2+(YE(2)-YE(1))**2+(ZE(2)-ZE(1))**2
      XL=SQRT(XL)
      IF (XL.EQ.0.) GO TO 999
C
C MODIFICATION DE LA LONGUEUR EFFECTIVE DU TUYAU DANS LE CAS D'UN COUDE
C
      IF (RC.NE.0) THEN
      XL = 2*RC*ASIN(XL/(2*RC))
      ENDIF
C
C CALCUL DE LA MATRICE MASSE ELEMENTAIRE EN AXES LOCAUX
C
      CALL COUMAL(XMATLO,XL,RAY,RC,RHO,LCAR,RHOR)
C
C CALCUL DE LA MATRICE DE PASSAGE
C
      CALL COUPAS(XE,YE,ZE,VECT,P,KERRE)
C
C PASSAGE DE LA MATRICE DE MASSE EN AXES GLOBAUX
C
      CALL COUROT(REL,LRE,P,XMATLO)
      RETURN
999   KERRE=1
      RETURN
      END


