Построение амплитуды и фазы преобразования Фурье - PullRequest
0 голосов
/ 29 августа 2018

Я пытаюсь построить величину и фазовое представление преобразования Фурье.

Вот что у меня есть:

syms t w
y(t) = 2*cos(2000*pi*t)*cos(2*pi*(10^6)*t);
x(w) = fourier(y);
h = abs(x);
a = angle(x)
figure, fplot(h)
figure, fplot(a)

Но когда я строю график, я просто получаю две прямые линии в 0. Я понимаю, что преобразование Фурье возвращает дельта-функции Дирака. В любом случае я могу построить эти функции в Matlab?

1 Ответ

0 голосов
/ 29 августа 2018

Вот аналогичный пример, который явно определяет вектор t:

t = linspace(0,1,82);
y = 2*cos(2000*pi*t).*cos(2*pi*(10^6)*t);
x = fft(y);
h = abs(x);
a = angle(x);

figure, plot(t, x)
figure, plot(t, a)

У меня есть догадка, что ваш t вектор увеличивается таким образом, что получается только значения "some-integer", умноженные на pi. В результате значения -1 и 1 будут возвращены из функции cos, вычисленной в радианах.

Приведенный выше код выдает следующее:

enter image description here enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...