# math.atan2()

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.

### Parameters

• y - Floating point value.
• x - Floating point value.

### Return value

Upon successful completion, this function returns the arc tangent of y/x in the range -`math.PI` to `math.PI` radians inclusive.

If y is ±0 and x is < 0, ±`math.PI` will be returned.

If y is ±0 and x is > 0, ±0 will be returned.

If y is < 0 and x is ±0, -`math.PI_2` will be returned.

If y is > 0 and x is ±0, `math.PI_2` will be returned.

If x is 0, a pole error will not occur.

If either x or y is `math.NAN`, a NaN will be returned.

If y is ±0 and x is +0, ±0 will be returned.

For finite values of ±y > 0, if x is `math.NEG_INFINITY`, ±`math.PI` will be returned.

For finite values of ±y > 0, if x is `math.POS_INFINITY`, ±0 will be returned.

For finite values of x, if y is `math.POS_INFINITY` or `math.NEG_INFINITY`, ±`math.PI_2` will be returned.

If y is `math.POS_INFINITY` or `math.NEG_INFINITY` and x is `math.NEG_INFINITY`, ±(3*`math.PI_4`) will be returned.

If y is `math.POS_INFINITY` or `math.NEG_INFINITY` and x is `math.POS_INFINITY`, ±`math.PI_4` will be returned.

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

If the result would cause an underflow, a range error occurs, and `math.atan2()` will return y/x.

No errors occur.

### Format

``````FLOAT
math.atan2(FLOAT y, FLOAT x)```
```