 26 Nov, 2013 4 commits


Raymond Toy authored
qdfun.lisp: o Use atanqd/taylor and atan2qd/taylor as the atanqd and atan2qd implementation. o Fix bug in atanqd/taylor. We need a special case for x small where we don't want to use the table. (Found by our rttest. Yay!) rttests.lisp: o Add comment for oct.atan.4 for why it works.

Raymond Toy authored
qdconst.lisp: o Update tables and generator to use tables with only half as many entries as before. This is because atanqd/taylor never needs to compute directly for x > 1. qdfun.lisp: o Use table length for binary search, so we're independent of other constants. o Remove FIXME.

Raymond Toy authored
qdfun.lisp: o Fix issue with atanqd/taylor for large args. We use the relationship atan(x) = pi/2atan(1/x) for x > 1. o Add atan2qd/taylor. This appears to be much faster than atan2qd/newton. timing.lisp: o Add timing test for atan2qd.

Raymond Toy authored
The new method uses a table and the taylor series for atan to compute atan for real args. qdconst.lisp: o Add the two tables used for the atan computation. o Include clisp code that generates the tables. qdfun.lisp: o Implement atan using a set of tables and a Taylor series. timing.lisp: o Add a simple timing program to evaluate how fast each atan method is.

 25 Nov, 2013 1 commit


Raymond Toy authored
o Remove old version o Update new version to skip reduction if the arg <= pi/4.

 24 Nov, 2013 1 commit


Raymond Toy authored
o Implement better pi reduction and also always do pi reduction. o Add test for sin(pi) and cos(2^120), to test pi reduction. o Accuracy for erfc is only 198 bits.

 10 Feb, 2011 1 commit


Raymond Toy authored

 16 Jul, 2008 1 commit


Raymond Toy authored

 28 Nov, 2007 1 commit


Raymond Toy authored
of using a (complex doubledoublefloat). With these changes, CMUCL uses arrays and (rt:dotests) passes successfully. oct.system: o Push :octarray onto *FEATURES* to use arrays. This is the default if not building on CMUCL. qdfun.lisp: o Fix two erroneous uses of zerop on a quaddouble in sinhqd and tanhqd. o Fix two erroneous uses of + on %quaddouble; they should have used ADDQD instead. qdrep.lisp: o Change conditionalization to allow arrays for CMUCL. o Update compiler macros appropriately. qd.lisp: o Adjust optional target arg appropriately for octarray feature. o Clean up IGNORE declarations. o Add some more declarations for the target to make CMUCL happier.

 07 Nov, 2007 1 commit


Raymond Toy authored

 18 Oct, 2007 1 commit


Raymond Toy authored

 17 Oct, 2007 1 commit


Raymond Toy authored
part of 2/pi that is needed to compute the desired result instead of multiplying by all l584 bits of 2/pi. Not yet used.

 16 Oct, 2007 3 commits


Raymond Toy authored
o Remove extra rempi/2int. qdrep.lisp: o Fix typo in floatinfinityp for Allegro. o Ignore var in floatinfinityp and friends.

Raymond Toy authored
floattrappingnanp. These return NIL by default, unless the Lisp implementation has a suitable version. o Remove CMU conditionalization for floatinfinityp, floatnanp, floattrappingnanp.

Raymond Toy authored
o Don't :USE CMUCL's EXTENSIONS package anymore. Import just the symbols we need. qdclass.lisp: o No need to use package qualifiers. qdfun.lisp: o Need package qualifier for MAYBEINLINE. qd.lisp: o Need package qualifier for *INLINEEXPANSIONLIMIT* .

 15 Oct, 2007 3 commits


Raymond Toy authored
qdfun.lisp: o Comment out the old sin/cos routines o Fix a few mistakes in accuratesincosqd o Rename accuratesincosqd to sincosqd.

Raymond Toy authored
OCTI instead of QDI. o Rename OCT package to NET.COMMONLISP.OCT, with a nickname of OCT o Remove nickname of QD. (Conflicts with other packages dealing with quaddoubles.) o Update all uses of QDI: to OCTI: qdfun.lisp: o Add REMPI/2 to do a simpler computation if the arg is small enough. Otherwise, use the accurate but expensive rem operation. o Renamed ACCURATESINQD to SINQD, etc. o Update SINQD etc to use REMPI/2.

Raymond Toy authored
o Adjust code in accuratesinqd and accuratecosqd to handle values of 0 <= j <= 3, instead of 1 <= j <= 2. o Add accuratesincosqd.

 13 Oct, 2007 1 commit


Raymond Toy authored
2/pi. o Implement accurate sin and cos routines to use this new routine. (Not used yet.)

 10 Oct, 2007 1 commit


Raymond Toy authored
o Declare arg as doublefloat, not float.

 12 Sep, 2007 1 commit


Raymond Toy authored
o Remove unused var R1 in EXPQD/REDUCE. o TANQD was calling ZEROP instead of ZEROPQD. o Comment out extra copy of ASINHQD. qdio.lisp: o Ignore unused var in QDPRINTEXPONENT and QDREADER. qd.lisp: o Remove extra version of DIVQD.

 25 Aug, 2007 1 commit


Raymond Toy authored

 14 Jun, 2007 1 commit


toy authored
qdfun.lisp: o Move implementations and timing/test functions to other file. qdextra.lisp: o Stuff here. qd.system: o Add new system for the extra stuff.

 13 Jun, 2007 5 commits
 12 Jun, 2007 3 commits


toy authored
would set the threshold to 0 and we'd never exit the loop. (Should we change the threshold to be something else? if x is less than about 1d33, we don't need any more terms of the taylor series.)

toy authored
o Oops. Desired iteration was chosen incorrectly if xx and yy had different signs.

toy authored
o SQRTQD has roundoff problems for very large and very small numbers. Solve this by scaling the number by a power of 4 before computing the square root. o Moved LOGBFINITE and the core of QDCSSQS to this file from qdmethods.lisp. Rename the core routine as HYPOTQD. o Use it in ATANQD/NEWTON to get rid of unnecessary overflow. qdmethods.lisp: o Moved LOGBFINITE and the core of QDCSSQS from this file to qdfun.lisp. Use HYPOTQD in QDCSSQS. qdpackage.lisp: o Export HYPOTQD.

 02 Jun, 2007 3 commits


toy authored
tighter. o Rearrange the computations in LOGQD/HALLEY to get rid of premature overflow. o Improve TANHQD so we don't get spurious overflows. Leave the possibility of producing very accurate values of TANHQD for large arguments.

toy authored
handle larger numbers. We still have problems for numbers near MOSTPOSITIVEDOUBLEFLOAT, though.

toy authored

 01 Jun, 2007 4 commits
 30 May, 2007 1 commit


toy authored

 25 May, 2007 1 commit


toy authored
