|
From: David S. <d.s...@go...> - 2016-01-26 09:52:19
|
Oh, and for CCL, I get even different results: (%i1) float(exp(10000)); (%o1) 8.806818225658306b4342 (%i2) float(exp(10000/3)); Maxima encountered a Lisp error: FLOATING-POINT-OVERFLOW detected performing EXP on (3333.3333333333335) Automatically continuing. To enable the Lisp debugger set *debugger-hook* to nil. (%i3) float(exp(10000.0)); float: floating point overflow converting 8.806818225662922b4342 -- an error. To debug this try: debugmode(true); 2016-01-26 10:44 GMT+01:00 David Scherfgen <d.s...@go...>: > Hello, > > I'm getting very weird and inconsistent behavior when doing > float(exp(10000)) vs. float(exp(10000/3)) and float(exp(10000.0)). > > The first one works - the result is promoted to bigfloat. > The second one gives me floating point infinity, even though the exp > argument is actually smaller! > The third one gives an error. > > I guess this is not intended, right? > > Maxima branch_5_37_base_407_g2af0c38 http://maxima.sourceforge.net > using Lisp GNU Common Lisp (GCL) GCL 2.6.12 > Distributed under the GNU Public License. See the file COPYING. > Dedicated to the memory of William Schelter. > The function bug_report() provides bug reporting information. > > (%i1) float(exp(10000)); > (%o1) 8.806818225658306b4342 > > (%i2) float(exp(10000/3)); > (%o2) i.nfE+0 > > (%i3) float(exp(10000.0)); > float: floating point overflow converting 8.806818225662922b4342 > -- an error. To debug this try: debugmode(true); > > Best regards, > David Scherfgen |