C ERF SOURCE BP208322 12/07/10 21:15:07 7432 C===================================================================== C FONCTION D'ERREUR ERF C C ON DONNE EN ARGUMENT UN CHPO, UN MCHAML, UN LISTREEL OU UN REEL C CREE UN OBJET DE MEME TYPE AVEC LES VALEURS ERF(VALEUR DANS L'OBJET) C C INTEGRATION DE LA GAUSSIENNE NORMALISEE ENTRE 0 ET LA VALEUR C ARGUMENT C POUR L'INTEGRATION ON UTILISE LA METHODE DE ROMBERG C C APPELE OPCHEL OPCHPO ET OPLREE C C FORTRAN77 + ESOPE C====================================================================== SUBROUTINE ERF C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) C -INC CCOPTIO C C MCHAML C CALL LIROBJ('MCHAML',IPO1,0,IRETOU) IF (IRETOU.EQ.0) GOTO 10 CALL OPCHEL(IPO1,13,IPO2) CALL ECROBJ('MCHAML',IPO2) RETURN C C CAS D UN CHPOINT C 10 CONTINUE CALL LIROBJ('CHPOINT ',IPO1,0,IRETOU) IF(IRETOU.EQ.0) GOTO 20 CALL OPCHPO(IPO1,13,IPO2) CALL ECROBJ('CHPOINT ',IPO2) RETURN C C CAS D UN LISTREEL C 20 CONTINUE CALL LIROBJ('LISTREEL',IPO1,0,IRETOU) IF(IRETOU.EQ.0) GOTO 30 CALL OPLREE(IPO1,13,IPO2) CALL ECROBJ('LISTREEL',IPO2) RETURN C C CAS DU FLOTTANT C 30 CONTINUE CALL LIRREE(XR,0,IRETOU) IF(IRETOU.EQ.0) GO TO 40 YY = ERGAUS(XR) CALL ECRREE(YY) RETURN C C EVOLUTION C 40 CONTINUE CALL LIROBJ('EVOLUTIO',IPO1,0,IRETOU) IF (IRETOU.EQ.0) GO TO 50 CALL OPEVOL(IPO1,13,IPO2) CALL ECROBJ('EVOLUTIO',IPO2) RETURN C C C PAS D OPERANDE CORRECTE TROUVE C 50 CALL QUETYP(MOTERR(1:8),0,IRETOU) IF(IRETOU.NE.0) THEN CALL ERREUR (39) ELSE CALL ERREUR(533) ENDIF RETURN END