Lines Matching full:atan
12 /* atan(x)
14 * 1. Reduce x to positive by atan(x) = -atan(-x).
19 * [0,7/16] atan(x) = t-t^3*(a1+t^2*(a2+...(a10+t^2*a11)...)
20 * [7/16,11/16] atan(x) = atan(1/2) + atan( (t-0.5)/(1+t/2) )
21 * [11/16.19/16] atan(x) = atan( 1 ) + atan( (t-1)/(1+t) )
22 * [19/16,39/16] atan(x) = atan(3/2) + atan( (t-1.5)/(1+1.5t) )
23 * [39/16,INF] atan(x) = atan(INF) + atan( -1/t )
37 4.63647609000806093515e-01, /* atan(0.5)hi 0x3FDDAC67, 0x0561BB4F */
38 7.85398163397448278999e-01, /* atan(1.0)hi 0x3FE921FB, 0x54442D18 */
39 9.82793723247329054082e-01, /* atan(1.5)hi 0x3FEF730B, 0xD281F69B */
40 1.57079632679489655800e+00, /* atan(inf)hi 0x3FF921FB, 0x54442D18 */
44 2.26987774529616870924e-17, /* atan(0.5)lo 0x3C7A2B7F, 0x222F65E2 */
45 3.06161699786838301793e-17, /* atan(1.0)lo 0x3C81A626, 0x33145C07 */
46 1.39033110312309984516e-17, /* atan(1.5)lo 0x3C700788, 0x7AF0CBBD */
47 6.12323399573676603587e-17, /* atan(inf)lo 0x3C91A626, 0x33145C07 */
69 pub fn atan(x: f64) -> f64 { in atan() function
139 use super::atan;
154 (atan(*input) - answer) / answer < 1e-5, in sanity_check()
158 atan(*input) in sanity_check()
165 assert_eq!(atan(0.0), 0.0); in zero()
170 assert_eq!(atan(f64::INFINITY), f64::consts::FRAC_PI_2); in infinity()
175 assert_eq!(atan(f64::NEG_INFINITY), -f64::consts::FRAC_PI_2); in minus_infinity()
180 assert!(atan(f64::NAN).is_nan()); in nan()