prcael
C PRCAEL SOURCE GOUNAND 21/06/02 21:17:19 11022 $ IMPR,IRET) IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER (I-N) C*********************************************************************** C NOM : PRCAEL C PROJET : Noyau linéaire NLIN C DESCRIPTION : Imprime un champ par élément (type MCHAEL) 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 PRCHVA (impression d'un segment MCHEVA) C APPELES (E/S) : ECROBJ, PRLIST (écriture, impression) C APPELE PAR : MKCOOR C*********************************************************************** C ENTREES : * MYCAEL (type MCHAEL) : le champ par éléments à C imprimer. C SORTIES : - C CODE RETOUR (IRET) : = 0 si tout s'est bien passé C*********************************************************************** C VERSION : v1, 03/09/99, version initiale C HISTORIQUE : v1, 03/09/99, 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 TNLIN *-INC SMCHAEL POINTEUR MYCAEL.MCHAEL POINTEUR MYCHVA.MCHEVA -INC SMELEME POINTEUR MYMACH.MELEME * INTEGER IMPR,IRET * INTEGER ISOUS INTEGER NSOUS INTEGER MCAETA,MACETA * * Executable statements * * On veut laisser MYCAEL dans le même état (actif, inactif) qu'avant * l'appel à PRCAEL. CALL OOOETA(MYCAEL,MCAETA,IMOD) IF (MCAETA.NE.1) SEGACT MYCAEL WRITE(IOIMP,*) 'Segment MCHAEL de pointeur',MYCAEL IF (IMPR.GT.1) THEN NSOUS=MYCAEL.ICHEVA(/1) WRITE(IOIMP,*) 'Nombre de partitions :',NSOUS IF (IMPR.GT.2) THEN DO 1 ISOUS=1,NSOUS MYMACH=MYCAEL.JMACHE(ISOUS) MYCHVA=MYCAEL.ICHEVA(ISOUS) WRITE(IOIMP,*) 'Sous-champ ',ISOUS,' : supp. géo. ', $ MYMACH,' MCHEVA=',MYCHVA IF (IMPR.GT.3) THEN IF (IMPR.GT.5) THEN IF (MYMACH.NE.0) THEN CALL OOOETA(MYMACH,MACETA,IMOD) WRITE(IOIMP,*) 'Support géométrique' CALL PRLIST IF (MACETA.NE.1) THEN SEGDES MYMACH ELSE SEGACT MYMACH ENDIF ENDIF ENDIF WRITE(IOIMP,*) 'Valeurs du champ par éléments' IF (IRET.NE.0) GOTO 9999 ENDIF 1 CONTINUE ENDIF ENDIF IF (MCAETA.NE.1) SEGDES MYCAEL * * Normal termination * IRET=0 RETURN * * Format handling * * * Error handling * 9999 CONTINUE IRET=1 WRITE(IOIMP,*) 'An error was detected in subroutine prcael' RETURN * * End of subroutine prcael * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales