C MFDKT     SOURCE    CHAT      05/01/13    01:44:32     5004
      SUBROUTINE MFDKT(QSI,ETA,XEL,VNM)
C=======================================================================
C
C     EVALUATION DE LA  MATRICE DE MASSE DKT  D.D.L. FLEXION
C
C  ENTREES
C   QSI ETA COORDONNEES REDUITES DU POINT DE GAUSS
C   XEL(3,3)=COORDONNEES LOCALES DE L ELEMENT
C  SORTIES
C   VNM(9)  =FONCTION DE FORME POUR LA MASSE
C                 EBERSOLT AOUT 85
C=======================================================================
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)
      DIMENSION XEL(3,*),VNM(*)
      DATA UN,DEUX,TROIS/1.D0,2.D0,3.D0/
      DATA XZER/0.D0/
C
C     MISE A ZERO  DE BB
C
      DO 10 IA=1,9
      VNM(IA)=XZER
  10  CONTINUE
C
C         CALCUL DES FONCTIONS D INTERPOLATION
C
      AL=UN-QSI-ETA
      A=QSI*ETA*AL
C
      VNM(1)=(AL**2)*(TROIS-DEUX*AL)+DEUX*A
      VNM(2)=(AL**2)*QSI+(A/DEUX)
      VNM(3)=(AL**2)*ETA+(A/DEUX)
      VNM(4)=(TROIS-DEUX*QSI)*(QSI**2)+DEUX*A
      VNM(5)=(QSI-UN)*(QSI**2)-A
      VNM(6)=(QSI**2)*ETA+(A/DEUX)
      VNM(7)=(TROIS-DEUX*ETA)*(ETA**2)+DEUX*A
      VNM(8)=(ETA**2)*QSI+(A/DEUX)
      VNM(9)=(ETA-UN)*(ETA**2)-A
C
C         VARIABLES DANS LE REPERE X,Y
C
      X21=XEL(1,2)-XEL(1,1)
      X13=XEL(1,1)-XEL(1,3)
      Y13=XEL(2,1)-XEL(2,3)
C
      C     =VNM(2)*X21-VNM(3)*X13
      VNM(2)=-VNM(3)*Y13
      VNM(3)=-C
      C     =VNM(5)*X21-VNM(6)*X13
      VNM(5)=-VNM(6)*Y13
      VNM(6)=-C
      C     =VNM(8)*X21-VNM(9)*X13
      VNM(8)=-VNM(9)*Y13
      VNM(9)=-C
C
      RETURN
      END

