5 ms·
"How bad can it be, I mean I know that numerics are not many people's strong suit, but..." ... ... ... oh wow, the math functions are really bad implementation
by jcranmer 5mo ago
"How bad can it be, I mean I know that numerics are not many people's strong suit, but..."
... ... ... oh wow, the math functions are really bad implementations. The range reduction on the sin/cos functions are yikes-level. Like the wrong input gives you an infinite loop level of yikes.
- lacewing 5mo agoCommendable accuracy, too: https://godbolt.org/z/s9haz611Y https://godbolt.org/z/s9haz611Y
- chrismorgan 5mo agoHere’s a diagram that very visibly shows the error: <https://www.wolframalpha.com/input?i=plot+y+%3D+sin%28x%29%2C+y+%3D+x+*+%281+%E2%88%92+x%C2%B2%2F6+*+%281+%E2%88%92+x%C2%B2%2F20+*+%281+-+x%C2%B2%2F42%29%29%29+from+x%3D%E2%88%92%CF%80+to+%CF%80 https://www.wolframalpha.com/input?i=plot+y+%3D+sin%28x%29%2...>. And that’s even without accumulated float error if you start outside the range [−π, π] (huge numbers will just be wildly wrong).