Télécharger gflex5.eso

Retour à la liste

Numérotation des lignes :

  1. C GFLEX5 SOURCE CB215821 17/11/30 21:16:21 9639
  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.  
  54. -INC PPARAM
  55. -INC CCOPTIO
  56. -INC CCREEL
  57. DIMENSION AB(10,*)
  58. C
  59. C---- CALCUL DE QUELQUES CONSTANTES
  60. DT=CTC*DELTAT/RF
  61. DTPI=DT/XPI
  62. XI=DLL/RF
  63. DK2=XPI/(8.*XI)
  64. C
  65. C---- CALCUL DE AK1 ET AK2
  66. OM12=(2.*XPI*RF*FREQ1/CTC)**2
  67. OM22=(2.*XPI*RF*FREQ2/CTC)**2
  68. SQ1=SQRT( (1.-BETA)**2*OM12**2 + 4.*BETA**2*OM12)
  69. SQ2=SQRT( (1.-BETA)**2*OM22**2 + 4.*BETA**2*OM22)
  70. AK1=SQRT( ((1.+BETA)*OM12 + SQ1)/(2.*BETA) )
  71. AK2=SQRT( ((1.+BETA)*OM22 + SQ2)/(2.*BETA) )
  72. C
  73. C
  74. C============================================
  75. C BOUCLE SUR LES PAS DE TEMPS
  76. C=============================================
  77. C
  78. DO 40 L=1,LANBN
  79. T=L*DELTAT*CTC/RF
  80. C
  81. C 1- CALCUL DES FONCTIONS DE GREEN POUR X=0
  82. C ======================================
  83. C
  84. C CALCUL DU PAS D INTEGRATION
  85. DK0=XPI/(16.*T*AK2)
  86. NP0=INT((AK2-AK1)/DK0)
  87. C
  88. C------ INITIALISATION DE GREEI
  89. GREE0 = 0.D0
  90. GREE2 = 0.D0
  91. GREE4 = 0.D0
  92. C
  93. C------ INTEGRATION SUR K
  94. C
  95. DO 10 P=0,NP0
  96. AK=AK1+P*DK0
  97. U=AK**2
  98. BU=BETA+(1.+BETA)*U
  99. DU=SQRT(BU**2-4.*BETA*(U**2))
  100. WU=SQRT((BU-DU)/2.)
  101. RU=(U-WU**2)/BETA
  102. RESU=SIN(WU*T)*EXP(-EPS*WU*T)/(WU*(1.+U/(1.+RU)**2))
  103. GREE0 = GREE0 + DK0*RESU
  104. GREE2 = GREE2 + DK0*RESU*U
  105. GREE4 = GREE4 + DK0*RESU*U*U
  106. 10 CONTINUE
  107. C
  108. GREE0 = GREE0
  109. GREE2 = GREE2
  110. GREE4 = GREE4
  111. C
  112. C 2- CALCUL DES FONCTIONS DE GREEN POUR X=L
  113. C ======================================
  114. C
  115. C------ CALCUL DU PAS D INTEGRATION DKL ET DU NOMBRE DE PAS NPL
  116. DKL=MIN(DK0,DK2)
  117. NPL=INT((AK2-AK1)/DKL)
  118. C
  119. C------ INITIALISATION DES GREELI
  120. GREEL0 = 0.D0
  121. GREEL1 = 0.D0
  122. GREEL2 = 0.D0
  123. GREEL3 = 0.D0
  124. GREEL4 = 0.D0
  125. C
  126. C------ BOUCLE SUR K
  127. C
  128. DO 20 P=0,NPL
  129. AK=AK1+P*DKL
  130. U=AK*AK
  131. BU=BETA+(1.+BETA)*U
  132. DU=SQRT(BU**2-4.*BETA*(U**2))
  133. WU=SQRT((BU-DU)/2.)
  134. RU=(U-WU**2)/BETA
  135. SIEXP=SIN(WU*T)*EXP(-EPS*WU*T)
  136. RESU1=SIEXP*COS(AK*XI)/(WU*(1.+U/(1+RU)**2))
  137. RESU2=SIEXP*SIN(AK*XI)/(WU*(1.+U/(1+RU)**2))
  138. GREEL0 = GREEL0 + DKL*RESU1
  139. GREEL1 = GREEL1 + DKL*RESU2*AK
  140. GREEL2 = GREEL2 + DKL*RESU1*U
  141. GREEL3 = GREEL3 + DKL*RESU2*AK*U
  142. GREEL4 = GREEL4 + DKL*RESU1*U*U
  143. 20 CONTINUE
  144. C
  145. GREEL0 = GREEL0
  146. GREEL1 = GREEL1
  147. GREEL2 = GREEL2
  148. GREEL3 = GREEL3
  149. GREEL4 = GREEL4
  150. C
  151. C 3- CALCUL DES AB
  152. C =============
  153. AB(1,L) = DTPI*GREE0
  154. AB(2,L) = 0.D0
  155. AB(3,L) = -DTPI*GREE2
  156. AB(4,L) = 0.D0
  157. AB(5,L) = DTPI*GREE4
  158. AB(6,L) = DTPI*GREEL0
  159. AB(7,L) = -DTPI*GREEL1
  160. AB(8,L) = -DTPI*GREEL2
  161. AB(9,L) = DTPI*GREEL3
  162. AB(10,L) = DTPI*GREEL4
  163. C
  164. 40 CONTINUE
  165. C
  166. RETURN
  167. C
  168. END
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales