C GAMVM SOURCE CHAT 05/01/13 00:15:58 5004 FUNCTION GAMVM(S,DS,R,PREC,RFSG,RFEP,RFPR) C IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) -INC CCOPTIO C DIMENSION S(*),DS(*) C DSIEQ2=AVM(DS,DS) SIEQ02=AVM(S,S) AA=AVM(S,DS) IF(DSIEQ2.EQ.0.D0) GO TO 1 DELTA=AA*AA+DSIEQ2*(R*R-SIEQ02) VRF=MAX(ABS(AA),RFPR) RFRF=VRF*VRF*PREC*PREC IF(ABS(DELTA).LE.RFRF.AND.DELTA.LE.0.D0) DELTA=0.D0 IF(DELTA.GE.0.D0) GO TO 2 IF(IIMPI.EQ.9) WRITE(IOIMP,11) GAMVM=100.D0 RETURN 2 RADEL=SQRT(DELTA) GAMVM=(-AA+RADEL)/DSIEQ2 RETURN 1 IF(AA.NE.0.D0) GO TO 3 IF(IIMPI.EQ.9) WRITE(IOIMP,10) GAMVM=100.D0 RETURN 3 GAMVM=(R*R-SIEQ02)/(2.D0*AA) C 10 FORMAT(1X,' DANS GAMVM DETERMINANT EST NUL') 11 FORMAT(1X,' DANS GAMVM DELTA EST NEGATIF') C RETURN END