Télécharger hbmzzf.eso

Retour à la liste

Numérotation des lignes :

hbmzzf
  1. C HBMZZF SOURCE BP208322 20/09/18 21:17:00 10718
  2.  
  3. SUBROUTINE HBMZZF(NT,NDDL,OMEG,AiDi,Di,LAMBD,VCTCS,ZZ)
  4.  
  5. *=======================================================================
  6. * Rajoute a Z la raideur dynamique Zf de couplage fluide-elastique
  7. * de granger-paidoussis
  8. *=======================================================================
  9.  
  10. IMPLICIT INTEGER(I-N)
  11. IMPLICIT REAL*8(A-H,O-Z)
  12. INTEGER NHBM,NT,NDDL,H
  13. REAL*8 ZZ(NT,NT),VCTCS(7),LAMBD(NDDL),AiDi(2),Di(2),bi(2)
  14. REAL*8 OMEG,V,cf0,mf0,sf0,cfei,dniR,dniI
  15.  
  16. *-----------------------------------------------------------------------
  17. * 0. Recuperation des coefficients
  18. *-----------------------------------------------------------------------
  19. V = VCTCS(4)
  20. * Coefficient de couplage: mf0 = -(rho_f/2)*(dCLdy)*V^2
  21. mf0 = -VCTCS(1)*VCTCS(7)*(V**2)
  22. * Coefficient d'amortissement: cf0 = (rho_f/2)*(DIAM)*(CD)*V
  23. cf0 = VCTCS(1)*VCTCS(5)*VCTCS(6)*V
  24. * Coefficient de raideur: sf0 = mf0*alpha_0
  25. sf0 = mf0*VCTCS(3)
  26. DO I = 1,2
  27. bi(I) = (Di(I)/VCTCS(5))*V
  28. ENDDO
  29. NHBM = (NT/NDDL - 1)/2
  30.  
  31. *-----------------------------------------------------------------------
  32. * 1. Termes de raideur/amortissement ajoutes
  33. *-----------------------------------------------------------------------
  34. * 1.1 Composante statique (harmonique 0)
  35. DO I=1,NDDL
  36. ZZ(I,I) = ZZ(I,I) + sf0*LAMBD(I)
  37. ENDDO
  38. * 1.2 Boucle sur les harmoniques > 0
  39. DO J=2,2*NHBM,2
  40. DO I=1,NDDL
  41. AA = sf0*LAMBD(I)
  42. BB = (J/2)*OMEG*cf0*LAMBD(I)
  43. ZZ(NDDL*(1+(J-2))+I,NDDL*(1+(J-2))+I) =
  44. & ZZ(NDDL*(1+(J-2))+I,NDDL*(1+(J-2))+I)+AA
  45. ZZ(NDDL*(1+(J-2))+I,NDDL*(1+(J-1))+I) =
  46. & ZZ(NDDL*(1+(J-2))+I,NDDL*(1+(J-1))+I)+BB
  47. ZZ(NDDL*(1+(J-1))+I, NDDL*(1+(J-2))+I) =
  48. & ZZ(NDDL*(1+(J-1))+I,NDDL*(1+(J-2))+I)-BB
  49. ZZ(NDDL*(1+(J-1))+I,NDDL*(1+(J-1))+I) =
  50. & ZZ(NDDL*(1+(J-1))+I,NDDL*(1+(J-1))+I)+AA
  51. ENDDO
  52. ENDDO
  53.  
  54. *-----------------------------------------------------------------------
  55. * 2. Effet memoire
  56. *-----------------------------------------------------------------------
  57. * Boucle sur le nombre de termes
  58. * Les matrices sont de la forme: Zfi = Dfi*(bi*kron(I,Li)-w*kron(Nb,Li))
  59. * Elles ne sont pas stockees mais directement ajoutees a ZZ
  60. DO JJ = 1,2
  61. cfei = mf0*AiDi(JJ)*V/VCTCS(5)
  62. * 2.1 Composante statique
  63. DO I=1,NDDL
  64. ZZ(I,I) = ZZ(I,I) + cfei*LAMBD(I)/bi(JJ)
  65. ENDDO
  66. * 2.2 Boucle sur les harmoniques
  67. DO H = 2,2*NHBM,2
  68. dniR = cfei*bi(JJ)/((bi(JJ))**2+((H/2)*OMEG)**2)
  69. dniI = cfei*OMEG*(H/2)/((bi(JJ))**2+((H/2)*OMEG)**2)
  70. * Boucle sur les DDL
  71. DO K = 1,NDDL
  72. ZZ(NDDL*(1+(H-2))+K,NDDL*(1+(H-2))+K) = LAMBD(K)*dniR
  73. & + ZZ(NDDL*(1+(H-2))+K,NDDL*(1+(H-2))+K)
  74. ZZ(NDDL*(1+(H-2))+K,NDDL*(1+(H-1))+K)=-LAMBD(K)*dniI
  75. & + ZZ(NDDL*(1+(H-2))+K,NDDL*(1+(H-1))+K)
  76. ZZ(NDDL*(1+(H-1))+K,NDDL*(1+(H-2))+K)= LAMBD(K)*dniI
  77. & + ZZ(NDDL*(1+(H-1))+K,NDDL*(1+(H-2))+K)
  78. ZZ(NDDL*(1+(H-1))+K,NDDL*(1+(H-1))+K) = LAMBD(K)*dniR
  79. & + ZZ(NDDL*(1+(H-1))+K,NDDL*(1+(H-1))+K)
  80. ENDDO
  81. ENDDO
  82. ENDDO
  83.  
  84. END
  85.  
  86.  
  87.  

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