发布时间 : 星期六 文章实验二 参考 快速傅立叶变换(FFT)及其应用更新完毕开始阅读
%进行FFT变换并做频谱图
y=fft(x);%进行fft变换 mag=abs(y);%求幅值
f=(0:length(y)-1)'*fs/length(y);%进行对应的频率转换 figure(2);
subplot(232);
plot(f,mag);%做频谱图 xlabel('频率(Hz)'); ylabel('幅值');
title('矩形波幅频谱图'); grid;
%求均方根谱 sq=abs(y); figure(2);
subplot(233); plot(f,sq);
xlabel('频率(Hz)'); ylabel('均方根谱');
title('矩形波均方根谱'); grid;
%求功率谱 power=sq.^2; figure(2); subplot(234); plot(f,power);
xlabel('频率(Hz)'); ylabel('功率谱'); title('矩形波功率谱'); grid;
%求对数谱 ln=log(sq); figure(2); subplot(235); plot(f,ln);
xlabel('频率(Hz)'); ylabel('对数谱'); title('矩形波对数谱'); grid;
%用IFFT恢复原始信号 xifft=ifft(y); magx=real(xifft); ti=[0:length(xifft)-1]/fs; figure(2); subplot(236);
plot(ti,magx);
xlabel('t'); ylabel('y');
title('通过IFFT转换的矩形波波形');
grid;
%****************3.白噪声****************% fs=10;%设定采样频率 t=-5:0.1:5;
x=zeros(1,100); x(50)=100000;
figure(3); subplot(231);
plot(t(1:100),x);%作白噪声的时域波形 xlabel('t');
ylabel('y');
title('白噪声时域波形'); grid;
%进行FFT变换并做频谱图 y=fft(x);%进行fft变换
mag=abs(y);%求幅值
f=(0:length(y)-1)'*fs/length(y);%进行对应的频率转换 figure(3); subplot(232);
plot(f,mag);%做频谱图 xlabel('频率(Hz)'); ylabel('幅值');
title('白噪声幅频谱图'); grid;
%求均方根谱 sq=abs(y); figure(3); subplot(233); plot(f,sq);
xlabel('频率(Hz)'); ylabel('均方根谱');
title('白噪声均方根谱'); grid;
%求功率谱 power=sq.^2; figure(3); subplot(234); plot(f,power);
xlabel('频率(Hz)'); ylabel('功率谱');
title('白噪声功率谱'); grid;
%求对数谱 ln=log(sq); figure(3); subplot(235); plot(f,ln);
xlabel('频率(Hz)'); ylabel('对数谱'); title('白噪声对数谱'); grid;
%用IFFT恢复原始信号 xifft=ifft(y);
magx=real(xifft); ti=[0:length(xifft)-1]/fs; figure(3); subplot(236); plot(ti,magx); xlabel('t');
ylabel('y');
title('通过IFFT转换的白噪声波形'); grid;