1 : C GFLEX5 SOURCE PV 05/04/25 21:15:28 5077 2 : C 3 : C GFLEX5 SOURCE VACE 30/11/88 4 : C 5 : SUBROUTINE GFLEX5(AB,DLL,RF,CTC,DELTAT,LANBN,FREQ1,FREQ2,BETA,EPS) 6 : IMPLICIT INTEGER(I-N) 7 : IMPLICIT REAL*8(A-H,O-Z) 8 : integer p 9 : C 10 : C 11 : C ===================================================================== 12 : C MODELE DE TIMOSHENKO AVEC AMORTISSEMENT PHYSIQUE 13 : C ------------------------------------------------ 14 : C 15 : C 16 : C SOUS-PROGRAMME FORTRAN APPELE PAR GREEN1 POUR CALCULER EN FLEXION 17 : C LES FONCTIONS DE GREEN FILTREES DE TIMOSHENKO AVEC AMORTISSEMENT 18 : C 19 : C LA FONCTION DE GREEN EST DEFINI PAR : 20 : C ------------------------------------ 21 : C G(O,T) = INTEGRALE SUR K ENTRE AK1 ET AK2 DE : 22 : C SIN(OM*T)*EXP(-EPS*OM*T)/(1+(K/(1+R))**2)*OM 23 : C G(L,T) = INTEGRALE SUR K ENTRE AK1 ET AK2 DE : 24 : C SIN(OM*T)*COS(K*XI)*EXP(-EPS*OM*T)/(1+(K/(1+R))**2)*OM 25 : C 26 : C OM = 2*XPI*FREQ*RF/C 27 : C OM = SQRT((B-D)/2) AVEC B = BETA + (1+BETA)*K**2 28 : C D = SQRT(B**2 - 4*BETA*K**4) 29 : C R = (K**2 -OM**2)/BETA 30 : C 31 : C DEFINITION DES ARGUMENTS : 32 : C -------------------------- 33 : C AB : TABLEAU 10*LANBN DONNANT LES INTEGRALES DES FONCTIONS 34 : C DE GREEN ET DE LEURS DERIVEES A CHAQUE PAS DE TEMPS 35 : C DLL : LONGUEUR DE LA POUTRE 36 : C RF : DIMENSION TRANSVERSE DE LA POUTRE 37 : C CTC : TEMPS DE CALCUL 38 : C DELTAT : PAS DE TEMPS 39 : C LANBN : NOMBRE DE PAS DE TEMPS 40 : C FREQ1 : FREQUENCE BASSE DU FILTRE 41 : C FREQ2 : FREQUENCE HAUTE DU FILTRE 42 : C BETA : COEFFICIENT DE FORME 43 : C EPS : COEFFICIENT D AMORTISSEMENT 44 : C 45 : C CREATION : 10/12/88 46 : C PROGRAMMEUR : VACELET 47 : C ===================================================================== 48 : C 49 : C DEFINITION DES VARIABLES UTILISEES : 50 : C GREEI : INTEGRALE DONNANT LA DERIVEE IEME DE GREEN EN 0 51 : C GREELI : INTEGRALE DONNANT LA DERIVEE IEME DE GREEN EN L 52 : C 53 : -INC CCOPTIO 54 : -INC CCREEL 55 : DIMENSION AB(10,*) 56 : C 57 : C---- CALCUL DE QUELQUES CONSTANTES 58 : DT=CTC*DELTAT/RF 59 : DTPI=DT/XPI 60 : XI=DLL/RF 61 : DK2=XPI/(8.*XI) 62 : C 63 : C---- CALCUL DE AK1 ET AK2 64 : OM12=(2.*XPI*RF*FREQ1/CTC)**2 65 : OM22=(2.*XPI*RF*FREQ2/CTC)**2 66 : SQ1=SQRT( (1.-BETA)**2*OM12**2 + 4.*BETA**2*OM12) 67 : SQ2=SQRT( (1.-BETA)**2*OM22**2 + 4.*BETA**2*OM22) 68 : AK1=SQRT( ((1.+BETA)*OM12 + SQ1)/(2.*BETA) ) 69 : AK2=SQRT( ((1.+BETA)*OM22 + SQ2)/(2.*BETA) ) 70 : C 71 : C 72 : C============================================ 73 : C BOUCLE SUR LES PAS DE TEMPS 74 : C============================================= 75 : C 76 : DO 40 L=1,LANBN 77 : T=L*DELTAT*CTC/RF 78 : C 79 : C 1- CALCUL DES FONCTIONS DE GREEN POUR X=0 80 : C ====================================== 81 : C 82 : C CALCUL DU PAS D INTEGRATION 83 : DK0=XPI/(16.*T*AK2) 84 : NP0=IDINT((AK2-AK1)/DK0) 85 : C 86 : C------ INITIALISATION DE GREEI 87 : GREE0 = 0.D0 88 : GREE2 = 0.D0 89 : GREE4 = 0.D0 90 : C 91 : C------ INTEGRATION SUR K 92 : C 93 : DO 10 P=0,NP0 94 : AK=AK1+P*DK0 95 : U=AK**2 96 : BU=BETA+(1.+BETA)*U 97 : DU=SQRT(BU**2-4.*BETA*(U**2)) 98 : WU=SQRT((BU-DU)/2.) 99 : RU=(U-WU**2)/BETA 100 : RESU=SIN(WU*T)*EXP(-EPS*WU*T)/(WU*(1.+U/(1.+RU)**2)) 101 : GREE0 = GREE0 + DK0*RESU 102 : GREE2 = GREE2 + DK0*RESU*U 103 : GREE4 = GREE4 + DK0*RESU*U*U 104 : 10 CONTINUE 105 : C 106 : GREE0 = GREE0 107 : GREE2 = GREE2 108 : GREE4 = GREE4 109 : C 110 : C 2- CALCUL DES FONCTIONS DE GREEN POUR X=L 111 : C ====================================== 112 : C 113 : C------ CALCUL DU PAS D INTEGRATION DKL ET DU NOMBRE DE PAS NPL 114 : DKL=MIN(DK0,DK2) 115 : NPL=IDINT((AK2-AK1)/DKL) 116 : C 117 : C------ INITIALISATION DES GREELI 118 : GREEL0 = 0.D0 119 : GREEL1 = 0.D0 120 : GREEL2 = 0.D0 121 : GREEL3 = 0.D0 122 : GREEL4 = 0.D0 123 : C 124 : C------ BOUCLE SUR K 125 : C 126 : DO 20 P=0,NPL 127 : AK=AK1+P*DKL 128 : U=AK*AK 129 : BU=BETA+(1.+BETA)*U 130 : DU=SQRT(BU**2-4.*BETA*(U**2)) 131 : WU=SQRT((BU-DU)/2.) 132 : RU=(U-WU**2)/BETA 133 : SIEXP=SIN(WU*T)*EXP(-EPS*WU*T) 134 : RESU1=SIEXP*COS(AK*XI)/(WU*(1.+U/(1+RU)**2)) 135 : RESU2=SIEXP*SIN(AK*XI)/(WU*(1.+U/(1+RU)**2)) 136 : GREEL0 = GREEL0 + DKL*RESU1 137 : GREEL1 = GREEL1 + DKL*RESU2*AK 138 : GREEL2 = GREEL2 + DKL*RESU1*U 139 : GREEL3 = GREEL3 + DKL*RESU2*AK*U 140 : GREEL4 = GREEL4 + DKL*RESU1*U*U 141 : 20 CONTINUE 142 : C 143 : GREEL0 = GREEL0 144 : GREEL1 = GREEL1 145 : GREEL2 = GREEL2 146 : GREEL3 = GREEL3 147 : GREEL4 = GREEL4 148 : C 149 : C 3- CALCUL DES AB 150 : C ============= 151 : AB(1,L) = DTPI*GREE0 152 : AB(2,L) = 0.D0 153 : AB(3,L) = -DTPI*GREE2 154 : AB(4,L) = 0.D0 155 : AB(5,L) = DTPI*GREE4 156 : AB(6,L) = DTPI*GREEL0 157 : AB(7,L) = -DTPI*GREEL1 158 : AB(8,L) = -DTPI*GREEL2 159 : AB(9,L) = DTPI*GREEL3 160 : AB(10,L) = DTPI*GREEL4 161 : C 162 : 40 CONTINUE 163 : C 164 : RETURN 165 : C 166 : END 167 : 168 : 169 : 170 :
© Cast3M 2003 - All rights reserved.
Disclaimer