Я узнал о преобразовании Фурье на уроках математики и думал, что понял их. Теперь я пытаюсь поиграть с R (статистическим языком) и на практике интерпретировать результаты дискретного БПФ. Вот что я сделал:
x = seq(0,1,by=0.1)
y = sin(2*pi*(x))
calcenergy <- function(x) Im(x) * Im(x) + Re(x) * Re(x)
fy <- fft(y)
plot(x, calcenergy(fy))
и получил этот график:
Если я правильно понимаю, это представляет «половину» спектра плотности энергии. Поскольку преобразование симметрично, я мог бы просто отразить все значения в отрицательных значениях x, чтобы получить полный спектр.
Однако я не понимаю, почему я получаю два спайка? Здесь только одна синусовая частота. Это эффект алиасинга?
Кроме того, я понятия не имею, как получить частоты из этого графика. Предположим, что единицами функции синуса были секунды, тогда пик на 1,0 в спектре плотности соответствует 1 Гц?
Еще раз: я понимаю теорию БПФ; практическое применение - проблема :).
Спасибо за любую помощь!