Télécharger devlm0.eso

Retour à la liste

Numérotation des lignes :

  1. C DEVLM0 SOURCE BP208322 15/07/22 21:15:25 8586
  2. C DEVLM0
  3. SUBROUTINE DEVLM0(Q3,XM,XOP,FTOTA,FAMOR,NA1,NB1,IOP,NB1M,IND)
  4. IMPLICIT INTEGER(I-N)
  5. IMPLICIT REAL*8(A-H,O-Z)
  6. *--------------------------------------------------------------------*
  7. * *
  8. * Operateur DYNE *
  9. * ________________________________________________ *
  10. * *
  11. * Calcul l'acceleration sur la base A *
  12. * q" = M^-1 * (FTOTA - FAMOR) *
  13. * Distingue le cas matrice diagonal et pleine *
  14. * *
  15. * Parametres: *
  16. * *
  17. * s Q3(,) Vitesse generalise *
  18. * e XM Matrice de masse generalisee *
  19. * e XOP Matrice de masse generalisee inverse (si non diago) *
  20. * e FTOTA Forces totalisees *
  21. * e FAMOR Forces d'amortissement generalisee *
  22. * e NA1,NB1M Dimension de la matrice *
  23. * e IND Indice du pas *
  24. * *
  25. * -Auteur, date de creation: *
  26. * Benoit PRABEL, 11/02/2015 *
  27. * *
  28. *--------------------------------------------------------------------*
  29. REAL*8 Q3(NA1,*),XM(NA1,*),FTOTA(NA1,*),FAMOR(NA1,*)
  30. REAL*8 XOP(NB1,NB1,*)
  31. *
  32. *
  33. IF (NB1M.EQ.1) THEN
  34. DO 100 I=1,NA1
  35. Q3(I,IND) = (FTOTA(I,IND)-FAMOR(I,IND)) / XM(I,1)
  36. 100 CONTINUE
  37. c ELSEIF(NB1M.NE.NA1) THEN
  38. c CALL ERREUR(832)
  39. c on ne va pas tester a chaque fois que cette subroutine est appelee
  40. ELSE
  41. DO 200 I=1,NA1
  42. Q3(I,IND) = 0.D0
  43. DO 200 J=1,NB1M
  44. Q3(I,IND) = Q3(I,IND)
  45. c & + XOP(I,J,3)*(FTOTA(J,IND)-FAMOR(J,IND))
  46. & + XOP(I,J,IOP)*(FTOTA(J,IND)-FAMOR(J,IND))
  47. 200 CONTINUE
  48. ENDIF
  49.  
  50. END
  51.  
  52.  
  53.  

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