📄 myfreqz.m
字号:
function [db,mag,pha,grd,w] = myfreqz(b,a);
%《数字信号处理教程——MATLAB释义与实现》子程序
% freqz 子程序的扩展版本,可得出分贝幅特性和群迟延特性
% 电子工业出版社出版 陈怀琛编著 2004年9月
%
% [db,mag,pha,grd,w] = myfreqz(b,a);
% ------------------------------------
% db = [0 到pi弧度]区间内的相对振幅(db)
% mag = [0 到pi弧度]区间内的绝对振幅
% pha = [0 到pi弧度]区间内的相位响应
% grd = [0 到pi弧度]区间内的群延迟
% w = [0 到pi弧度]区间内的501个频率样本向量
% b = Ha(z)的分子多项式系数(对FIR b=h)
% a = Ha(z)的分母多项式系数(对 FIR: a=[1])
%
[H,w] = freqz(b,a,1000,'whole'); % 用MATLAB中的freqz函数计算数字系统频率响应
H = (H(1:1:501))'; w = (w(1:1:501))'; % 取其前一半,并化为列向量
mag = abs(H); % 求其幅特性
db = 20*log10((mag+eps)/max(mag)); % 化为分贝值
pha = angle(H); % 求其相特性
grd = grpdelay(b,a,w); % 求其群迟延特性
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -