FFT及周期图法算功率谱密度
t=0:0.0001:0.1; %时间间隔为0.0001,说明采样频率为10000Hz
x=square(2*pi*1000*t); %产生基频为1000Hz的方波信号
n=randn(size(t)); %白噪声
f=x; %在信号中加入白噪声
figure(1);
subplot(2,1,1);
plot(t,f); %画出原始信号的波形图
ylabel('幅值(V)');
xlabel('时间(s)');
title('原始信号');
y=fft(f,1024); %对原始信号进行离散傅里叶变换,参加DFT采样点的个数为1024
subplot(2,1,2);
m=abs(y);
f1=(0:length(y)/2-1)'*10000/length(y);%计算变换后不同点对应的幅值
plot(f1,m(1:length(y)/2)*2/length(y));
ylabel('幅值的模');xlabel('时间(s)');title('原始信号傅里叶变换');
%用周期图法估计功率谱密度
p=y.*conj(y)/1024; %计算功率谱密度
ff=10000*(0:499)/1024; %计算变换后不同点对应的频率值
figure(2);plot(ff,p(1:500));ylabel('幅值');xlabel('频率(Hz)');
title('功率谱密度(周期图法)');


求FFT变换时,纵坐标和横坐标的问题
clear all;clc fs=500; t=(0:1:100)/fs; s=cos(2*pi*50*t); n=length(t); figure(1),subplot(211);plot(t,s) f=fftshift(fft(s)); subplot(212);plot((-n/2:n/2-1)*fs/n,abs(f)*2/n);

路漫漫其修远兮,吾将上下而求索
浙公网安备 33010602011771号