cordicacos

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

Описание

пример

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