📄 freqzphase.m
字号:
function [f,F,A1,A2,phase]=FreqzPhase(xh)%f为频率(横坐标),A1为DFT转换后原始振幅,A2为调整后振幅,phase为相位(-180度-180度),xh为待分析的信号
dt=0.001; %原信号的采样间隔,一般为0.001s,即1ms。
F=fft(xh,1025);
f=(-512:512)/(1024*dt); %将采样频率转换为Niquist频率(信号的最高频率),即采样间隔频率2倍的倒数.
A1=abs(F)/1025;%若对模取平方即为功率谱密度。有的地方采用20*log10(abs(F))是变为分贝(db),起到一种增大的作用
A2=fftshift(A1);%(将正负频率顺序调整为正确的的顺序)
phase=(angle(F)*180/pi);%angle命令就是求虚部比实部的反正切函数值。
figure
plot(f,A2,'r-');%绘出振幅谱
figure
plot(f,phase);%绘出相位谱
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -