C COQ8RI    SOURCE    CHAT      05/01/12    22:22:13     5004
      SUBROUTINE COQ8RI(B,FACT,D,LRE,NBPGAU,IA,NBNN,RIG)
C=======================================================================
C ENTREES
C  B(5,LRE)   :    MATRICE DE DERIVEES DE FONCTIONS DE FORMES
C  FACT       :    DETERMINANT DU JACOBIEN * POIDS DE GAUSS
C  D(5,5)     :    MATRICE DE HOOKE
C  LRE        :    NOMBRE DE DDL
C  NBPGAU     :    NOMBRE DE POINTS DE GAUSS
C  IA         :    NUMERO DE POINT DE GAUSS
C  NBNN       :    NOMBRE DE NOEUDS
C
C SORTIES
C  RIG(LRE,LRE):  MATRICE DE RIGIDITE ELEMENTAIRE
C
C                RECUPERATION BILBO   OCTOBRE 85
C=======================================================================
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8 (A-H,O-Z)
      PARAMETER (XZER=0.D0)
      DIMENSION RIG(LRE,*),D(5,*),B(5,*)
      DIMENSION  DAM(48,5)
C
C           CALCUL DE BTDB
C
      DO 60 I =1,LRE
      DO 60 J = 1,5
      DAM(I,J) = XZER
      DO 60 K = 1,5
      DAM(I,J) = DAM(I,J) + B(K,I)*D(K,J)
   60 CONTINUE
      DO 70 I = 1,LRE
      DO 70 J = I,LRE
      DO 70 K = 1,5
      RIG(I,J) = RIG(I,J) + DAM(I,K)*B(K,J)*FACT
   70 CONTINUE
C
      IF (IA.EQ.NBPGAU)THEN
       DO 110 I = 1,LRE
       DO 110 J = I,LRE
  110  RIG(J,I) = RIG(I,J)
C
C     ON AJOUTE LES COEFF POUR LA TORSION NORMALE AU PLAN DE LA COQUE
C
       VMAX = XZER
       DO 120 IK = 1,NBNN
       JK4 = (IK-1)*6 + 4
       JK6 = JK4 + 2
       DO 120 JK = JK4,JK6
       VMIN = RIG(JK,JK)
       IF (VMAX.GE.VMIN) GO TO 120
       VMAX = RIG(JK,JK)
  120  CONTINUE
       DO 130 IK = 1,NBNN
       JK4 = (IK-1)*6 + 4
       JK6 = JK4 + 2
       DO 130 JK = JK4,JK6
  130  RIG(JK,JK)=RIG(JK,JK)+1.D-9*VMAX
      ENDIF
C
      RETURN
      END

