Télécharger deveq5.eso

Retour à la liste

Numérotation des lignes :

  1. C DEVEQ5 SOURCE BP208322 15/07/22 21:15:18 8586
  2. C
  3. c SUBROUTINE DEVEQ5(Q1,Q2,NA1,XK,XASM,XM,XDT,NPAS,FTOTA,
  4. SUBROUTINE DEVEQ5(Q1,Q2,NA1,XM,XDT,NPAS,FTOTA,FAMOR,
  5. & XOPM1,NB1,NB1M)
  6. IMPLICIT INTEGER(I-N)
  7. IMPLICIT REAL*8(A-H,O-Z)
  8. *--------------------------------------------------------------------*
  9. * *
  10. * Operateur DYNE : algorithme de FU - de Vogelaere *
  11. * ________________________________________________ *
  12. * *
  13. * Calcul des deplacements generalises pour le premier demi-pas *
  14. * de temps. *
  15. * *
  16. * Param}tres: *
  17. * *
  18. * es Q1(.,.) Vecteur des deplacements generalises *
  19. * es Q2(.,.) Vecteur des vitesses generalisees *
  20. * e NA1 Nombre total d'inconnues dans la base A *
  21. * e XK Vecteur des raideurs generalisees *
  22. * e XM Vecteur des masses generalisees *
  23. * e XDT Valeurs des pas de temps *
  24. * e NPAS Numero du pas de temps considere *
  25. * e FTOTA Forces exterieures totalisees, sur la base A *
  26. * *
  27. * Auteur, date de creation: *
  28. * Benoit PRABEL, 16/02/2015 *
  29. * *
  30. *--------------------------------------------------------------------*
  31. REAL*8 Q1(NA1,*),Q2(NA1,*)
  32. REAL*8 XM(NA1,*),XDT(*),FTOTA(NA1,*)
  33. REAL*8 XOPM1(NB1,NB1,*),FAMOR(NA1,*)
  34. *
  35. PDT = XDT(NPAS)
  36. PDTS2 = PDT * 0.5D0
  37. AUX4 = PDT * PDT/ 24.D0
  38. *
  39. * . 2
  40. * Q = Q + h/2 Q + h /24 M^-1 ( 4 F - F
  41. * i,m+1/2 i,m i,m i,m i,m-1/2
  42. * . .
  43. * - C ( 4 Q - Q ) )
  44. * ij j,m j,m-1/2
  45. *
  46. *
  47. C CALCUL DU DEPLACEMENT
  48.  
  49. C MATRICE M PLEINE
  50. IF(NB1M.GT.1) THEN
  51.  
  52. DO 21 IA = 1,NA1
  53. AUX2 = 0.D0
  54. DO 22 IB = 1,NB1
  55. AUX2 = AUX2 + XOPM1(IA,IB,3) *
  56. & (4.D0*(FTOTA(IB,3)-FAMOR(IB,3))-(FTOTA(IB,4)-FAMOR(IB,4)))
  57. 22 CONTINUE
  58. Q1(IA,2) = Q1(IA,3) + (PDTS2 * Q2(IA,3)) + (AUX4 * AUX2)
  59. 21 CONTINUE
  60.  
  61. C MATRICE M DIAGO
  62. ELSE
  63.  
  64. DO 20 I = 1,NA1
  65. AUX2 = (4.D0*(FTOTA(I,3)-FAMOR(I,3))
  66. & -(FTOTA(I,4)-FAMOR(I,4))) / XM(I,1)
  67. Q1(I,2) = Q1(I,3) + (PDTS2 * Q2(I,3)) + (AUX4 * AUX2)
  68. 20 CONTINUE
  69.  
  70. ENDIF
  71. *
  72. END
  73.  
  74.  
  75.  
  76.  

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