C BAREPS    SOURCE    CHAT      05/01/12    21:33:53     5004
      SUBROUTINE BAREPS(COORD,DEPLA,DEFO,IDEUX)
C-----------------------------------------------------------------------
C  ROUTINE DE CALCUL DES DEFORMATIONS POUR LA BARRE
C
C  ENTREE
C          DEPLA   DEPLACEMENTS
C          COORD   COORDONNEES DES 2 NOEUDS
C          IDEUX   INDICE POUR DEFORMATIONS DU 2-EME ORDRE
C
C  SORTIE
C          DEFO    DEFORMATION AUX 2 NOEUDS
C-----------------------------------------------------------------------
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)

-INC PPARAM
-INC CCOPTIO
      DIMENSION DEFO(*),COORD(3,*),V(3),W(3),DEPLA(*)
C
C
      KERRE=0
      V(3)=0.
      DO 1 I=1,IDIM
  1   V(I)=COORD(I,2)-COORD(I,1)
      XL=(V(1)*V(1)+V(2)*V(2)+V(3)*V(3))
      XL=SQRT(XL)
      IF(XL.EQ.0.) GO TO 999
      W(3)=0.
      DO 2 I=1,IDIM
  2   W(I)=(DEPLA(I+IDIM)-DEPLA(I))/XL
      EPS=(W(1)*V(1)+W(2)*V(2)+W(3)*V(3))/XL
      IF(IDEUX.EQ.0) GO TO 100
C
C  SECOND ORDRE
C
      EPS=EPS+(W(1)*W(1)+W(2)*W(2)+W(3)*W(3))*0.5
 100  CONTINUE
      DEFO(1)=EPS
      DEFO(2)=EPS
      RETURN
 999  KERRE=1
      RETURN
      END

