@Thomas Klemm -> CORDIC Article
|
06-04-2014, 06:21 PM
Post: #25
|
|||
|
|||
RE: @Thomas Klemm -> CORDIC Article
(06-04-2014 06:06 PM)pito Wrote:Quote:I recently implemented from scratch all the transcendental functions using CORDICOn which hw platform your implementation runs (cpu)? Right now it's running on x86 (actually amd64). (06-04-2014 06:06 PM)pito Wrote:Quote:But how do we know right from wrong?The 9 degree test: That's my point, it's hard to find the right result. Obviously the 9.0 is incorrect if we accept that rounding is a fact. What I did to check: I got all my partial results at 34 digits precision on the stack, for each operation. Then I set the precision to 9 digits more. Then I picked each partial result and applied the operation (sin, cos, etc), and compared the result with higher precision to the rounded one to verify correct rounding (so I took a previous result, rounded to 34 digits, and used it as argument to a function with 43 digits). newRPL did the correct rounding every time. I found also that doing * PI / 180 is not the same as / 180 * PI (difference of 1 in the last digit). So I guess the "correct" answer will also depend on the order of the operations. I also tried preccalc (from sourceforge), which uses adaptive precision and also gives the useless 9.0. Claudio |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 5 Guest(s)