C GFLEX2    SOURCE    CB215821  17/11/30    21:16:18     9639           
C
C     GFLEX2    SOURCE    VACE      25/11/88
C
      SUBROUTINE GFLEX2(AB,DLL,RF,CTC,DELTAT,LANBN,FREQ1,FREQ2)
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)
      integer p
C
C
C  =====================================================================
C                     MODELE DE BERNOUILLI-EULER
C                     --------------------------
C
C
C  SOUS-PROGRAMME FORTRAN APPELE PAR GREEN1 POUR CALCULER LES FCTS DE
C  GREEN FILTREES EN FLEXION PAR INTEGRATION PAR LA METHODE DES TRAPEZES
C
C  LA FONCTION DE GREEN EST DEFINI PAR :
C  -------------------------------------
C     G(O,T) = INTEGRALE SUR K ENTRE AK1 ET AK2 DE :
C              SIN(K*K*T)/K*K*XPI
C     G(L,T) = INTEGRALE SUR K ENTRE AK1 ET AK2 DE :
C              SIN(K*K*T)*COS(K*XI)/K*K*XPI
C
C     AVEC  AK=SQRT(2*XPI*RF*FREQ/CTC)  OU FREQ EST LA FREQUENCE
C
C  DEFINITION DES ARGUMENTS :
C  --------------------------
C     AB     : TABLEAU 10*LANBN DONNANT LES INTEGRALES DES FONCTIONS
C              DE GREEN ET DE LEURS DERIVEES A CHAQUE PAS DE TEMPS
C     DLL    : LONGUEUR DE LA POUTRE
C     RF     : DIMENSION TRANSVERSE DE LA POUTRE
C     CTC    : TEMPS DE CALCUL
C     DELTAT : PAS DE TEMPS
C     LANBN  : NOMBRE DE PAS DE TEMPS
C     FREQ1  : FREQUENCE BASSE DU FILTRE
C     FREQ2  : FREQUENCE HAUTE DU FILTRE
C
C
C  CREATION    : 25/11/88
C  PROGRAMMEUR : VACELET
C  =====================================================================
C
C     VARIABLES UTILISEES :
C     GREEI  : INTEGRALE DONNANT LA DERIVEE IEME DE GREEN EN 0
C     GREELI : INTEGRALE DONNANT LA DERIVEE IEME DE GREEN EN L
C

-INC PPARAM
-INC CCOPTIO
-INC CCREEL
      DIMENSION AB(10,*)
C
C---- DEFINITION DE QUELQUES CONSTANTES
      AK1=SQRT(2.*XPI*RF*FREQ1/CTC)
      AK2=SQRT(2.*XPI*RF*FREQ2/CTC)
      XI=DLL/RF
      U1=AK1**2
      U2=AK2**2
      AA=XPI/(16.*AK2)
      BB=XPI/(8.*XI)
      DT=CTC*DELTAT/RF
      DTPI=DT/XPI
C
C=====================================C
C     BOUCLE SUR LES PAS DE TEMPS     C
C=====================================C
C
      DO 40 L=1,LANBN
        T=L*DELTAT*CTC/RF
C
C    1- CALCUL DES FONCTIONS DE GREEN POUR X=0
C       ======================================
C
C------ CALCUL DU PAS D INTEGRATION DK ET DU NOMBRE DE PAS NP0
        DK= MIN(AA/T,(AK2-AK1)/100)
        NP0=INT((AK2-AK1)/DK)
C
C------ INITIALISATION DES VARIABLES GREEI
        GREE0 = .5D0*DK*SIN(U1*T)/U1
        GREE2 = U1*GREE0
        GREE4 = U1*GREE2
C
C------ INTEGRATION SUR K
C
        DO 10 P=1,NP0-1
          AK=AK1+P*DK
          U=AK*AK
          UT=U*T
          RESU=DK*SIN(UT)
          GREE0 = GREE0 + RESU/U
          GREE2 = GREE2 + RESU
          GREE4 = GREE4 + RESU*U
  10    CONTINUE
C
        RESU2=.5*DK*SIN(U2*T)
        GREE0 = GREE0 + RESU2/U2
        GREE2 = GREE2 + RESU2
        GREE4 = GREE4 + RESU2*U2
C
C
C
C    2- CALCUL DES FONCTIONS DE GREEN POUR X=L
C       ======================================
C
C------ CALCUL DU PAS DK0 ET DU NOMBRE DE PAS NPL
        DK0=MIN(AA/T,BB)
        DK0= MIN (DK0,(AK2-AK1)/100)
        NPL=INT((AK2-AK1)/DK0)
C
C------ INITIALISATION DES GREELI
        DKL=DK0/2.
        AL1=DKL*SIN(U1*T)
        BL1=AL1*COS(AK1*XI)
        BL2=AL1*SIN(AK1*XI)
        GREEL0 = BL1/U1
        GREEL1 = BL2/AK1
        GREEL2 = BL1
        GREEL3 = BL2*AK1
        GREEL4 = BL1*U1
C
C------ INTEGRATION SUR K
C
        DO 20 P=1,NPL-1
          AK=AK1+P*DK0
          U=AK**2
          AV=U*T
          AW=AK*XI
          AY=AV+AW
          AZ=AV-AW
          SIY=SIN(AY)
          SIZ=SIN(AZ)
          CIY=COS(AY)
          CIZ=COS(AZ)
C
          GREEL0 = GREEL0 + DKL*(SIY+SIZ)/U
          GREEL1 = GREEL1 + DKL*(CIZ-CIY)/AK
          GREEL2 = GREEL2 + DKL*(SIY+SIZ)
          GREEL3 = GREEL3 + DKL*(CIZ-CIY)*AK
          GREEL4 = GREEL4 + DKL*(SIY+SIZ)*U
  20    CONTINUE
C
        CL1=DKL*SIN(U2*T)
        DL1=CL1*COS(AK2*XI)
        DL2=CL1*SIN(AK2*XI)
C
        GREEL0 = GREEL0 + DL1/U2
        GREEL1 = GREEL1 + DL2/AK2
        GREEL2 = GREEL2 + DL1
        GREEL3 = GREEL3 + DL2*AK2
        GREEL4 = GREEL4 + DL1*U2
C
C
C    3- CALCUL DES AB
C       =============
C
        AB(1,L)  =  DTPI*GREE0
        AB(2,L)  =  0.D0
        AB(3,L)  = -DTPI*GREE2
        AB(4,L)  =  0.D0
        AB(5,L)  =  DTPI*GREE4
        AB(6,L)  =  DTPI*GREEL0
        AB(7,L)  = -DTPI*GREEL1
        AB(8,L)  = -DTPI*GREEL2
        AB(9,L)  =  DTPI*GREEL3
        AB(10,L) =  DTPI*GREEL4
C
  40  CONTINUE
C
      RETURN
C
      END




 
