主要内容

同相

确定滤波器是否具有线性相位

语法

标志=islinphase(b,a)
标志=islinphase(sos)
标志=islinphase(d)
标志=islinphase(…,tol)

描述

旗帜=同相(B,A.)返回逻辑输出,旗帜,等于符合事实的如果滤波器系数为BA.定义线性相位滤波器。旗帜等于错误的如果滤波器没有线性相位。

旗帜=同相(求救)返回符合事实的如果由二阶截面矩阵指定的过滤器,求救,具有线性相位。求救是一个K-by-6矩阵,其中节数,K,必须大于或等于2。每行求救对应于二阶(双四阶)滤波器的系数第四排求救矩阵对应于[bi(1)bi(2)bi(3)ai(1)ai(2)ai(3)].

旗帜=同相(D)返回符合事实的如果数字滤波器,D,具有线性相位。使用设计过滤器产生D基于频率响应规范。

旗帜=islinphase(。。。,托尔)使用公差,托尔,以确定两个数字的接近程度是否足以被视为相等。如果未指定,托尔,默认为每股收益^(2/3).

例子

全部崩溃

使用窗口法设计了一个归一化截止频率为0.55的十阶低通FIR滤波器。验证了该滤波器具有线性相位。

d=设计过滤器(“lowpassfir”,“设计方法”,“窗口”,...“过滤器订单”,10,“截止频率”,0.55);标志=同相(d)
旗=必然的1.
[phs,w]=phasez(d);绘图(w/pi,phs)xlabel('频率\omega/\pi')伊拉贝尔(“阶段”)

图中包含一个axes对象。axes对象包含一个line类型的对象。

IIR滤波器通常没有线性相位。通过构造具有类似规格的八阶巴特沃斯、切比雪夫和椭圆滤波器来验证该说法。

ord=8;Wcut=0.35;ATEN=20;Ripple=1;[zb,pb,kb]=黄油(ord,Wcut);sosb=zp2sos(zb,pb,kb);[zc,pc,kc]=切比1(ord,Ripple,Wcut);sosc=zp2sos(zc,pc,kc);[zd,pd,kd]=切比2(ord,ATEN,Wcut);sosd=zp2sos(zd,pd,kd),kd);[ze,pe,pe,ke]=埃利普(ord,Ripple,ATEN,Wcut);sose=ZPE,kd);

绘制滤波器的相位响应。确定它们是否具有线性相位。

fv=fvtool(sosb、sosc、sosd、sose、,“分析”,“阶段”); 图例(fv,“巴特沃斯”,“切比雪夫一世”,“切比雪夫二世”,“椭圆形”)

图形过滤器可视化工具-相位响应包含一个轴对象和uitoolbar、uimenu类型的其他对象。标题为相位响应的轴对象包含4个line类型的对象。这些对象表示巴特沃斯、切比雪夫I、切比雪夫II和椭圆。

phs=[islinphase(sosb)islinphase(sosc)...islinphase(sosd)islinphase(sose)]
小灵通=1x4逻辑阵列0 0 0 0
在R2013a中引入