Télécharger mkcoo1.eso

Retour à la liste

Numérotation des lignes :

mkcoo1
  1. C MKCOO1 SOURCE GOUNAND 05/12/21 21:34:15 5281
  2. SUBROUTINE MKCOO1(NNOEU,NELEM,NXCO,NDDL,NDIM,
  3. $ SOUGEO,NCOORD,NPQUAF,
  4. $ JCOOR,
  5. $ IMPR,IRET)
  6. IMPLICIT REAL*8 (A-H,O-Z)
  7. IMPLICIT INTEGER (I-N)
  8. C***********************************************************************
  9. C NOM : MKCOO1
  10. C PROJET : Noyau linéaire NLIN
  11. C DESCRIPTION : On remplit les valeurs du champ par éléments contenant
  12. C les coordonnées des points servant pour la
  13. C transformation géométrique (ddl de la transformation
  14. C géométrique)... Ceci pour le maillage élémentaire
  15. C SOUGEO.
  16. C
  17. C LANGAGE : FORTRAN 77 (sauf E/S)
  18. C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  19. C mél : gounand@semt2.smts.cea.fr
  20. C***********************************************************************
  21. C APPELES : -
  22. C APPELE PAR : MKCOOR
  23. C***********************************************************************
  24. C ENTREES : * NNOEU (type entier) : nombre de noeuds par
  25. C élément.
  26. C * NELEM (type entier) : nombre d'éléments de
  27. C SOUGEO
  28. C * NXCO (type entier) : dimension du tableau des
  29. C coordonnées des points (cf. include SMCOORD).
  30. C * NDDL (type entier) : nombre de ddl de
  31. C l'élément fini courant.
  32. C * NDIM (type entier) : dimension de l'espace
  33. C géométrique.
  34. C * SOUGEO (type entier) : tableau des numéros de
  35. C noeuds des éléments.
  36. C * NCOORD (type réel) : tableau des coordonnées
  37. C des noeuds (cf. include SMCOORD).
  38. C * NPQUAF (type entier) : tableau de
  39. C correspondance (numéro du ddl) -> numéro du
  40. C noeud du QUAF (cf. include SELREF)
  41. C ENTREES/SORTIES : * JCOOR (type réel) : valeurs du champ par
  42. C éléments contenant les coordonnées des points
  43. C servant pour la transformation géométrique (ddl
  44. C de la transformation géométrique)...
  45. C SORTIES : -
  46. C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  47. C***********************************************************************
  48. C VERSION : v1, 03/09/99, version initiale
  49. C HISTORIQUE : v1, 03/09/99, création
  50. C HISTORIQUE :
  51. C HISTORIQUE :
  52. C***********************************************************************
  53. C Prière de PRENDRE LE TEMPS de compléter les commentaires
  54. C en cas de modification de ce sous-programme afin de faciliter
  55. C la maintenance !
  56. C***********************************************************************
  57.  
  58. -INC PPARAM
  59. -INC CCOPTIO
  60. *
  61. INTEGER NNOEU,NELEM,NXCO,NDDL,NDIM
  62. INTEGER SOUGEO(NNOEU,NELEM)
  63. REAL*8 NCOORD(NXCO)
  64. INTEGER NPQUAF(NDDL)
  65. REAL*8 JCOOR(NDDL,NDIM,NELEM)
  66. *
  67. INTEGER IMPR,IRET
  68. *
  69. INTEGER IELEM,INDDL,INDIM
  70. INTEGER NUMNO
  71. *
  72. * Executable statements
  73. *
  74. IF (IMPR.GT.1) WRITE(IOIMP,*) 'Entrée dans mkcoo1'
  75. DO 1 IELEM=1,NELEM
  76. DO 12 INDDL=1,NDDL
  77. NUMNO=SOUGEO(NPQUAF(INDDL),IELEM)
  78. DO 122 INDIM=1,NDIM
  79. JCOOR(INDDL,INDIM,IELEM)=
  80. $ NCOORD(((NUMNO-1)*(NDIM+1)) + INDIM)
  81. 1222 CONTINUE
  82. 122 CONTINUE
  83. 12 CONTINUE
  84. 1 CONTINUE
  85. *
  86. * Normal termination
  87. *
  88. IRET=0
  89. RETURN
  90. *
  91. * Format handling
  92. *
  93. *
  94. * Error handling
  95. *
  96. 9999 CONTINUE
  97. IRET=1
  98. WRITE(IOIMP,*) 'An error was detected in subroutine mkcoo1'
  99. RETURN
  100. *
  101. * End of subroutine MKCOO1
  102. *
  103. END
  104.  
  105.  
  106.  

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