isoval
C ISOVAL SOURCE CB215821 23/11/02 21:15:06 11779 SUBROUTINE ISOVAL IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER (I-N) C*********************************************************************** C NOM : ISOVAL C DESCRIPTION : Construit le maillage de l'isovaleur d'un champ par C éléments C C C C LANGAGE : ESOPE C AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF) C mél : gounand@semt2.smts.cea.fr C*********************************************************************** C APPELES : C APPELES (E/S) : C APPELES (BLAS) : C APPELES (CALCUL) : C APPELE PAR : C*********************************************************************** C SYNTAXE GIBIANE : C ENTREES : C ENTREES/SORTIES : C SORTIES : C CODE RETOUR (IRET) : = 0 si tout s'est bien passé C*********************************************************************** C VERSION : v1, 15/12/2008, version initiale C HISTORIQUE : v1, 15/12/2008, 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 CCREEL -INC SMCHAML CHARACTER*8 MCHA PARAMETER(NOPT=3) CHARACTER*4 LOPT(NOPT) INTEGER IMPR,IRET DATA LOPT/'EGIN','EGAL','EGSU'/ * * Executable statements * IMPR=0 IF (IMPR.GT.2) WRITE(IOIMP,*) 'Entrée dans isoval.eso' * MCHA='MCHAML ' * 37 2 * On ne trouve pas d'objet de type %m1:8 IF (IRETOU.NE.1) THEN MOTERR(1:8)=MCHA RETURN ENDIF * * Lecture de l'option * IOPT=-1 EGIN * IOPT=0 EGAL (par défaut) * IOPT=1 EGSU * IOPT=0 IF (IOPT.EQ.0) IOPT=2 IOPT=IOPT-2 IF (IERR.NE.0) RETURN * * 37 2 * On ne trouve pas d'objet de type %m1:8 IF (IRETOU.NE.1) THEN MOTERR(1:8)='FLOTTANT' RETURN ENDIF * * Recherche du maximum * IPLMOT=0 IPLACE=0 KPLUS=1 LABSO=1 XTOL=MAX(XMAX*XZPREC,XPETIT) * Marge car sinon plantage sur semt2 sur un cas simple mis dans * isov.dgibi, suite a la fiche 8625 * XTOL=XTOL*10.D0 *dbg WRITE(IOIMP,*) 'XMAX=',XMAX *dbg WRITE(IOIMP,*) 'XZPREC=',XZPREC *dbg WRITE(IOIMP,*) 'XPETIT=',XPETIT *dbg WRITE(IOIMP,*) 'XTOL=',XTOL * * Calcul de l'isovaleur * IF (IERR.NE.0) RETURN * * On renvoie le résultat * RETURN * * End of subroutine ISOVAL * END
© Cast3M 2003 - Tous droits réservés.
Mentions légales