atan2f

ATAN2(3)                   Linux Programmer's Manual                  ATAN2(3)

NAME
       atan2, atan2f, atan2l - arc tangent function of two variables

SYNOPSIS
       #include <math.h>

       double atan2(double y, double x);
       float atan2f(float y, float x);
       long double atan2l(long double y, long double x);

       Link with -lm.

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       atan2f(), atan2l():
              _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 ||
              _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
              or cc -std=c99

DESCRIPTION
       These functions calculate the principal value of  the  arc  tangent  of
       y/x,  using the signs of the two arguments to determine the quadrant of
       the result.

RETURN VALUE
       On success, these functions return the principal value of the arc  tan-
       gent of y/x in radians; the return value is in the range [-pi, pi].

       If y is +0 (-0) and x is less than 0, +pi (-pi) is returned.

       If y is +0 (-0) and x is greater than 0, +0 (-0) is returned.

       If y is less than 0 and x is +0 or -0, -pi/2 is returned.

       If y is greater than 0 and x is +0 or -0, pi/2 is returned.

       If either x or y is NaN, a NaN is returned.

       If y is +0 (-0) and x is -0, +pi (-pi) is returned.

       If y is +0 (-0) and x is +0, +0 (-0) is returned.

       If  y is a finite value greater (less) than 0, and x is negative infin-
       ity, +pi (-pi) is returned.

       If y is a finite value greater (less) than 0, and x is positive  infin-
       ity, +0 (-0) is returned.

       If  y  is  positive infinity (negative infinity), and x is finite, pi/2
       (-pi/2) is returned.

       If y is positive infinity (negative infinity) and x is negative  infin-
       ity, +3*pi/4 (-3*pi/4) is returned.

       If  y is positive infinity (negative infinity) and x is positive infin-
       ity, +pi/4 (-pi/4) is returned.

ERRORS
       No errors occur.

ATTRIBUTES
       For  an  explanation  of  the  terms  used   in   this   section,   see
       attributes(7).

       +-----------------------------+---------------+---------+
       |Interface                    | Attribute     | Value   |
       +-----------------------------+---------------+---------+
       |atan2(), atan2f(), atan2l()  | Thread safety | MT-Safe |
       +-----------------------------+---------------+---------+
CONFORMING TO
       C99, POSIX.1-2001, POSIX.1-2008.

       The variant returning double also conforms to SVr4, 4.3BSD, C89.

SEE ALSO
       acos(3), asin(3), atan(3), carg(3), cos(3), sin(3), tan(3)

COLOPHON
       This  page  is  part of release 4.04 of the Linux man-pages project.  A
       description of the project, information about reporting bugs,  and  the
       latest     version     of     this    page,    can    be    found    at
       http://www.kernel.org/doc/man-pages/.

                                  2015-04-19                          ATAN2(3)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2021 Hurricane Electric. All Rights Reserved.