Télécharger manuce.eso

Retour à la liste

Numérotation des lignes :

  1. C MANUCE SOURCE FANDEUR 10/12/14 21:18:03 6812
  2. SUBROUTINE MANUCE
  3. *______________________________________________________________________
  4. *
  5. * Donne une valeur en 1 point pour un MCHAML
  6. *
  7. * Syntaxe :
  8. * ---------
  9. *
  10. * CHA1 = MANU CHEL MODL1 MOT1 MOT2 IEN1 IEN2 IEN3 XFLO ;
  11. *
  12. * OB1 Objet MMODEL
  13. * MOT1 Mot indiquant le sous type du MCHAML a creer
  14. * MOT2 Nom de la composante concernee
  15. * IEN1 Numero de l'element
  16. * IEN2 Numero du point de gauss
  17. * IEN3 Numero de la sous zone concernee (=1 par defaut)
  18. * XFLO Flottant ( Valeur de la composante MOT2 )
  19. * CHA1 MCHAML resultat
  20. *
  21. * EBERSOLT JANVIER 86
  22. *
  23. * Passage aux nouveaux MCHAMLs par JM CAMPENON le 06/91
  24. *
  25. *______________________________________________________________________
  26. *
  27. IMPLICIT INTEGER(I-N)
  28. IMPLICIT REAL*8(A-H,O-Z)
  29. *
  30.  
  31. -INC PPARAM
  32. -INC CCOPTIO
  33. *
  34. CHARACTER*(4) MOT2
  35. *
  36. PARAMETER (NMOT=22)
  37. CHARACTER*8 LISMOT(NMOT),MOT1
  38. *
  39. DATA LISMOT / 'NOEUD ', 'GRAVITE ', 'RIGIDITE', 'MASSE ',
  40. 1 'STRESSES', 'DEPLACEM', 'FORCES ', 'REACTUAL',
  41. 1 'FVOLUMIQ', 'GRADIENT', 'CONTRAIN', 'DEFORMAT',
  42. 1 'MATERIAU', 'CARACTER', 'TEMPERAT', 'PRINCIPA',
  43. 1 'MAHOOKE ', 'HOTANGEN', 'DILATATI', 'VARINTER',
  44. 1 'GRAFLEXI', 'VONMISES'/
  45. *
  46. * Lecture du type du MCHAML
  47. *
  48. CALL LIRMOT(LISMOT,NMOT,IPLAC,1)
  49. IF (IPLAC.EQ.0) THEN
  50. CALL ERREUR(78)
  51. RETURN
  52. ELSE
  53. MOT1=LISMOT(IPLAC)
  54. ENDIF
  55. *
  56. CALL LIRCHA(MOT2,1,IRET)
  57. IF (IERR.NE.0) RETURN
  58. *
  59. CALL LIROBJ('MMODEL',IPMODL,1,IRET)
  60. IF (IERR.NE.0) RETURN
  61. *
  62. CALL LIRENT(IEN1,1,IRET)
  63. IF (IERR.NE.0) RETURN
  64. IF (IEN1.LE.0) THEN
  65. INTERR(1)=1
  66. INTERR(2)=IEN1
  67. CALL ERREUR(190)
  68. RETURN
  69. ENDIF
  70. *
  71. CALL LIRENT(IEN2,1,IRET)
  72. IF (IERR.NE.0) RETURN
  73. IF (IEN2.LE.0) THEN
  74. INTERR(1)=1
  75. INTERR(2)=IEN2
  76. CALL ERREUR(190)
  77. RETURN
  78. ENDIF
  79. *
  80. CALL LIRENT(IEN3,0,IRET)
  81. IF (IERR.NE.0) RETURN
  82. IF (IRET.EQ.0) IEN3=1
  83. IF (IEN3.LE.0) THEN
  84. INTERR(1)=1
  85. INTERR(2)=IEN3
  86. CALL ERREUR(190)
  87. RETURN
  88. ENDIF
  89. *
  90. CALL LIRREE(XFLO,1,IRET)
  91. IF (IERR.NE.0) RETURN
  92. *
  93. CALL MANUCI(IPMODL,MOT1,MOT2,IEN1,IEN2,IEN3,XFLO,IPRES)
  94. *
  95. * IPRES = 0 en cas d'ERREUR & IERR non nul
  96. IF (IERR.EQ.0) CALL ECROBJ('MCHAML',IPRES)
  97. *
  98. RETURN
  99. END
  100.  
  101.  
  102.  

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