Télécharger gflex4.eso

Retour à la liste

Numérotation des lignes :

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

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