Lines Matching refs:acos
27 mpfr_acos (mpfr_ptr acos, mpfr_srcptr x, mpfr_rnd_t rnd_mode)
37 ("acos[%#R]=%R inexact=%d", acos, acos, inexact));
44 MPFR_SET_NAN (acos);
50 /* acos(0)=Pi/2 */
52 inexact = mpfr_const_pi (acos, rnd_mode);
53 mpfr_div_2ui (acos, acos, 1, rnd_mode); /* exact */
55 return mpfr_check_range (acos, inexact, rnd_mode);
69 if (compared > 0) /* acos(x) = NaN for x > 1 */
71 MPFR_SET_NAN(acos);
76 if (MPFR_IS_POS_SIGN (sign)) /* acos(+1) = 0 */
77 return mpfr_set_ui (acos, 0, rnd_mode);
78 else /* acos(-1) = Pi */
79 return mpfr_const_pi (acos, rnd_mode);
93 prec = MPFR_PREC (acos);
101 /* If x ~ 2^-N, acos(x) ~ PI/2 - x - x^3/6
104 if (MPFR_PREC (acos) >= MPFR_PREC (x) && MPFR_GET_EXP (x) < 0)
119 /* acos(x) = Pi/2 - asin(x) = Pi/2 - atan(x/sqrt(1-x^2)) */
130 MPFR_PREC (acos), rnd_mode)))
138 inexact = mpfr_set (acos, arcc, rnd_mode);
143 return mpfr_check_range (acos, inexact, rnd_mode);