Télécharger kentr.eso

Retour à la liste

Numérotation des lignes :

  1. C KENTR SOURCE CB215821 19/07/30 21:17:05 10273
  2. SUBROUTINE KENTR
  3. C
  4. C***********************************************************************
  5. C *
  6. C *
  7. C FABRICATION DES MATRICES DE RAIDEUR CENTRIFUGE ET D'EULER *
  8. C (CALCUL DANS LE REPERE TOURNANT *
  9. C Syntaxe : *
  10. C -------- *
  11. C *
  12. C RIG1 = KCEN MODL1 MAT1 VEC1 (FLAM) *
  13. C *
  14. C RIG1 : matrice de raideur centrifuge (TYPE rigidité) *
  15. C MODL1: objet MMODEL, modèle *
  16. C MAT1 : objet MCHAML, caractéristiques matériau *
  17. C VEC1 : objet de type POINT, vecteur vitesse de rotation *
  18. C FLAM : mot clé si on se sert de la matrice pour faire du flambage *
  19. C *
  20. C Didier COMBESCURE Mars 2003 *
  21. C *
  22. C***********************************************************************
  23. C
  24. IMPLICIT INTEGER(I-N)
  25. IMPLICIT REAL*8 (A-H,O-Z)
  26.  
  27. -INC PPARAM
  28. -INC CCOPTIO
  29. -INC SMCHAML
  30. -INC CCHAMP
  31. c
  32. *
  33. CHARACTER*4 LPARA1(2), LPARA2(1)
  34. *
  35. DATA LPARA1/'CENT','EULE'/
  36. DATA LPARA2/'FLAM'/
  37. NPARA1 = 2
  38. *
  39. *********************************************
  40. *
  41. * Matrice de raideur centrifuge et d'Euler
  42. *
  43. **********************************************
  44. C
  45. CALL LIRMOT(LPARA1,NPARA1,INDIC1,0)
  46. C
  47. IF (INDIC1 .NE. 0) THEN
  48. IPCHE1=0
  49. IRET=0
  50. C
  51. C Test flambage
  52. CALL LIRMOT(LPARA2,1,IFLAM,0)
  53. IF (IERR.NE.0) RETURN
  54. C
  55. C lecture du point vecteur de rotation
  56. C
  57. IF (IFOUR.NE.1) THEN
  58. CALL LIROBJ('POINT',IPROTA,1,IRT1)
  59. IF(IERR .NE. 0) RETURN
  60. ELSE
  61. CALL LIROBJ('POINT',IPROTA,0,IRT1)
  62. IF (IRT1.EQ.0) IPROTA =0
  63. ENDIF
  64. C
  65. C lecture du modèle
  66. C
  67. CALL LIROBJ('MMODEL ',IPMODL,1,IRT2)
  68. CALL ACTOBJ('MMODEL ',IPMODL,1)
  69. IF(IERR .NE. 0) RETURN
  70. C
  71. C lecture du mchaml de caractéristiques matériau
  72. C
  73. CALL LIROBJ('MCHAML ',IPIN,1,IRT3)
  74. CALL ACTOBJ('MCHAML ',IPIN,1)
  75. IF(IERR .NE. 0) RETURN
  76. CALL REDUAF(IPIN,IPMODL,IPCHE1,0,IR,KER)
  77. IF(IR .NE. 1) CALL ERREUR(KER)
  78. IF(IERR .NE. 0) RETURN
  79. C
  80. IF (INDIC1.EQ.1) THEN
  81. C
  82. C Matrice de raideur centrifuge
  83. CALL KCENT1(IPMODL,IPCHE1,IPROTA,IPRIG,IFLAM,IRET)
  84. IF(IERR .NE. 0) RETURN
  85. C
  86. ELSEIF (INDIC1.EQ.2) THEN
  87. C
  88. C Matrice de raideur d'Euler
  89. CALL KEULE1(IPMODL,IPCHE1,IPROTA,IPRIG,IFLAM,IRET)
  90. IF(IERR .NE. 0) RETURN
  91.  
  92. ELSE
  93. IRET = 0
  94. ENDIF
  95. C
  96. IF (IRET.EQ.1) CALL ECROBJ('RIGIDITE',IPRIG)
  97. ENDIF
  98.  
  99. END
  100.  
  101.  
  102.  

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