Télécharger prchl2.eso

Retour à la liste

Numérotation des lignes :

  1. C PRCHL2 SOURCE PASCAL 17/07/27 21:15:26 9514
  2. C
  3. C-----------------------------------------------------------------------
  4. C Sous-programme de l'operateur PRESSION :
  5. C
  6. C IPCHE2 = PRES IPMOD1 MOT1 VAL1 (MAIL1) ;
  7. C
  8. C En entree :
  9. C -----------
  10. C IPMOD1 : MMODEL de CHARGEMENT PRESSION, deja reduit sur MAIL1
  11. C MOT1 : MOT, nom de la composante de pression
  12. C XP : FLOTTANT, valeur de la pression
  13. C
  14. C En sortie :
  15. C -----------
  16. C IPCHE1 : contient le MCHAML de pression resultat / 0 si echec
  17. C
  18. C-----------------------------------------------------------------------
  19. SUBROUTINE PRCHL2(IPMOD1,MOT1,XP,IPCHE1)
  20. C
  21. IMPLICIT INTEGER(I-N)
  22. IMPLICIT REAL*8 (A-H,O-Z)
  23.  
  24. CHARACTER*4 MOT1
  25.  
  26. -INC CCOPTIO
  27. -INC SMCHAML
  28. -INC SMMODEL
  29. C
  30. IPCHE2=0
  31. C
  32. C Initialisation du MCHAML :
  33. MMODEL=IPMOD1
  34. SEGACT,MMODEL
  35. N1 = MMODEL.KMODEL(/1)
  36. N3 = 6
  37. L1 = 11
  38. SEGINI,MCHEL1
  39. MCHEL1.TITCHE='CONTRAINTES'
  40. MCHEL1.IFOCHE=IFOUR
  41. C
  42. C Boucle sur les sous-zones
  43. DO I=1,N1
  44. IMODEL=MMODEL.KMODEL(I)
  45. SEGACT,IMODEL
  46. C
  47. C On verifie que MOT1 est un nom de composante de contrainte
  48. NOMID=IMODEL.LNOMID(4)
  49. SEGACT,NOMID
  50. NCOMP=NOMID.LESOBL(/2)
  51. DO J=1,NCOMP
  52. IF (MOT1(1:4).EQ.NOMID.LESOBL(J)(1:4)) THEN
  53. GOTO 10
  54. ENDIF
  55. ENDDO
  56. C Pas de composante de nom MOT1 : on sort !
  57. MOTERR(1:4)=MOT1(1:4)
  58. CALL ERREUR(197)
  59. GOTO 999
  60. C
  61. 10 CONTINUE
  62. C
  63. C On remplit MCHEL1
  64. MCHEL1.CONCHE(I)=IMODEL.CONMOD(1:24)
  65. MCHEL1.IMACHE(I)=IMODEL.IMAMOD
  66. MCHEL1.INFCHE(I,1)=0
  67. MCHEL1.INFCHE(I,2)=0
  68. MCHEL1.INFCHE(I,3)=NIFOUR
  69. MCHEL1.INFCHE(I,4)=IMODEL.INFMOD(7)
  70. MCHEL1.INFCHE(I,5)=0
  71. MCHEL1.INFCHE(I,6)=5
  72. C
  73. C Definition du ICHAML
  74. N2 = 1
  75. SEGINI,MCHAM1
  76. MCHEL1.ICHAML(I)=MCHAM1
  77. MCHAM1.NOMCHE=MOT1(1:4)//' '
  78. MCHAM1.TYPCHE='REAL*8'
  79. C
  80. C et du MELVAL
  81. N1PTEL = 1
  82. N1EL = 1
  83. N2PTEL = 0
  84. N2EL = 0
  85. SEGINI,MELVAL
  86. MELVAL.VELCHE(1,1)=XP
  87. MCHAM1.IELVAL=MELVAL
  88. C
  89. SEGDES,MELVAL,MCHAM1
  90. ENDDO
  91. C
  92. IPCHE1=MCHEL1
  93. C
  94. 999 SEGDES,MCHEL1
  95. C
  96. RETURN
  97. END
  98.  
  99.  
  100.  

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