C PRFPG     SOURCE    GOUNAND   21/06/02    21:17:22     11022          
      SUBROUTINE PRFPG(FACOUR,
     $     IMPR,IRET)
      IMPLICIT REAL*8 (A-H,O-Z)
      IMPLICIT INTEGER (I-N)
C***********************************************************************
C NOM         : PRFPG
C PROJET      : Noyau linéaire NLIN
C DESCRIPTION : Imprime un segment décrivant une famille de méthodes
C               d'intégration.
C LANGAGE     : ESOPE
C AUTEUR      : Stéphane GOUNAND (CEA/DRN/DMT/SEMT/LTMF)
C               mél : gounand@semt2.smts.cea.fr
C***********************************************************************
C APPELES          : OOOETA (état d'un segment)
C APPELE PAR       : INFPGS
C***********************************************************************
C ENTREES            : FACOUR (type FAPG) : famille d'éléments de
C                      référence.
C ENTREES/SORTIES    : -
C SORTIES            : -
C CODE RETOUR (IRET) : = 0 si tout s'est bien passé
C***********************************************************************
C VERSION    : v1, 16/07/02, version initiale
C HISTORIQUE : v1, 16/07/02, création
C HISTORIQUE :
C HISTORIQUE :
C***********************************************************************
C Prière de PRENDRE LE TEMPS de compléter les commentaires
C en cas de modification de ce sous-programme afin de faciliter
C la maintenance !
C***********************************************************************

-INC PPARAM
-INC CCOPTIO
-INC CCGEOME
-INC TNLIN      
*-INC SPOGAU
      POINTEUR PGCOUR.POGAU
*-INC SFAPG
      POINTEUR FACOUR.FAPG
*
      INTEGER IMPR,IRET
*
      INTEGER IBMPG,NBMPG
      INTEGER FALETA
*
* Executable statements
*
* On veut laisser FACOUR dans le même état (actif, inactif) qu'avant
* l'appel à PRFPG.
      CALL OOOETA(FACOUR,FALETA,IMOD)
      IF (FALETA.NE.1) SEGACT FACOUR
      WRITE(IOIMP,*) 'Segment FAPG de pointeur',FACOUR
      IF (IMPR.GT.1) THEN
         WRITE(IOIMP,*) 'Nom : ',FACOUR.NOMFAP
         IF (IMPR.GT.2) THEN
            NBMPG=FACOUR.NBQUAF(/1)
            SEGACT FACOUR.MPOGAU(*)
            WRITE(IOIMP,4005) 'QUAF','Meth. integ.'
            DO 1 IBMPG=1,NBMPG
               PGCOUR=FACOUR.MPOGAU(IBMPG)
               WRITE(IOIMP,4005) NOMS(FACOUR.NBQUAF(IBMPG)),
     $              PGCOUR.NOMPG
 1          CONTINUE
            SEGDES FACOUR.MPOGAU(*)
         ENDIF
      ENDIF
      IF (FALETA.NE.1) SEGDES FACOUR
C            NBMPG=FACOUR.NBQUAF(/1)
C            SEGACT FACOUR.MPOGAU(*)
C            DO 1 IBMPG=1,NBMPG
C               PGCOUR=FACOUR.MPOGAU(IBMPG)
C               WRITE(IOIMP,4004)
C     $              FACOUR.NOMFAP,NOMS(FACOUR.NBQUAF(IBMPG)),
C     $              PGCOUR.NOMPG
C 1          CONTINUE
C            SEGDES FACOUR.MPOGAU(*)
*
* Normal termination
*
      IRET=0
      RETURN
*
* Format handling
*
 4004 FORMAT (A20,' ',A20,' ',A20)
 4005 FORMAT (A14,' <-> ',A14)
*
* Error handling
*
 9999 CONTINUE
      IRET=1
      WRITE(IOIMP,*) 'An error was detected in subroutine prfpg'
      RETURN
*
* End of subroutine prfpg
*
      END




 
 
 
 
