ATAN2(3M) | Mathematical Library Functions | ATAN2(3M) |

c99 [flag... ]file...-lm[library... ] #include <math.h>doubleatan2(doubley,doublex);

floatatan2f(floaty,floatx);

long doubleatan2l(long doubley,long doublex);

These functions compute the principal value of the arc tangent of
*y/x*, using the signs of both arguments to determine the quadrant of
the return value.

Upon successful completion, these functions return the arc tangent
of *y*/*x* in the range [ −pi,pi ] radians.

If *y* is ±0 and *x* is < 0, ±pi is
returned.

If *y* is ±0 and *x* is > 0, ±0 is
returned.

If *y* is < 0 and *x* is ±0, −pi/2 is
returned.

If *y* is > 0 and *x* is ±0, pi/2 is
returned.

If *x* is 0, a pole error does not occur.

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

If *y* is ±0 and *x* is -0, ±pi is
returned.

If *y* is ±0 and *x* is +0, ±0 is
returned.

For finite values of ±*y* > 0, if x is −Inf,
±pi is returned.

For finite values of ±*y* > 0, if x is +Inf,
±0 is returned.

For finite values of *x*, if *y* is ±Inf,
±pi/2 is returned.

If *y* is ±Inf and *x* is −Inf,
±3pi/4 is returned.

If *y* is ±Inf and *x* is +Inf, ±pi/4 is
returned.

If both arguments are 0, a domain error does not occur.

No errors are defined.

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE | ATTRIBUTE VALUE |

Interface Stability | Standard |

MT-Level | MT-Safe |

math.h(3HEAD), atan(3M), isnan(3M), tan(3M), attributes(7), standards(7)

July 12, 2006 | SunOS 5.11 |