fvtool
可视化DSP滤波器的频率响应
描述
fvtool (
显示过滤器系统对象™的幅度响应。sysobj
)
例子
半带抽取滤波器的脉冲和频率响应
为44.1 kHz采样的数据创建两个低通半带抽取滤波器。第一个过滤器中的设计方法设置为“Equiripple”
第二个过滤器设置为“皇帝”
.
输出数据速率是输入采样速率的1/2,即22.05 kHz。指定滤波器顺序为52,过渡宽度为4.1 kHz。
Fs = 44.1e3;filterspec =“滤镜顺序和过渡宽度”;订单= 52;TW = 4.1e3;firhalfbanddecimEqui = dsp。FIRHalfbandDecimator (...规范= filterspec,...FilterOrder =订单,...TransitionWidth = TW,...DesignMethod =“Equiripple”,...SampleRate = Fs);firhalfbanddecimKaiser = dsp。FIRHalfbandDecimator (...规范= filterspec,...FilterOrder =订单,...TransitionWidth = TW,...DesignMethod =“皇帝”,...SampleRate = Fs);
画出两个滤波器的脉冲响应。零阶系数延迟26个样本,等于滤波器的组延迟。这就产生了一个因果半带滤波器。
hfvt = fvtool(firhalfbanddecimEqui,firhalfbanddecimKaiser,...分析=“冲动”);传奇(hfvt, {“Equiripple”,“皇帝”})
画出幅值和相位响应。
如果滤波器的规格很紧,比如一个非常高的滤波器阶数与一个非常窄的过渡宽度,滤波器设计使用“皇帝”
方法更有效地收敛。
hvftMag = fvtool(firhalfbanddecimEqui,firhalfbanddecimKaiser,...分析=“级”);传奇(hvftMag, {“Equiripple”,“皇帝”})
hvftPhase = fvtool(firhalfbanddecimEqui,firhalfbanddecimKaiser,...分析=“阶段”);传奇(hvftPhase, {“Equiripple”,“皇帝”})
FIR和IIR低通滤波器的脉冲和频率响应
为44.1 kHz采样的数据创建一个最小阶FIR低通滤波器。指定通带频率为8 kHz,阻带频率为12 kHz,通带波纹为0.1 dB,阻带衰减为80 dB。
Fs = 44.1e3;filtertype =“杉”;Fpass = 8e3;Fstop = 12e3;Rp = 0.1;停止= 80;FIRLPF = dsp。LowpassFilter (“SampleRate”Fs,...“FilterType”filtertype,...“PassbandFrequency”成就,...“StopbandFrequency”Fstop,...“PassbandRipple”Rp,...“StopbandAttenuation”, Astop);
设计一个具有与FIR低通滤波器相同特性的最小阶IIR低通滤波器。改变FilterType
属性的克隆筛选器信息检索
.
IIRLPF =克隆(FIRLPF);IIRLPF。FilterType =“信息检索”;
绘制FIR低通滤波器的脉冲响应图。零阶系数被延迟19个样本,这等于滤波器的组延迟。FIR低通滤波器是因果FIR滤波器。
fvtool (FIRLPF“分析”,“冲动”)
绘制IIR低通滤波器的脉冲响应图。
fvtool (IIRLPF“分析”,“冲动”)
绘制FIR低通滤波器的幅值和相位响应。
fvtool (FIRLPF“分析”,“频率”)
绘制IIR低通滤波器的幅值和相位响应。
fvtool (IIRLPF“分析”,“频率”)
计算实现FIR低通滤波器的成本。
成本(FIRLPF)
ans =带有字段的结构:NumCoefficients: 39 NumStates: 38 MultiplicationsPerInputSample: 39 AdditionsPerInputSample: 38
计算实现IIR低通滤波器的成本。IIR滤波器比FIR滤波器更有效。
成本(IIRLPF)
ans =带有字段的结构:NumCoefficients: 18 NumStates: 14 MultiplicationsPerInputSample: 18 AdditionsPerInputSample: 14
计算FIR低通滤波器的群时延。
grpdelay (FIRLPF)
计算IIR低通滤波器的组时延。FIR滤波器具有恒定的组延迟(线性相位),而其IIR对应则没有。
grpdelay (IIRLPF)
输入参数
sysobj
- - - - - -输入滤波器
filter系统对象
输入过滤器,指定为以下过滤器系统对象之一:
例子:firFilt = dsp。FIRFilter('Numerator', fir1(130, 2000/(8000/2))); fvtool(firFilt)
选项
- - - - - -筛选分析选项
“级”
(默认)|“阶段”
|“频率”
|“grpdelay”
|“phasedelay”
|“冲动”
|“步骤”
|“polezero”
|“系数”
|“信息”
|“magestimate”
|“noisepower”
过滤器分析选项,指定为以下之一:
“级”
——震级响应“阶段”
——相位响应“频率”
——频率响应“grpdelay”
——团队延迟“phasedelay”
——相位延迟“冲动”
——脉冲响应“步骤”
——阶跃响应“polezero”
——极点零点图“系数”
——系数向量“信息”
——过滤信息“magestimate”
——震级响应估计“noisepower”
——噪声功率谱舍入
例子:fvtool (firFilt“频率”)
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。
在R2021a之前,名称和值之间用逗号隔开,并括起来的名字
在报价。
例子:firFilt = dsp。FIRFilter('Numerator', fir1(130, 2000/(8000/2))); fvtool(firFilt,'Arithmetic','single')
Fs
- - - - - -采样率
标量
采样率,指定为标量。这个值决定了Nyquist间隔[-]Fs/ 2Fs/2],其中fvtool显示信道器中滤波器的频率响应。
数据类型:单
|双
算术
- - - - - -算术类型
“双”
(默认)|“单一”
|“固定”
指定分析过程中使用的算法。当算法输入未指定且过滤器System对象未锁定时,分析工具假定使用双精度过滤器。的“算术”
属性设置为“固定”
只适用于过滤具有定点属性的系统对象。
当“算术”
属性设置为“固定”
,该工具显示双精度参考滤波器和量化版本的滤波器。的CoefficientsDataType
System对象用于为所有分析选项创建过滤器的量化版本,但以下两个选项除外:
“magestimate”
——震级响应估计。“noisepower”
——噪声功率谱舍入
对于这两个分析选项,所有不动点设置都用于分析滤波器的量化版本。
版本历史
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。