Documentation

This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English verison of the page.

arccot

Inverse cotangent function

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.

Syntax

```arccot(`x`)
```

Description

`arccot(x)` represents the inverse of the cotangent function.

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

`arccot` 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 cotangent function is multivalued. The MuPAD® `arccot` function returns the value on the main branch. The branch cut is the interval [- i, i] on the imaginary axis. Thus, `arccot` returns values, such that y = arccot(x) satisfies $-\frac{\pi }{2}<\Re \left(y\right)\le \frac{\pi }{2}$ for any finite complex x.

The `cot` function returns explicit values for arguments that are certain rational multiples of π. For these values, `arccot` 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.

 Note:   MuPAD defines `arccot` as ```arccot(x) = arctan(1/x)```, although `arccot` can return an unevaluated function call and does not rewrite itself in terms of `arctan`. As a consequence of this definition, the real line crosses the branch cut, and `arccot` has a jump discontinuity at the origin.

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

Environment Interactions

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

Examples

Example 1

Call `arccot` with the following exact and symbolic input arguments:

```arccot(1), arccot(1/sqrt(2)), arccot(5 + I), arccot(1/3), arccot(0), arccot(I/2)```
``` ```
`arccot(-x), arccot(x + 1), arccot(1/x)`
``` ```

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

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

Floating-point intervals are computed for interval arguments:

`arccot(-4...4), arccot(0...1)`
``` ```

Example 2

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

`arccot(5*I), arccot(5/4*I), arccot(-3*I)`
``` ```

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

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

Example 3

Some special values are implemented:

`arccot(1), arccot((5 - 2*5^(1/2))^(1/2)), arccot(3^(1/2) - 2)`
``` ```

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

`cot(9/10*PI), arccot(cot(9/10*PI))`
``` ```

Example 4

The values jump when crossing a branch cut:

`arccot(0.5*I + 10^(-10)), arccot(0.5*I - 10^(-10))`
``` ```

On the branch cut, the values of `arccot` coincide with the limit "from the right" for imaginary arguments ```x = c*i``` where `0 < c < 1`:

```limit(arccot(0.5*I - 1/n), n = infinity); limit(arccot(0.5*I + 1/n), n = infinity); arccot(0.5*I)```
``` ```
``` ```
``` ```

The values coincide with the limit "from the left" for imaginary arguments `x = c*i` where ```-1 < c < 0```:

```limit(arccot(-0.5*I - 1/n), n = infinity); limit(arccot(-0.5*I + 1/n), n = infinity); arccot(-0.5*I)```
``` ```
``` ```
``` ```

Example 5

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

`rewrite(arccot(x), ln)`
``` ```

Example 6

`diff`, `float`, `limit`, `taylor`, `series`, and other system functions handle expressions involving the inverse trigonometric functions:

`diff(arccot(x^2), x), float(arccos(3)*arccot(5 + I))`
``` ```
`limit(arccot(1 - sin(x)/x), x = 0)`
``` ```
`taylor(arccot(1/x), x = 0)`
``` ```
`series(arccot(x), x = 0)`
``` ```

Parameters

 `x`

Return Values

Arithmetical expression or floating-point interval.

`x`