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. -INC CCOPTIO
  31. *
  32. CHARACTER*(4) MOT2
  33. *
  34. PARAMETER (NMOT=22)
  35. CHARACTER*8 LISMOT(NMOT),MOT1
  36. *
  37. DATA LISMOT / 'NOEUD ', 'GRAVITE ', 'RIGIDITE', 'MASSE ',
  38. 1 'STRESSES', 'DEPLACEM', 'FORCES ', 'REACTUAL',
  39. 1 'FVOLUMIQ', 'GRADIENT', 'CONTRAIN', 'DEFORMAT',
  40. 1 'MATERIAU', 'CARACTER', 'TEMPERAT', 'PRINCIPA',
  41. 1 'MAHOOKE ', 'HOTANGEN', 'DILATATI', 'VARINTER',
  42. 1 'GRAFLEXI', 'VONMISES'/
  43. *
  44. * Lecture du type du MCHAML
  45. *
  46. CALL LIRMOT(LISMOT,NMOT,IPLAC,1)
  47. IF (IPLAC.EQ.0) THEN
  48. CALL ERREUR(78)
  49. RETURN
  50. ELSE
  51. MOT1=LISMOT(IPLAC)
  52. ENDIF
  53. *
  54. CALL LIRCHA(MOT2,1,IRET)
  55. IF (IERR.NE.0) RETURN
  56. *
  57. CALL LIROBJ('MMODEL',IPMODL,1,IRET)
  58. IF (IERR.NE.0) RETURN
  59. *
  60. CALL LIRENT(IEN1,1,IRET)
  61. IF (IERR.NE.0) RETURN
  62. IF (IEN1.LE.0) THEN
  63. INTERR(1)=1
  64. INTERR(2)=IEN1
  65. CALL ERREUR(190)
  66. RETURN
  67. ENDIF
  68. *
  69. CALL LIRENT(IEN2,1,IRET)
  70. IF (IERR.NE.0) RETURN
  71. IF (IEN2.LE.0) THEN
  72. INTERR(1)=1
  73. INTERR(2)=IEN2
  74. CALL ERREUR(190)
  75. RETURN
  76. ENDIF
  77. *
  78. CALL LIRENT(IEN3,0,IRET)
  79. IF (IERR.NE.0) RETURN
  80. IF (IRET.EQ.0) IEN3=1
  81. IF (IEN3.LE.0) THEN
  82. INTERR(1)=1
  83. INTERR(2)=IEN3
  84. CALL ERREUR(190)
  85. RETURN
  86. ENDIF
  87. *
  88. CALL LIRREE(XFLO,1,IRET)
  89. IF (IERR.NE.0) RETURN
  90. *
  91. CALL MANUCI(IPMODL,MOT1,MOT2,IEN1,IEN2,IEN3,XFLO,IPRES)
  92. *
  93. * IPRES = 0 en cas d'ERREUR & IERR non nul
  94. IF (IERR.EQ.0) CALL ECROBJ('MCHAML',IPRES)
  95. *
  96. RETURN
  97. END
  98.  
  99.  
  100.  

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