\angle

Синтаксис

theta = angle(z)

Описание

пример

theta = angle(z) возвращает угол фазы в интервале [-π, π] для каждого элемента комплексного массива z. Углы в theta таковы что z = abs(z).*exp(i*theta).

Примеры

свернуть все

Создайте комплексное число и вычислите его значение и фазу.

z = 2*exp(i*0.5)
z = 1.7552 + 0.9589i
r = abs(z)
r = 2
theta = angle(z)
theta = 0.5000

Создайте сигнал, который состоит из двух синусоид частот 15 Гц и 40 Гц. Первая синусоида имеет фазу -π/4, и второе имеет фазу π/2. Выберите сигнал на уровне 100 Гц в течение одной секунды.

fs = 100;
t = 0:1/fs:1-1/fs;
x = cos(2*pi*15*t - pi/4) - sin(2*pi*40*t);

Вычислите преобразование Фурье сигнала. Постройте значение преобразования как функция частоты.

y = fft(x);
z = fftshift(y);

ly = length(y);
f = (-ly/2:ly/2-1)/ly*fs;

stem(f,abs(z))
xlabel 'Frequency (Hz)'
ylabel '|y|'
grid

Вычислите фазу преобразования, удалять маленькое значение преобразовывает значения. Постройте фазу как функцию частоты.

tol = 1e-6;
z(abs(z) < tol) = 0;

theta = angle(z);

stem(f,theta/pi)
xlabel 'Frequency (Hz)'
ylabel 'Phase / \pi'
grid

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

свернуть все

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

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

Алгоритмы

angle берет комплексное число z = x + i y и использует функцию atan2, чтобы вычислить угол между положительным x - осью и лучом от источника до точки (x, y) в xy - плоскость.

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

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

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

| |

Представлено до R2006a

Для просмотра документации необходимо авторизоваться на сайте