Twierdzenie Parsevala w Pythonie

Próbuję opanować funkcjonalność Fft Pythona, a jedną z dziwnych rzeczy, na które się natknąłem, jest to, żeTwierdzenie Parsevala wydaje się nie mieć zastosowania, ponieważ daje teraz różnicę około 50, podczas gdy powinna wynosić 0.

import numpy as np
import matplotlib.pyplot as plt
import scipy.fftpack as fftpack

pi = np.pi

tdata = np.arange(5999.)/300
dt = tdata[1]-tdata[0]

datay = np.sin(pi*tdata)+2*np.sin(pi*2*tdata)
N = len(datay)

fouriery = abs(fftpack.rfft(datay))/N

freqs = fftpack.rfftfreq(len(datay), d=(tdata[1]-tdata[0]))

df = freqs[1] - freqs[0]

parceval = sum(datay**2)*dt - sum(fouriery**2)*df
print parceval

plt.plot(freqs, fouriery, 'b-')
plt.xlim(0,3)
plt.show()

Jestem prawie pewien, że jest to współczynnik normalizacji, ale wydaje mi się, że nie mogę go znaleźć, ponieważ wszystkie informacje, które mogę znaleźć na temat tej funkcji, todokumentacja scipy.fftpack.rfft.

questionAnswers(1)

yourAnswerToTheQuestion