在进行FFT、IFFT时分别需除sqrt(N),乘sqrt(N),如下:
Data = randi([0,1],100,1)+i*randi([0,1],100,1);
ifftData = ifft(Data)*sqrt(100);
fftData = fft(Data)./sqrt(100);
这样做的目的是使能量归一化,即,使得时域和频域数据的能量一样。
测试如下:
Data_inf = randi([0,1],100,1)+i*randi([0,1],100,1);
ifftData = ifft(Data_inf)*sqrt(100);
fftData = fft(Data_inf)./sqrt(100);
powerData = sum(abs(Data_inf).^2);
powerifft = sum(abs(ifftData).^2);
powerfft = sum(abs(fftData).^2);
可知,数据能量都是94,验证分析正确。