List of utility methods to do atan
double | atan(double a) Returns the arc tangent of an angle, in the range of -pi/2 through pi/2. return Math.atan(a);
|
double | atan(double a) Returns the arc tangent of an angle, in the range of -pi/2 through pi/2. double w, s1, s2, z; int id; long hx = Double.doubleToLongBits(a); long ix = hx & no_sign_mask; if (ix >= 0x4410000000000000L) { if (ix > exp_mask) { return (a + a); if (hx > 0) return (atanhi[3] + atanlo[3]); else return (-atanhi[3] - atanlo[3]); if (ix < 0x3fdc000000000000L) { if (ix < 0x3e20000000000000L) { return (a); id = -1; } else { a = Math.abs(a); if (ix < 0x3ff3000000000000L) { if (ix < 0x3fe6000000000000L) { id = 0; a = (2.0 * a - 1.0) / (2.0 + a); else { id = 1; a = (a - 1.0) / (a + 1.0); } else { if (ix < 0x4003800000000000L) { id = 2; a = (a - 1.5) / (1.0 + 1.5 * a); } else { id = 3; a = -1.0 / a; z = a * a; w = z * z; s1 = z * (aT[0] + w * (aT[2] + w * (aT[4] + w * (aT[6] + w * (aT[8] + w * aT[10]))))); s2 = w * (aT[1] + w * (aT[3] + w * (aT[5] + w * (aT[7] + w * aT[9])))); if (id < 0) return (a - a * (s1 + s2)); else { z = atanhi[id] - ((a * (s1 + s2) - atanlo[id]) - a); if (hx < 0) return (-z); else return (z); |
double | atan(double arg) atan if (arg > 0) { return msatan(arg); return -msatan(-arg); |
double | atan(double x) Approximates the atan function. double res; if (Math.abs(x) < 1) { res = x / (1 + 0.28 * x * x); } else { if (x < 0.0) { x = -x; res = (Math.PI / 2 - x / (x * x + 0.28)); res = -res; ... |
float | atan(float tan_value) atan if (tan_value < -32f) { return -1.54f; } else if (tan_value > 32f) { return 1.54f; } else { return atan_table[(int) ((tan_value + 32f) * accuracy_level / 64f)]; |
float | atan(float value) atan return (float) Math.atan(value); |
float | atan(float x) Arctan boolean signChange = false; boolean Invert = false; int sp = 0; float x2, a; if (x < 0.) { x = -x; signChange = true; if (x > 1.) { x = 1 / x; Invert = true; while (x > (float) Math.PI / 12) { sp++; a = x + SQRT3; a = 1 / a; x = x * SQRT3; x = x - 1; x = x * a; x2 = x * x; a = x2 + 1.4087812f; a = 0.55913709f / a; a = a + 0.60310579f; a = a - (x2 * 0.05160454f); a = a * x; while (sp > 0) { a = a + (float) Math.PI / 6; sp--; if (Invert) a = (float) Math.PI / 2 - a; if (signChange) a = -a; return a; |
int | atan(int f) atan int sqr = mul(f, f); int result = 1365; result = mul(result, sqr); result -= 5579; result = mul(result, sqr); result += 11805; result = mul(result, sqr); result -= 21646; ... |
double | atan(Integer a) Atan. return Math.atan(a.doubleValue());
|
double | atan(Number x) atan return Math.atan(x.doubleValue());
|