Télécharger proche.eso

Retour à la liste

Numérotation des lignes :

  1. C PROCHE SOURCE CHAT 05/01/13 02:29:44 5004
  2. C SUBROUTINE PROCHE(IPMASS,IPSOLU,IPFREQ,IPRIG1,IPRIG2,LIMAGE,IPNMOD,MBASC
  3. C ,INSYM)
  4. ************************************************************************
  5. *
  6. * P R O C H E
  7. * -----------
  8. *
  9. * SOUS-PROGRAMME ASSOCIE A L'OPTION "PROCHE" DE L'OPERATEUR
  10. * "VIBRATION".
  11. *
  12. * FONCTION:
  13. * ---------
  14. *
  15. * DETERMINER UNE SERIE DE MODES PROPRES DONT LES FREQUENCES SONT
  16. * LES PLUS PROCHES D'UNE SUITE DE VALEURS DONNEES.
  17. *
  18. * PHRASE D'APPEL:
  19. * ----------------------------
  20. *
  21. * MODES = VIBRATION PROCHE SUIT_VAL [ SUIT_MULT ] MAT_K MAT_M ;
  22. *
  23. * CALL PROCHE(IPMASS,IPSOLU,IPFREQ,IPRIG1,IPRIG2,LIMAGE,IPNMOD )
  24. *
  25. * OPERANDES ET RESULTATS:
  26. * -----------------------
  27. *
  28. * IPFREQ 'LISTREEL' (E) SUITE DE VALEURS REELLES DES QUELLES LES
  29. * FREQUENCES PROPRES DEVRONT ETRE PROCHES.
  30. * IPNMOD 'LISTENTI' (E) SUITE DES MULTIPLICITES DES FREQUENCE
  31. * PROPRES ( OPTIONEL ).
  32. * IPRIG? 'RIGIDITE' (E) MATRICE DE RIGIDITE.
  33. * IPRIG? 'RIGIDITE' (E) MATRICE MASSE.
  34. * IPMASS 'RIGIDITE' (S) MATRICE MASSE. (UTILISEE DANS VIBRAT).
  35. * IPSOLU 'SOLUTION' (S) ENSEMBLE DES MODES PROPRES CALCULES.
  36. * MBASC 'TABLE SOLUTION' (S) ENSEMBLE DE MODES PROPRES COMPLEXES
  37. *
  38. *
  39. * AUTEUR, DATE DE CREATION:
  40. * -------------------------
  41. *
  42. * PASCAL MANIGOT 1ER OCTOBRE 1984 (ESOPE)
  43. *
  44. ************************************************************************
  45.  
  46. SUBROUTINE PROCHE( IPMASS, IPSOLU, IPFREQ, IPRIG1, IPRIG2,
  47. $ LIMAGE, IPNMOD, MBASC ,INSYM)
  48.  
  49. IMPLICIT INTEGER(I-N)
  50. IMPLICIT REAL*8 (A-H,O-Z)
  51.  
  52. -INC PPARAM
  53. -INC CCOPTIO
  54. -INC SMLREEL
  55. -INC SMLENTI
  56. -INC SMTABLE
  57. ******
  58. * -- ARGUMENTS --
  59. ***
  60. POINTEUR IPNMOD.MLENTI, IPFREQ.MLREEL
  61. INTEGER IPMASS, IPSOLU, IPRIG1, IPRIG2
  62. LOGICAL LIMAGE
  63.  
  64. ******
  65. * -- VARIABLES LOCALES --
  66. ***
  67. INTEGER IB100, NBFREQ
  68.  
  69. ******
  70. * -- SI UNE 'LISTENTI' A ETE FOURNIE, IPNMOD EST DIFFERENT DE
  71. * ZERO. SINON, IPNMOD EST NUL. DANS CE CAS TOUTES LES VALEURS
  72. * PROPRES SONT SUPPOSEES SIMPLES.ON CREE DONC L'IPNMOD ADEQUAT: --
  73. ***
  74. IF ( IPNMOD .EQ. 0 ) THEN
  75. SEGACT ,IPFREQ
  76. NBFREQ = IPFREQ.PROG(/1)
  77. SEGDES ,IPFREQ
  78. JG = NBFREQ
  79. SEGINI ,IPNMOD
  80. DO 100 IB100 = 1, NBFREQ
  81. IPNMOD.LECT( IB100 ) = 1
  82. 100 CONTINUE
  83. SEGDES ,IPNMOD
  84. ENDIF
  85.  
  86. ******
  87. * -- VERIFICATION DES SOUS-TYPES DES 'RIGIDITE' --
  88. ***
  89. CALL WHICH1 (IPRIG1,IPRIG2, IPRIGI,IPMASS)
  90. IF (IERR .NE. 0) RETURN
  91.  
  92. ******
  93. * -- DETERMINATION DES MODES PROPRES --
  94. ***
  95. CALL PROCH1 ( IPFREQ, IPNMOD, IPRIGI, IPMASS, IPSOLU,
  96. & LIMAGE, MBASC , INSYM)
  97. IF (IERR .NE. 0) RETURN
  98.  
  99.  
  100. RETURN
  101. END
  102.  
  103.  
  104.  
  105.  

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