cordicacos

Основанное на CORDIC приближение обратного косинуса

Синтаксис

theta = cordicacos(x)
theta = cordicacos(x, niters)

Описание

пример

theta = cordicacos(x) возвращает обратный косинус x на основе приближения CORDIC.

пример

theta = cordicacos(x, niters) возвращает обратный косинус x, выполняющего итерации niters алгоритма CORDIC.

Примеры

свернуть все

Вычислите обратный косинус объекта fi фиксированной точки с помощью реализации CORDIC.

a = fi(-1:.1:1,1,16);
b = cordicacos(a);
plot(a, b);
title('Inverse CORDIC Cosine');

Сравните вывод функции cordicacos и функции acos.

c = acos(double(a));
error = double(b)-c;
plot(a, error);
title('Error');

Найдите обратный косинус объекта fi с помощью реализации CORDIC и задайте количество итераций, которые должно выполнить ядро CORDIC. Постройте приближение CORDIC обратного косинуса с переменными количествами итераций.

a = fi(-1:.1:1, 1, 16);
for i = 5:5:20
    b = cordicacos(a,i);
    plot(a,b);
    hold on;
end
legend('5 iterations', '10 iterations', '15 iterations', '20 iterations')

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

свернуть все

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

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi
Поддержка комплексного числа: Да

Количество итераций, которые алгоритм CORDIC выполняет, заданный как положительный, скаляр с целочисленным знаком. Если вы не задаете niters, алгоритм использует значение по умолчанию. Для входных параметров фиксированной точки значение по умолчанию niters является тем меньше, чем размер слова входного массива, theta. Для входных параметров с двойной точностью значение по умолчанию niters равняется 52. Для входных параметров с одинарной точностью значение по умолчанию равняется 23.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi

Выходные аргументы

свернуть все

Угловые значения обратного косинуса в раде.

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

Функции

Введенный в R2018b