# sinpi

Compute sin(X*pi) accurately

## Syntax

``Y = sinpi(X)``

## Description

example

````Y = sinpi(X)` computes `sin(X*pi)` without explicitly computing `X*pi`. This calculation is more accurate than `sin(X*pi)` because the floating-point value of `pi` is an approximation of π. In particular: For integers, `sinpi(n)` is exactly zero.For odd integers, `sinpi(n/2)` is +1 or -1. ```

## Examples

collapse all

Compare the accuracy of `sinpi(X)` vs. `sin(X*pi)`.

Create a vector of values.

`X = [0 1/2 1 3/2 2];`

Calculate the sine of `X*pi` using the normal `sin` function.

`Y = sin(X*pi)`
```Y = 1×5 0 1.0000 0.0000 -1.0000 -0.0000 ```

The results contain small numerical errors due to the fact that `pi` is a floating-point approximation of the true value of $\pi$. For instance, `Y(3)` is not exactly zero even though $\mathrm{sin}\left(\pi \right)=0$.

`Y(3)`
```ans = 1.2246e-16 ```

Use `sinpi` to calculate the same values. In this case, the results are exact.

`Z = sinpi(X)`
```Z = 1×5 0 1 0 -1 0 ```
`Z(3)`
```ans = 0 ```

## Input Arguments

collapse all

Input array, specified as a scalar, vector, matrix, or multidimensional array.

Data Types: `single` | `double`
Complex Number Support: Yes

## Version History

Introduced in R2018b