HP-UX Reference (11i v2 04/09) - 3 Library Functions A-M (vol 6)
a
atan2d(3M) atan2d(3M)
NAME
atan2d( ), atan2df( ), atan2dl( ), atan2dw( ), atan2dq( ) - degree-valued arctangent-and-quadrant functions
SYNOPSIS
#include <math.h>
double atan2d(double y, double x);
float atan2df(float y, float x);
Itanium(R)-based System Only
long double atan2dl(long double y, long double x);
extended atan2dw(extended y, extended x);
quad atan2dq(quad y, quad x);
DESCRIPTION
atan2d() is a degree-valued version of the
atan2() function. It returns the arctangent of y/x, in the
range −180 to 180, using the signs of both arguments to determine the quadrant of the return value.
atan2df() is a float version of atan2d(); it takes
float arguments and returns a float result.
Itanium-based System Only
atan2dl() is a long double version of atan2d(); it takes long double arguments and returns
a long double result.
atan2dw() is an extended version of atan2d(); it takes extended arguments and returns an
extended result.
atan2dq() is equivalent to atan2dl() on HP-UX systems.
USAGE
To use these functions compile either with the default
-Ae option or with the
-Aa and the
-D_HPUX_SOURCE options.
To use (for Itanium-based systems)
atan2dw() or atan2dq(), compile also with the -fpwidetypes
option.
To use any of these functions, make sure your program includes
<math.h>, and link in the math library
by specifying -lm on the compiler or linker command line.
For more information, see the HP-UX Floating-Point Guide.
RETURN VALUE
If y is ±0 and x is −0, atan2d() returns ±180 respectively.
If y is ±0 and x is +0,
atan2d() returns ±0 respectively.
If y is ±0 and x is less than zero,
atan2d() returns ±180 respectively.
If y is ±0 and x is greater than zero,
atan2d() returns returns ±0 respectively.
If y is less than zero and x is zero,
atan2d() returns −90.
If y is greater than zero and x is zero,
atan2d() returns 90.
If y is greater than zero and x is −INFINITY,
atan2d() returns 180.
If y is less than zero and x is −INFINITY,
atan2d() returns −180.
If y is greater than zero and x is INFINITY,
atan2d() returns +0.
If y is less than zero and x is INFINITY,
atan2d() returns −0.
If y is ±INFINITY and x is finite,
atan2d() returns ±90 respectively.
If y is ±INFINITY and x is −INFINITY,
atan2d() returns ±135 respectively.
If y is ±INFINITY and x is +INFINITY,
atan2d() returns ±45 respectively.
If x or y is NaN,
atan2d() returns NaN.
HP-UX 11i Version 2: September 2004 − 1 − Hewlett-Packard Company Section 3−−43