Télécharger mesmbr.eso

Retour à la liste

Numérotation des lignes :

  1. C MESMBR SOURCE PV 16/11/17 22:00:46 9180
  2. SUBROUTINE MESMBR(MATRIK,KSMBR,
  3. $ KS2B,
  4. $ IMPR,IRET)
  5. IMPLICIT REAL*8 (A-H,O-Z)
  6. IMPLICIT INTEGER (I-N)
  7. C***********************************************************************
  8. C NOM : MESMBR
  9. C DESCRIPTION :
  10. C Ce sp initialise le second membre
  11. C (i.e. b de Ax=b) avec un chpoint d'inconnues duales.
  12. C On a en vue une méthode itérative de résolution.
  13. C
  14. C Ce sp est quasiment identique à mexini.eso.
  15. C C'est une interface à ch2vec.
  16. C
  17. C
  18. C LANGAGE : ESOPE
  19. C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/TTMF)
  20. C mél : gounand@semt2.smts.cea.fr
  21. C***********************************************************************
  22. C APPELE : CH2VEC
  23. C***********************************************************************
  24. C ENTREES : MATRIK, KSMBR, IMPR
  25. C ENTREES/SORTIES : -
  26. C SORTIES : IRET
  27. C CODE RETOUR (IRET) : 0 si ok
  28. C <0 si problème
  29. C MATRIK : pointeur sur segment MATRIK de l'include SMMATRIK
  30. C on pioche dedans les informations nécessaires
  31. C (numérotations, inconnues, support géométriques)
  32. C pour effectuer la conversion KSMBR->KS2B.
  33. C KSMBR : pointeur sur segment MCHPOI de l'include SMCHPOI
  34. C chpoint d'initialisation du vecteur KS2B
  35. C IMPR : niveau d'impression
  36. C KS2B : pointeur sur segment IZA de l'include SMMATRIK
  37. C vecteur b pour la résolution de Ax=b.
  38. C Il est initialisé à 0 si KSMBR est nul
  39. C sinon les valeurs non nulles de KSMBR
  40. C correspondant à des inconnues primales sont
  41. C chargées dans KS2B.
  42. C Les valeurs non nulles de KSMBR NE correspondant
  43. C PAS à des inconnues primales donnent lieu à
  44. C l'émission d'un warning (cf. CH2VEC).
  45. C***********************************************************************
  46. C VERSION : v1, 01/04/98, version initiale
  47. C HISTORIQUE : v1, 01/04/98, création
  48. C HISTORIQUE : v1, 09/04/04, remplacer kidmat(1) par kidmat(2)
  49. C HISTORIQUE :
  50. C HISTORIQUE :
  51. C***********************************************************************
  52. C Prière de PRENDRE LE TEMPS de compléter les commentaires
  53. C en cas de modification de ce sous-programme afin de faciliter
  54. C la maintenance !
  55. C***********************************************************************
  56. -INC PPARAM
  57. -INC CCOPTIO
  58. POINTEUR KS2B.IZA
  59. -INC SMCHPOI
  60. POINTEUR KSMBR.MCHPOI
  61. -INC SMELEME
  62. POINTEUR KISPG.MELEME
  63. C
  64. IRET=0
  65. SEGACT MATRIK
  66. C Initialisation du vecteur second membre à 0
  67. NBVA=KNTTD
  68. SEGINI KS2B
  69. IF(KSMBR.NE.0) THEN
  70. C
  71. C On transforme le chpoint en vecteur
  72. C
  73. C Entrées
  74. MCHPOI=KSMBR
  75. MINC =KMINCD
  76. KISPG =KISPGD
  77. IDMAT =KIDMAT(2)
  78. C Sortie : KS2B
  79. C
  80. CALL CH2VEC(MCHPOI,MINC,KISPG,IDMAT,KS2B,IMPR,IRET)
  81. IF (IRET.NE.0) GOTO 9999
  82. C
  83. ENDIF
  84. C
  85. IF (IMPR.GT.5) THEN
  86. WRITE(IOIMP,*) 'mesmbr : création du pointeur KS2B=',KS2B
  87. WRITE(IOIMP,*) ' a partir du CHPOINT KSMBR=',KSMBR
  88. IF (IMPR.GT.7) THEN
  89. WRITE(IOIMP,*) 'KS2B(1..',NBVA,')= '
  90. WRITE(IOIMP,1002)(KS2B.A(II),II=1,NBVA)
  91. ENDIF
  92. ENDIF
  93. C
  94. SEGDES KS2B
  95. SEGDES MATRIK
  96. *
  97. * Normal termination
  98. *
  99. RETURN
  100. *
  101. * Format handling
  102. *
  103. 1002 FORMAT(10(1X,1PE11.4))
  104. *
  105. * Error handling
  106. *
  107. 9999 CONTINUE
  108. WRITE(IOIMP,*) 'An error was detected in mesmbr.eso'
  109. RETURN
  110. *
  111. * End of MESMBR
  112. *
  113. END
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  

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