C NTNST     SOURCE    PV090527  25/09/04    00:43:37     12355          

C=======================================================================
C=                            N T N S T                                =
C=                            ---------                                =
C=                                                                     =
C=  Fonction :                                                         =
C=  ----------                                                         =
C=  Ajoute, a la matrice de rigidite globale, la contribution du point =
C=  de Gauss donnee par la matrice elementaire N et le jacobien.       =
C=  Contribution = transposee(N) * N * Jacobien                        =
C=                                                                     =
C=  Parametres :                                                       =
C=  ------------                                                       =
C=   XGENE(NST,LRE)  (E)   Matrice elementaire N au point de Gauss     =
C=   DJAC            (E)   Jacobien au point de Gauss considere        =
C=   LRE             (E)   Nombre de DDLs de la matrice de rigidite    =
C=   NST             (E)   Nombre de lignes de la matrice N (XGENE)    =
C=   REL            (E/S)  Matrice de rigidite GLOBALE                 =
C=                                                                     =
C=  Remarque : Si le parametre NST est superieur a 10, il faudra redi- =
C=  ---------- mensionner le tableau de travail Wrk !                  =
C=======================================================================

      SUBROUTINE NTNST (XGENE,DJAC,LRE,NST,REL)

      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8 (A-H,O-Z)

-INC CCREEL

      DIMENSION XGENE(NST,*),REL(LRE,*)
      DIMENSION Wrk(10)

C= Boucles sur les DDLs (iX et iY)
      DO iX=1,LRE
        DO i=1,NST
          Wrk(i)=DJAC*XGENE(i,iX)
        ENDDO
        DO iY=1,iX
C== CC = Jacobien * transposee(N)(iX,i) * N(i,iY) (somme sur i)
          CC=XZero
          DO i=1,NST
            CC=CC+XGENE(i,iY)*Wrk(i)
          ENDDO
C== REL est une matrice symetrique
          REL(iX,iY)=REL(iX,iY)+CC
          REL(iY,iX)=REL(iX,iY)
        ENDDO
      ENDDO

      RETURN
      END



 
 
