Télécharger topfus.eso

Retour à la liste

Numérotation des lignes :

topfus
  1. C TOPFUS SOURCE GOUNAND 21/04/06 21:15:31 10940
  2. SUBROUTINE TOPFUS(TRAVJ,JTBES)
  3. IMPLICIT REAL*8 (A-H,O-Z)
  4. IMPLICIT INTEGER (I-N)
  5. C***********************************************************************
  6. C NOM : TOPFUS
  7. C DESCRIPTION : On ajoute les éléments de JTBES à la topologie et à
  8. C son inverse en redimensionnant si nécessaire
  9. C
  10. C LANGAGE : ESOPE
  11. C AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SEMT/LTA)
  12. C mél : gounand@semt2.smts.cea.fr
  13. C***********************************************************************
  14. C APPELES :
  15. C APPELES (E/S) :
  16. C APPELES (BLAS) :
  17. C APPELES (CALCUL) :
  18. C APPELE PAR :
  19. C***********************************************************************
  20. C SYNTAXE GIBIANE :
  21. C ENTREES : JELEM
  22. C ENTREES/SORTIES : JCOORD, JTOPO
  23. C SORTIES :
  24. C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  25. C***********************************************************************
  26. C VERSION : v1, 17/10/2017, version initiale
  27. C HISTORIQUE : v1, 17/10/2017, création
  28. C HISTORIQUE :
  29. C HISTORIQUE :
  30. C***********************************************************************
  31. -INC PPARAM
  32. -INC CCOPTIO
  33. -INC TMATOP2
  34. -INC SMELEME
  35. *
  36. * Le nombre d'éléments de JTOPO et le nombre de points de JCOORD
  37. * vont être variables. Pour ne pas avoir à ajuster ces segments en
  38. * permanence, on va dimensionner plus large, mais du coup, il faut
  39. * aussi maintenir à la main le nombre de noeuds et d'éléments
  40. * courants.
  41. *
  42. * Le nombre d'éléments courants est NVCOU et le nombre d'éléments
  43. * max est NVMAX. Idem pour le nombre de noeuds courants et max :
  44. * NPCOU et NPMAX.
  45. *
  46. * Numerotation locale des éléments JTOPO.NUM(NBNN,NBELEM)
  47. * INTEGER NVCOU,NVMAX
  48. POINTEUR JTOPO.MELEME
  49. POINTEUR JTBES.MELEME
  50. -INC TMATOP1
  51. *-INC STOPINV
  52. *-INC STRAVJ
  53. *
  54. logical lchang
  55. *
  56. * Executable statements
  57. *
  58. if (impr.ge.5) WRITE(IOIMP,*) 'Entrée dans topfus.eso'
  59. *
  60. * On ajoute les éléments de JTBES dans JTOPO
  61. *
  62. idimp=idim+1
  63. jtopo=travj.topo
  64. topinv=travj.topi
  65. segact jtbes
  66. * Redimensionnement éventuel
  67. NVBES=jtbes.num(/2)
  68. NVBAS=NVCOU
  69. NVCOUN=NVCOU+NVBES
  70. CALL TOPADV(TRAVJ,NVCOUN,1,lchang,'topfus : TRAVJ')
  71. if (ierr.ne.0) return
  72. *
  73. * Mise à jour de JTOPO et de TOPINV
  74. *
  75. DO iel=1,nvbes
  76. do ino=1,IDIMP
  77. JTOPO.NUM(INO,nvbas+iel)=JTBES.NUM(INO,iel)
  78. enddo
  79. enddo
  80. call retopi(jtbes,nvbes,topinv,impr)
  81. if (ierr.ne.0) return
  82. *
  83. * Normal termination
  84. *
  85. RETURN
  86. *
  87. * Format handling
  88. *
  89. *
  90. * Error handling
  91. *
  92. 9999 CONTINUE
  93. MOTERR(1:8)='TOPFUS '
  94. * 349 2
  95. *Problème non prévu dans le s.p. %m1:8 contactez votre assistance
  96. CALL ERREUR(349)
  97. RETURN
  98. *
  99. * End of subroutine TOPFUS
  100. *
  101. END
  102.  
  103.  
  104.  

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