Télécharger filfal.eso

Retour à la liste

Numérotation des lignes :

  1. C FILFAL SOURCE BP208322 16/11/18 21:17:13 9177
  2. SUBROUTINE FILFAL(FAL,MYLRFS,CQUAF,CEF,IMPR,IRET)
  3. IMPLICIT REAL*8 (A-H,O-Z)
  4. IMPLICIT INTEGER (I-N)
  5. C***********************************************************************
  6. C NOM : FILFAL
  7. C PROJET : Noyau linéaire NLIN
  8. C DESCRIPTION : Remplit l'indice d'un segment décrivant une famille
  9. C d'éléments de référence.
  10. C
  11. C LANGAGE : ESOPE
  12. C AUTEUR : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
  13. C mél : gounand@semt2.smts.cea.fr
  14. C***********************************************************************
  15. C APPELES : FICH4, FILRF (recherche dans une liste)
  16. C APPELE PAR : INFALS
  17. C***********************************************************************
  18. C ENTREES : * MYLRFS (type ELREFS) : segment de description
  19. C des éléments de références.
  20. C * CQUAF (type CH*(*)) :nom d'un élément QUAF.
  21. C * CEF (type CH*(*)) :nom d'un élément fini
  22. C (cf. NOMLRF dans SELREF.INC)
  23. C ENTREES/SORTIES : * FAL (type FALRF) : famille courante.
  24. C SORTIES : -
  25. C TRAVAIL : * MYLRF (type ELREF) : élément fini courant.
  26. C * NUMER (type ENTIER) : numéro correspondant à
  27. C CQUAF dans le tableau NOMS (cf. include
  28. C CCOPTIO)
  29. C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  30. C***********************************************************************
  31. C VERSION : v1, 24/03/00, version initiale
  32. C HISTORIQUE : v1, 24/03/00, création
  33. C HISTORIQUE :
  34. C HISTORIQUE :
  35. C***********************************************************************
  36. C Prière de PRENDRE LE TEMPS de compléter les commentaires
  37. C en cas de modification de ce sous-programme afin de faciliter
  38. C la maintenance !
  39. C***********************************************************************
  40. -INC CCOPTIO
  41. -INC CCGEOME
  42. CBEGININCLUDE SELREF
  43. SEGMENT ELREF
  44. CHARACTER*(LNNOM) NOMLRF
  45. CHARACTER*(LNFORM) FORME
  46. CHARACTER*(LNTYPL) TYPEL
  47. CHARACTER*(LNESP) ESPACE
  48. INTEGER DEGRE
  49. REAL*8 XCONOD(NDIMEL,NBNOD)
  50. INTEGER NPQUAF(NBDDL)
  51. INTEGER NUMCMP(NBDDL)
  52. INTEGER QUENOD(NBDDL)
  53. INTEGER ORDDER(NDIMEL,NBDDL)
  54. POINTEUR MBPOLY.POLYNS
  55. ENDSEGMENT
  56. SEGMENT ELREFS
  57. POINTEUR LISEL(0).ELREF
  58. ENDSEGMENT
  59. CENDINCLUDE SELREF
  60. POINTEUR MYLRFS.ELREFS
  61. POINTEUR MYLRF.ELREF
  62. CBEGININCLUDE SFALRF
  63. SEGMENT FALRF
  64. CHARACTER*(LNNFA) NOMFA
  65. INTEGER NUQUAF(NBLRF)
  66. POINTEUR ELEMF(NBLRF).ELREF
  67. ENDSEGMENT
  68. SEGMENT FALRFS
  69. POINTEUR LISFA(0).FALRF
  70. ENDSEGMENT
  71. CENDINCLUDE SFALRF
  72. INTEGER LNNFA,NBLRF
  73. POINTEUR FAL.FALRF
  74. *
  75. CHARACTER*(*) CQUAF,CEF
  76. *
  77. INTEGER IMPR,IRET
  78. *
  79. INTEGER NUMER
  80. *
  81. * Executable statements
  82. *
  83. IF (IMPR.GT.6) WRITE(IOIMP,*) 'Entrée dans filfal'
  84. * On ajuste la dimension du segment pour rajouter une paire
  85. * d'éléments
  86. LNNFA=FAL.NOMFA(/1)
  87. NBLRF=FAL.NUQUAF(/1)+1
  88. SEGADJ,FAL
  89. * Numéro de l'élément géométrique dans NOMS
  90. * NOMS(1:NOMBR) sont les noms des types d'éléments géométriques,
  91. * cf. include CCGEOME
  92. CALL FICH4(CQUAF,NOMS,NOMBR,
  93. $ NUMER,
  94. $ IMPR,IRET)
  95. IF (IRET.NE.0) GOTO 9999
  96. FAL.NUQUAF(NBLRF)=NUMER
  97. * Numéro de l'élément fini dans le segment ELREFS
  98. CALL FILRF(CEF,MYLRFS,
  99. $ MYLRF,
  100. $ IMPR,IRET)
  101. IF (IRET.NE.0) GOTO 9999
  102. FAL.ELEMF(NBLRF)=MYLRF
  103. *
  104. * Normal termination
  105. *
  106. IRET=0
  107. RETURN
  108. *
  109. * Format handling
  110. *
  111. *
  112. * Error handling
  113. *
  114. 9999 CONTINUE
  115. IRET=1
  116. WRITE(IOIMP,*) 'An error was detected in subroutine filfal'
  117. RETURN
  118. *
  119. * End of subroutine filfal
  120. *
  121. END
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  

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