C SIGJOI    SOURCE    AM        11/05/26    21:16:41     6982
C SIGLIA    SOURCE    CHAT      05/01/13    03:16:39     5004
C SIGLIA    SOURCE    DJER     23/01/96
      SUBROUTINE SIGJOI(NMATT,XDDL,WORK,LRE,XSTRS,IDIM,NSTRS,CMATE)
C====================================================================
C     CALCULE DES CONTRAINTES  POUR JOI1 :
C      element de liaison a 2 noeuds (6 ddl par noeuds)
C     (ON CALCUL en fait DES EFFORTs NODAUX )
C====================================================================
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)
      CHARACTER*8 CMATE
      DIMENSION XDDL(LRE),WORK(NMATT),XSTRS(*),DEPL(12)
      DIMENSION HK3(6,6),HK2(3,3)
*-------------------------------------------------------------
       DO I =1,LRE
         DEPL(I) = XDDL(I)
       END DO
C
      IF (IDIM.EQ.3) THEN
C CAS D'UN MATERIAU ORTHOTROPE
C CALCUL DES EFFORTS NODAUX
      IF (CMATE.EQ.'ORTHOTRO') THEN
       DO I =1,NSTRS
         XSTRS(I)=WORK(I+6)*(DEPL(I+NSTRS)-DEPL(I))
       END DO
C CAS D'UN MATERIAU ANISOTROPE
      ELSE IF (CMATE.EQ.'ANISOTRO') THEN
C INSERTION DES RAIDEURS MATERIELLES DANS UNE MATRICE 6*6
        K = 1
        DO I=1,NSTRS
         HK3(I,I)=WORK(I+6)
         DO J=1,I-1
          HK3(I,J)=WORK(K+12)
          HK3(J,I)=HK3(I,J)
          K = K+1
         ENDDO
        ENDDO
C CALCUL DES EFFORTS NODAUX
        DO I=1,NSTRS
         DO J=1,NSTRS
          XSTRS(I)=XSTRS(I)+HK3(I,J)*(DEPL(J+NSTRS)-DEPL(J))
         ENDDO
        ENDDO
      ENDIF
C
*
C
      ELSE IF (IDIM.EQ.2) THEN
C CAS D'UN MATERIAU ORTHOTROPE
C CALCUL DES EFFORTS NODAUX
      IF (CMATE.EQ.'ORTHOTRO') THEN
       DO I =1,NSTRS
         XSTRS(I)=WORK(I+2)*(DEPL(I+NSTRS)-DEPL(I))
       END DO
C CAS D'UN MATERIAU ANISOTROPE
      ELSE IF (CMATE.EQ.'ANISOTRO') THEN
C INSERTION DES RAIDEURS MATERIELLES DANS UNE MATRICE 3*3
        K = 1
        DO I=1,NSTRS
         HK2(I,I)=WORK(I+2)
         DO J=1,I-1
          HK2(I,J)=WORK(K+5)
          HK2(J,I)=HK2(I,J)
          K = K+1
         ENDDO
        ENDDO
C CALCUL DES EFFORTS NODAUX
        DO I=1,NSTRS
         DO J=1,NSTRS
          XSTRS(I)=XSTRS(I)+HK2(I,J)*(DEPL(J+NSTRS)-DEPL(J))
         ENDDO
        ENDDO
      ENDIF
      ENDIF
*
*
*
*-------------------------------------------------------------
*      WRITE(*,*) '**  EFFORT  ( dans siglia) ** '
*      WRITE(*,1992) (XSTRS(IC),IC=1,12)
*1992  FORMAT(6(6(1X,E12.5),/))
*-------------------------------------------------------------
      RETURN
      END





