      SUBROUTINE E1AQ1C(NBPOLY,NPI,POIDS,Q13,DQ13,ip,f1,f2,DFM1DP,
     +                  poidel,dfm1,RZ)
C ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C                    S.P. E1AP1D
C                   ------------
C ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C BUT: IP     : PASSAGE DES D.L. PAR COMPOSANTE AUX NOEUDS 
C      F1,F2  : COOR DES POINTS D INT.  NUM. DE L ELEMENT COURANT
C      DFM1   = (DF) -1 AUX POINTS D INTEGRATION
C      DFM1DP = DERIVEES DES POLYNOMES AUX POINTS D INTEGRATION
C      POIDEL : POIDS * DELTA * R  AUX POINTS D'INTEGRATION
C
C PARAMETRES D ENTREE :
C ---------------------
C NBPOLY : NBRE DE POLYNOMES DE BASE
C NPI    : NBRE DE POINTS D INTEGRATION SUR L ELEMENT
C POIDS  : VALEUR DES NPI POIDS
C Q13    : Q13(I,J)=VALEUR DE PI(POINT J D INTEGRATION)
C DQ13   : DQ13(I,J,L)=DERIVEE DPJ/DXI(POINT L)
C RZ(NOE,NDIM): RAYON ET COTE DES 3 POINTS DE L ELEMENT
C ......................................................................
c  programmeur : modulef
c ......................................................................
      implicit none
      integer nbpoly, NPI, IP(8), j, i2, i, l
      DOUBLE PRECISION POIDS(NPI),Q13(NBPOLY,NPI),DQ13(2,NBPOLY,NPI),
     +          RZ(nbpoly,2),F1(5),F2(5),DFM1(4,4),DFM1DP(2,4,4),
     +          POIDEL(4),RR,ZZ,DF1,DF2,DF3,DF4,D,D2PI
      DATA D2PI/ 6.2831853071795862D0 /
C
C     IP(I) = POSITION DU I-EME D.L. PAR COMPOSANTE DANS L ORDRE
C             NOEUD PAR NOEUD
C
      IP( 1) = 1
      IP(8)  = 8
      J      = 1
      I2     = 2 * NBPOLY - 2
      DO 1 I = 2,I2,2
         IP(J+NBPOLY) = I
         J = J + 1
         IP(J) = I + 1
    1 CONTINUE
C
C      F1,DFM1,DELTA
C
      DO 2 L=1,NPI
         RR = 0.D0
         ZZ = 0.D0
         DF1= 0.D0
         DF2= 0.D0
         DF3= 0.D0
         DF4= 0.D0
         DO 3 I=1,NBPOLY
            RR  = RR + Q13(I,L) * RZ(I,1)
            ZZ  = ZZ + Q13(I,L) * RZ(I,2)
            DF1 = DF1 + DQ13(1,I,L) * RZ(I,1)
            DF2 = DF2 + DQ13(2,I,L) * RZ(I,1)
            DF3 = DF3 + DQ13(1,I,L) * RZ(I,2)
            DF4 = DF4 + DQ13(2,I,L) * RZ(I,2)
    3    CONTINUE
         F1(L) = RR
         F2(L) = ZZ
         D     = DF1 * DF4 - DF2 * DF3
         DFM1(1,L) = DF4 / D
         DFM1(2,L) =-DF2 / D
         DFM1(3,L) =-DF3 / D
         DFM1(4,L) = DF1 / D
         POIDEL(L) = DABS(D) * POIDS(L) * D2PI * RR
C
C        DFM1DP = DF-1 * DP SUR T UNITE
C
         DO 4 I=1,NBPOLY
            DFM1DP(1,I,L) = DFM1(1,L) * DQ13(1,I,L) +
     +                      DFM1(3,L) * DQ13(2,I,L)
            DFM1DP(2,I,L) = DFM1(2,L) * DQ13(1,I,L) +
     +                      DFM1(4,L) * DQ13(2,I,L)
    4    CONTINUE
    2 CONTINUE
C
C     COORDONNEES DU BARYCENTRE DE L'ELEMENT COURANT
C
      RR  = 0
      ZZ  = 0
      L   = NPI+1
      DO 5 I=1,NBPOLY
         RR = RR + RZ(I,1)
         ZZ = ZZ + RZ(I,2)
    5 CONTINUE
      F1(L) = RR/4.D0
      F2(L) = ZZ/4.D0
      END
