gflex2
C GFLEX2 SOURCE CB215821 17/11/30 21:16:18 9639 C C GFLEX2 SOURCE VACE 25/11/88 C 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 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
© Cast3M 2003 - Tous droits réservés.
Mentions légales