[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[no subject]



From: CFFK@MIT-MC
Date: Mon, 15 Aug 78 04:29:27 GMT
Original-Date: 08/15/78 00:29:27 EDT
Subject: Re: Macsyma doing random things
Doing Loadfile(Rombrg,Fasl,DSK,CFFK)$
BATCH(DPOLE)$ WRITEFILE()$ B[4]; B[4]; B[4]; ==>
2* ;Failed to converge, 0.583803125
B calls ROMBERG on a simple function PHI.  The ROMBERG in the version
on DSK,CFFK has been modified to write out into the writefile the positions
where PHI is evaluated and the values returned.  The
bug occurs because PHI randomly returns wrong values.  I've split
the writefile up into 3 piece corresponding to the 3 evaluations
of B[4].  So you can see the different values by doing :SRCCOM CFFK;ERR 1
and :SRCCOM CFFK;ERR 2.  The probability of an error seems to be about 0.1%.
----------------------------------------------------------------------------
One value it seems to consistently, but rarely, die on is 
PHI(10.3125,.04); which is supposed to return 0.0, but every now and 
then (say once every 1000 times) returns 7521.08276 .  The (or a) reason 
for this is that PHI calls SECH(10.3125) which is supposed to return 
6.64305973E-5, but when PHI fails, SECH here returns 1.0 instead. 
(Which happens to be the value returned by TANH(10.3125), but I don't 
know if that means anything.)  Anyway, someone else can try to narrow 
this down further.  The LISP functions SECH and TANH are defined in 
MRG;TRIG > .