cpp/numeric/math/atan2

@1-3@ Computes the arc tangent of using the signs of arguments to determine the correct quadrant.

Return value
If no errors occur, the arc tangent of ($arctan$) in the range $[-&pi;, +&pi;]$ radians, is returned.

If a domain error occurs, an implementation-defined value is returned (NaN where supported).

If a range error occurs due to underflow, the correct result (after rounding) is returned.

Error handling
Errors are reported as specified in math_errhandling.

Domain error may occur if and  are both zero.

If the implementation supports IEEE floating-point arithmetic (IEC 60559),
 * If and  are both zero, domain error does not occur
 * If and  are both zero, range error does not occur either
 * If is zero, pole error does not occur
 * If is ±0 and  is negative or -0, ±&pi; is returned
 * If is ±0 and  is positive or +0, ±0 is returned
 * If is ±∞ and  is finite, ±&pi;/2 is returned
 * If is ±∞ and  is -∞, ±3&pi;/4 is returned
 * If is ±∞ and  is +∞, ±&pi;/4 is returned
 * If is ±0 and  is negative, -&pi;/2 is returned
 * If is ±0 and  is positive, +&pi;/2 is returned
 * If is -∞ and  is finite and positive, +&pi; is returned
 * If is -∞ and  is finite and negative, -&pi; is returned
 * If is +∞ and  is finite and positive, +0 is returned
 * If is +∞ and  is finite and negative, -0 is returned
 * If either is NaN or  is NaN, NaN is returned