[octgit]OCT: A portable Lisp implementation for quaddouble precision floats branch master updated. 3c136f7ca5106ab99c95ffbc18a2b8c70d007342
Raymond Toy
rtoy at commonlisp.net
Mon Nov 25 16:20:57 UTC 2013
This is an automated email from the git hooks/postreceive script. It was
generated because a ref change was pushed to the repository containing
the project "OCT: A portable Lisp implementation for quaddouble precision floats".
The branch, master has been updated
via 3c136f7ca5106ab99c95ffbc18a2b8c70d007342 (commit)
from 6e6d810e0e1e9064dba180f758cad56a31877f1f (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
 Log 
commit 3c136f7ca5106ab99c95ffbc18a2b8c70d007342
Author: Raymond Toy <rtoy at google.com>
Date: Sun Nov 24 20:53:22 2013 0800
Clean up rempi/2.
o Remove old version
o Update new version to skip reduction if the arg <= pi/4.
diff git a/qdfun.lisp b/qdfun.lisp
index 91c0b32..b3ae7b6 100644
 a/qdfun.lisp
+++ b/qdfun.lisp
@@ 783,23 +783,12 @@ is the cosine of A"
(subqd f +qdpi/2+))))))
(defun rempi/2 (a)
 ;; If the number is small enough, we don't need to use the full
 ;; precision algorithm to compute the remainder. The value of 1024
 ;; here is rather arbitrary. We should do an analysis to figure
 ;; where the breakpoint should be.
 (cond ((<= (abs (qd0 a)) 256)
 (let ((quot (truncate (qd0 (nintqd (divqd a +qdpi/2+))))))
 (values (mod quot 4)
 (subqd a (mulqdd +qdpi/2+ (float quot 1d0))))))
+ "Compute qd rem pi/2 = k + f, where k is an integer and f <
+ pi/4. Two values are returned: k mod 4 and f."
+ (cond ((qd<= (absqd a) +qdpi/4+)
+ (values 0 a))
(t
(rempi/2int a))))

(defun rempi/2 (a)
 ;; If the number is small enough, we don't need to use the full
 ;; precision algorithm to compute the remainder. The value of 1024
 ;; here is rather arbitrary. We should do an analysis to figure
 ;; where the breakpoint should be.
 (rempi/2int a))
(defun sinqd (a)

Summary of changes:
qdfun.lisp  19 ++++
1 file changed, 4 insertions(+), 15 deletions()
hooks/postreceive

OCT: A portable Lisp implementation for quaddouble precision floats
More information about the octcvs
mailing list