Download inqrfs.eso

Back to the list

   1 : C INQRFS    SOURCE    GOUNAND   06/08/04    21:16:17     5520           
   2 :       SUBROUTINE INQRFS(MYQRFS,IMPR,IRET)
   3 :       IMPLICIT REAL*8 (A-H,O-Z)
   4 :       IMPLICIT INTEGER (I-N)
   5 : C***********************************************************************
   6 : C NOM         : INQRFS
   7 : C PROJET      : Noyau linéaire NLIN
   8 : C DESCRIPTION : Initialise le segment contenant les informations sur
   9 : C               les QUAFs 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          : 
  16 : C APPELES (E/S)    : PRQRF
  17 : C APPELE PAR       : 
  18 : C***********************************************************************
  19 : C ENTREES            : -
  20 : C SORTIES            : MYQRFS
  21 : C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
  22 : C***********************************************************************
  23 : C VERSION    : v1, 17/10/02, version initiale
  24 : C HISTORIQUE : v1, 17/10/02, création
  25 : C HISTORIQUE :
  26 : C HISTORIQUE :
  27 : C***********************************************************************
  28 : C Prière de PRENDRE LE TEMPS de compléter les commentaires
  29 : C en cas de modification de ce sous-programme afin de faciliter
  30 : C la maintenance !
  31 : C***********************************************************************
  32 : -INC CCOPTIO
  33 : CBEGININCLUDE SIQUAF
  34 :       SEGMENT IQUAF
  35 :       INTEGER NUMQUF
  36 :       REAL*8 XCONQR(NDIMQR,NBNOQR)
  37 :       INTEGER NUCENT
  38 :       POINTEUR LFACE.MELEME
  39 :       ENDSEGMENT
  40 :       SEGMENT IQUAFS
  41 :       POINTEUR LISQRF(NBQRF).IQUAF
  42 :       ENDSEGMENT
  43 : CENDINCLUDE SIQUAF
  44 :       POINTEUR MYQRFS.IQUAFS
  45 :       POINTEUR QRCOUR.IQUAF
  46 :       INTEGER NBQRF
  47 : *
  48 :       INTEGER IMPR,IRET
  49 : *
  50 :       INTEGER NBDQR,INBDQR
  51 : *     
  52 : * Executable statements
  53 : *
  54 :       IF (IMPR.GT.1) WRITE(IOIMP,*) 'Entrée dans inqrfs'
  55 : *
  56 : * Initialisation du segment contenant les infos sur les QUAFS
  57 : * de référence 
  58 : *
  59 :       NBQRF=0
  60 :       SEGINI MYQRFS
  61 : *
  62 : * On initialise les QUAFs de référence de dimension 1 (segments)
  63 : *
  63 :       CALL INQRSE(MYQRFS,IMPR,IRET)
  64 :       IF (IRET.NE.0) GOTO 9999
  65 : *
  66 : * On initialise les éléments de référence de dimension 2
  67 : * de forme géométrique triangulaire.
  68 : *
  68 :       CALL INQRTR(MYQRFS,IMPR,IRET)
  69 :       IF (IRET.NE.0) GOTO 9999
  70 : *
  71 : * On initialise les éléments de référence de dimension 2
  72 : * de forme géométrique carrée.
  73 : *
  73 :       CALL INQRQU(MYQRFS,IMPR,IRET)
  74 :       IF (IRET.NE.0) GOTO 9999
  75 : *
  76 : * On initialise les éléments de référence de dimension 3
  77 : * de forme géométrique tétraèdrique.
  78 : *
  78 :       CALL INQRTE(MYQRFS,IMPR,IRET)
  79 :       IF (IRET.NE.0) GOTO 9999
  80 : *
  81 : * On initialise les éléments de référence de dimension 3
  82 : * de forme géométrique pyramidale.
  83 : *
  83 :       CALL INQRPY(MYQRFS,IMPR,IRET)
  84 :       IF (IRET.NE.0) GOTO 9999
  85 : *
  86 : * On initialise les éléments de référence de dimension 3
  87 : * de forme géométrique prismatique à base triangle.
  88 : *
  88 :       CALL INQRPR(MYQRFS,IMPR,IRET)
  89 :       IF (IRET.NE.0) GOTO 9999
  90 : *
  91 : * On initialise les éléments de référence de dimension 3
  92 : * de forme géométrique cubique.
  93 : *
  93 :       CALL INQRCU(MYQRFS,IMPR,IRET)
  94 :       IF (IRET.NE.0) GOTO 9999
  95 : *
  96 : * Impression finale
  97 : *     
  98 :       NBDQR=MYQRFS.LISQRF(/1)
  99 :       IF (IMPR.GT.1) THEN
 100 :          DO 3 INBDQR=1,NBDQR
 101 :             WRITE(IOIMP,*) 'Quaf. de référence ',INBDQR
 102 :             QRCOUR=MYQRFS.LISQRF(INBDQR)
 102 :             CALL PRQRF(QRCOUR,IMPR,IRET)
 103 :             IF (IRET.NE.0) GOTO 9999
 104 :  3       CONTINUE
 105 :       ENDIF
 106 :       SEGDES MYQRFS
 107 : *
 108 : * Normal termination
 109 : *
 110 :       IRET=0
 111 :       RETURN
 112 : *
 113 : * Format handling
 114 : *
 115 : *
 116 : * Error handling
 117 : *
 118 :  9999 CONTINUE
 119 :       IRET=1
 120 :       WRITE(IOIMP,*) 'An error was detected in subroutine inqrfs'
 121 :       RETURN
 122 : *
 123 : * End of subroutine INQRFS
 124 : *
 125 :       END
 126 : 
 127 :  
 128 :  

© Cast3M 2003 - All rights reserved.
Disclaimer