амплитуда ноль-бфт не то, что исключено - PullRequest
0 голосов
/ 16 мая 2019

У меня есть следующий код, чтобы получить «правильные ответы» от numpy fft.

import numpy as np
import matplotlib.pyplot as plt

n = np.pi/2
Fs = 140
t = np.arange(0,n,1/Fs)

f1, f2, f3 = (20,45,60)
a1 = np.sin(2*np.pi*f1*t)
a2 = np.sin(2*np.pi*f2*t)
a3 = np.sin(2*np.pi*f3*t)
y = a1+a2+a3

plt.subplot(2,1,1)
plt.xlim(0,n)
plt.ylim(y.min()-0.2,y.max()+0.5)
plt.plot(t,y)

plt.subplot(2, 1, 2)
N = len(t)
X = np.fft.fft(y)
freq = (Fs/2)*np.linspace(0,1,N//2)
plt.plot(freq, np.abs(X[:len(freq)])*2/N)
plt.show()

производит enter image description here

Почему амплитуды БПФ не одинаковы для каждой частоты? Помощь приветствуется.

...