manpagez: man pages & more
man atan2(3)
Home | html | info | man
atan2(3)                 BSD Library Functions Manual                 atan2(3)


NAME

     atan2 -- arc tangent function of two variables


SYNOPSIS

     #include <math.h>

     double
     atan2(double y, double x);

     long double
     atan2l(long double y, long double x);

     float
     atan2f(float y, float x);


DESCRIPTION

     The atan2() function computes the principal value of the arc tangent of
     y/x, using the signs of both arguments to determine the quadrant of the
     return value.


SPECIAL VALUES

     atan2(+-0, -0) returns +-pi.

     atan2(+-0, +0) returns +-0.

     atan2(+-0, x) returns +-pi for x < 0.

     atan2(+-0, x) returns +-0 for x > 0.

     atan2(y, +-0) returns +pi/2 for y > 0.

     atan2(y, +-0) returns -pi/2 for y < 0.

     atan2(+-y, -infinity) returns +-pi for finite y > 0.

     atan2(+-y, +infinity) returns +-0 for finite y > 0.

     atan2(+-infinity, x) returns +-pi/2 for finite x.

     atan2(+-infinity, -infinity) returns +-3*pi/4.

     atan2(+-infinity, +infinity) returns +-pi/4.


NOTES

     The atan2() function is used mostly to convert from rectangular (x,y) to
     polar (r,theta) coordinates that must satisfy x = r*cos theta and y =
     r*sin theta.  In general, conversions to polar coordinates should be com-
     puted thus:

           r    := hypot(x,y);  ... := sqrt(x*x+y*y)
           theta     := atan2(y,x).


VECTOR OPERATIONS

     If you need to apply the atan2() function to SIMD vectors or arrays,
     using the following functions provided by the Accelerate.framework may
     give significantly better performance:

     #include <Accelerate/Accelerate.h>

     vFloat atan2f(vFloat y, vFloat x);
     void vvatan2f(float *z, const float *y, const float *x, const int *n);
     void vvatan2(double *z, const double *y, const double *x, const int *n);


SEE ALSO

     acos(3), asin(3), atan(3), cos(3), cosh(3), sin(3), sinh(3), tan(3),
     tanh(3), math(3),


STANDARDS

     The atan2() function conforms to ISO/IEC 9899:2011.

BSD                            December 11, 2006                           BSD

Mac OS X 10.9.1 - Generated Mon Jan 6 19:05:15 CST 2014
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.