On 9 November 2017 at 16:45, Alex Henrie <alexhenrie24 at gmail.com> wrote: > - *pangle = 2.0f * acosf(pq->w); > + *pangle = 2.0f * acos(pq->w); /* acosf has too much rounding error */ Does that rounding error by any chance get better if you replace "acosf(x)" with "atan2f(sqrtf((1.0f - x) * (1.0f + x)), x)"?