# arctan

Inverse tangent function

### Use only in the MuPAD Notebook Interface.

This functionality does not run in MATLAB.

## Syntax

```arctan(`x`)
arctan(`y`, `x`)
```

## Description

`arctan(x)` represents the inverse of the tangent function.

`arctan(y, x)` is an alias for `arg``(x, y)`.

The angle returned by this function is measured in radians, not in degrees. For example, the result π represents an angle of 180o.

`arctan` is defined for complex arguments.

Floating-point values are returned for floating-point arguments. Floating-point intervals are returned for interval arguments. Unevaluated function calls are returned for most exact arguments.

If the argument is a rational multiple of `I`, the result is expressed in terms of hyperbolic functions. See Example 2.

The inverse tangent function is multivalued. The MuPAD® `arctan` function returns the value on the main branch. The branch cuts are the intervals interval(- i ∞, [- i]) and interval([i], i ∞) on the imaginary axis. Thus, `arctan` returns values, such that y = arctan(x) satisfies for any finite complex x.

The `tan` function returns explicit values for arguments that are certain rational multiples of π. For these values, `arctan` returns an appropriate rational multiple of π on the main branch. See Example 3.

The values jump when the arguments cross a branch cut. See Example 4.

The float attributes are kernel functions. Thus, floating-point evaluation is fast.

If you call `arctan` with two arguments, `y` and `x`, MuPAD calls the `arg` function that computes the polar angle of a complex number `x + I*y`. See Example 7 and the `arg` help page.

## Environment Interactions

When called with a floating-point argument, `arctan` is sensitive to the environment variable `DIGITS` which determines the numerical working precision.

## Examples

### Example 1

We demonstrate some calls with exact and symbolic input data:

```arcsin(1), arccos(1/sqrt(2)), arctan(5 + I), arccsc(1/3), arcsec(I), arccot(1)```

`arcsin(-x), arccos(x + 1), arctan(1/x)`

Floating-point values are computed for floating-point arguments:

`arcsin(0.1234), arccos(5.6 + 7.8*I), arccot(1.0/10^20)`

On input of floating-point intervals, these functions compute floating-point intervals containing the image sets:

`arcsin(0...1), arccos(0...1)`

`arcsin(2...3)`

Note that certain types of input lead to severe overestimation, sometimes returning the whole image set of the function in question:

```arccsc(-2...2); csc(arccsc(-2...2))```

### Example 2

Arguments that are rational multiples of `I` are rewritten in terms of hyperbolic functions:

`arcsin(5*I), arccos(5/4*I), arctan(-3*I)`

For other complex arguments unevaluated function calls without simplifications are returned:

`arcsin(1/2^(1/2) + I), arccos(1 -3*I)`

### Example 3

Some special values are implemented:

`arcsin(1/sqrt(2)), arccos((5^(1/2) - 1)/4), arctan(3^(1/2) - 2)`

Such simplifications occur for arguments that are trigonometric images of rational multiples of π:

`sin(9/10*PI), arcsin(sin(9/10*PI))`

`cos(PI/8)/sin(PI/8), arctan(cos(PI/8)/sin(PI/8))`

### Example 4

The values jump when crossing a branch cut:

`arcsin(2.0 + I/10^10), arcsin(2.0 - I/10^10)`

On the branch cut, the values of `arcsin` coincide with the limit "from below" for real arguments x > 1. The values coincide with the limit "from above" for real x < - 1:

`arcsin(1.2), arcsin(1.2 - I/10^10), arcsin(1.2 + I/10^10)`

`arcsin(-1.2), arcsin(-1.2 + I/10^10), arcsin(-1.2 - I/10^10)`

### Example 5

The inverse trigonometric functions can be rewritten in terms of the logarithm function with complex arguments:

`rewrite(arcsin(x), ln), rewrite(arctan(x), ln)`

### Example 6

Various system functions such as `diff`, `float`, `limit`, or `series` handle expressions involving the inverse trigonometric functions:

`diff(arcsin(x^2), x), float(arccos(3)*arctan(5 + I))`

`limit(arcsin(x^2)/arctan(x^2), x = 0)`

`series(arctan(sin(x)) - arcsin(tan(x)), x = 0, 10)`

`series(arccos(2 + x), x, 3)`

### Example 7

When you call `arctan` with two arguments, MuPAD calls the `arg` function and computes the polar angle of a complex number:

`arctan(y, x)`

## Parameters

 `x` `y`, `x` Arithmetical expressions representing real numbers

## Return Values

Arithmetical expression or floating-point interval.

`x`