1 : C GAMVM SOURCE CHAT 05/01/13 00:15:58 5004 2 : FUNCTION GAMVM(S,DS,R,PREC,RFSG,RFEP,RFPR) 3 : C 4 : IMPLICIT INTEGER(I-N) 5 : IMPLICIT REAL*8 (A-H,O-Z) 6 : -INC CCOPTIO 7 : C 8 : DIMENSION S(*),DS(*) 9 : C 10 : DSIEQ2=AVM(DS,DS) 11 : SIEQ02=AVM(S,S) 12 : AA=AVM(S,DS) 13 : IF(DSIEQ2.EQ.0.D0) GO TO 1 14 : DELTA=AA*AA+DSIEQ2*(R*R-SIEQ02) 15 : VRF=MAX(ABS(AA),RFPR) 16 : RFRF=VRF*VRF*PREC*PREC 17 : IF(ABS(DELTA).LE.RFRF.AND.DELTA.LE.0.D0) DELTA=0.D0 18 : IF(DELTA.GE.0.D0) GO TO 2 19 : IF(IIMPI.EQ.9) WRITE(IOIMP,11) 20 : GAMVM=100.D0 21 : RETURN 22 : 2 RADEL=SQRT(DELTA) 23 : GAMVM=(-AA+RADEL)/DSIEQ2 24 : RETURN 25 : 1 IF(AA.NE.0.D0) GO TO 3 26 : IF(IIMPI.EQ.9) WRITE(IOIMP,10) 27 : GAMVM=100.D0 28 : RETURN 29 : 3 GAMVM=(R*R-SIEQ02)/(2.D0*AA) 30 : C 31 : 10 FORMAT(1X,' DANS GAMVM DETERMINANT EST NUL') 32 : 11 FORMAT(1X,' DANS GAMVM DELTA EST NEGATIF') 33 : C 34 : RETURN 35 : END 36 : 37 :
© Cast3M 2003 - All rights reserved.
Disclaimer