fft 幅值谱
clear;clc;fs=1e7;
t=0:1/fs:100e-6;
p=4;
q=1;
a=sqrt(p/q);%确定方差
z=randn(1,length(t));
z=z-mean(z);
z=z/std(z);
x=mean(z);
y=std(z);
z=a*z;
plot(1e6*t,z);
xlabel('us');
hold on;
%Z=fft(z-mean(z),length(t));
Z=fft(z,length(t));
%Z3=sqrt(2*Z.*conj(Z)/(length(Z)));
Z3=2*sqrt(Z.*conj(Z))/(length(Z));
%Z3=sqrt(Z.*conj(Z));
%disp(z);
%Z3=2*abs(Z)/(length(t));
%mag1=20*log10(Z3);
%disp(mag1);
%Y11=Y1.*conj(Y1)/(length(Y1));
f=10000*(0:(length(Z)-1)/2)/length(Z);
figure,plot(f,Z3(1:1+(length(Z)-1)/2));
hold on;
xlabel('kHZ');
为何幅值不能和原先差不多阿?? 用FFT变换后幅值相位都出现误差,需要校正后才能和原来的一样,加不同窗函数的校正系数不一样,要是加矩形窗,幅值的校正系数是一,加汉宁窗的校正系数是2,即使校正了也跟原来的有误差,除非你是整周期采样,才能保证一样,其它的都有误差
页:
[1]