sinpi

Вычислите sin (X*pi) точно

Синтаксис

Описание

пример

Y = sinpi(X) вычисляет sin(X*pi) явным образом не вычисляя X*pi. Это вычисление более точно, чем sin(X*pi) потому что значение с плавающей точкой pi приближение π. В частности:

  • Для целых чисел, sinpi(n) является точно нулевым.

  • Для нечетных целых чисел, sinpi(n/2) +1 или-1.

Примеры

свернуть все

Сравните точность sinpi(X) по сравнению с sin(X*pi).

Создайте вектор значений.

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

Вычислите синус X*pi использование нормального sin функция.

Y = sin(X*pi)
Y = 1×5

         0    1.0000    0.0000   -1.0000   -0.0000

Результаты содержат небольшие числовые ошибки вследствие того, что pi приближение с плавающей точкой истинного значения π. Например, Y(3) не является точно нулевым даже при том, что sin(π)=0.

Y(3)
ans = 1.2246e-16

Используйте sinpi вычислить те же значения. В этом случае результаты точны.

Z = sinpi(X)
Z = 1×5

     0     1     0    -1     0

Z(3)
ans = 0

Входные параметры

свернуть все

Входной массив, заданный как скалярный, векторный, матричный или многомерный массив.

Типы данных: single | double
Поддержка комплексного числа: Да

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

| |

Введенный в R2018b