Télécharger vireco.eso

Retour à la liste

Numérotation des lignes :

vireco
  1. C VIRECO SOURCE PB245956 20/12/21 21:15:21 10747
  2. C RESOUR SOURCE CB215821 19/07/30 21:17:58 10273
  3. SUBROUTINE VIRECO(LVIBC,IPSOLU,
  4. & IPRIGI,IPMASS,IPAMOR,NELIM,IDEME0,IDEME1)
  5.  
  6. ***********************************************************************
  7. *
  8. * V I R E C O
  9. * -----------
  10. *
  11. * SOUS-PROGRAMME ASSOCIE A L'OPERATEUR "VIBRation"
  12. *
  13. * FONCTION:
  14. * ---------
  15. *
  16. * RECONSTRUCTION DES MODES APRES OPERATIONS SUR MATRICES CONDENSEES
  17. *
  18. *
  19. * CREATION et MODIFICATION:
  20. * ------------------------
  21.  
  22. * PASCAL BOUDA, 17 DECEMBRE 2020
  23. *
  24. ************************************************************************
  25.  
  26. IMPLICIT INTEGER(I-N)
  27. IMPLICIT REAL*8 (A-H,O-Z)
  28.  
  29. -INC PPARAM
  30. -INC CCOPTIO
  31.  
  32. -INC SMCHPOI
  33. -INC SMRIGID
  34.  
  35. -INC SMSOLUT
  36. -INC CCREEL
  37.  
  38. LOGICAL LVIBC
  39. REAL*8 FRQR,FRQI
  40.  
  41.  
  42. FRQR=0D0
  43. FRQI=0D0
  44.  
  45. MSOLUT=IPSOLU
  46. SEGACT MSOLUT
  47.  
  48. MSOLE1=MSOLIS(4)
  49. MSOLE2=MSOLIS(5)
  50. SEGACT MSOLE1,MSOLE2*MOD
  51.  
  52.  
  53. *Nombre de modes (= nbchpoints si sym 2*nbchpoints si non sym)
  54. NBMOD1=MSOLE1.ISOLEN(/1)
  55. IF (LVIBC) NBMOD1=NBMOD1/2
  56.  
  57. DO I=1,NBMOD1
  58.  
  59. ** si modes complexes on travaille par paire
  60. IF (LVIBC) THEN
  61. IMOD1=2*I-1
  62. ELSE
  63. IMOD1=I
  64. ENDIF
  65.  
  66. ** modes reels
  67. IMODR=MSOLE2.ISOLEN(IMOD1)
  68. MMODE=MSOLE1.ISOLEN(IMOD1)
  69. SEGACT MMODE
  70. FRQR=FMMODD(1)
  71. WR=2*XPI*FRQR
  72. ** modes complexes
  73. IF (LVIBC) THEN
  74. IMODI=MSOLE2.ISOLEN(IMOD1+1)
  75. MMODE=MSOLE1.ISOLEN(IMOD1+1)
  76. SEGACT MMODE
  77. FRQI=FMMODD(1)
  78. WI=2*XPI*FRQI
  79. ENDIF
  80.  
  81. CALL VIREC1(LVIBC,ideme0,ideme1,
  82. & IPRIGI,IPMASS,IPAMOR,IMODR,IMODI,WR,WI,NELIM)
  83.  
  84. MSOLE2.ISOLEN(IMOD1)=IMODR
  85. IF (LVIBC) MSOLE2.ISOLEN(IMOD1+1)=IMODI
  86.  
  87. ENDDO
  88.  
  89.  
  90. END
  91.  
  92.  
  93.  
  94.  
  95.  

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