主要内容

dsp。所有passFilter

单段或级联全通滤波器

描述

dsp。所有passFilter对象使用Allpass过滤器实现过滤输入的每个通道。将此对象导入Simulink万博1manbetx®,使用matlab®系统的块。

请注意

单元阵列支持万博1manbetxAllpassCoefficientsWDFCOEFFICERS,LatticeCoefficients被移除。使用一个N1或N-by-2数字数组。有关更多信息,请参见兼容性的考虑

过滤输入的每个通道:

  1. 创建dsp。所有passFilter对象,并设置其属性。

  2. 使用参数调用对象,就像调用函数一样。

要了解更多关于System对象如何工作的信息,请参见什么是系统对象?

创建

描述

Allpass= dsp。所有passFilter返回Allpass滤波器系统对象™,Allpass,它使用具有默认结构和系数的全通滤波器独立地过滤输入信号的每个通道。

例子

Allpass= dsp。所有passFilter(名称,值返回Allpass过滤系统对象,Allpass,将每个属性设置为指定的值。

属性

全部展开

除非另有说明,属性是nontunable,这意味着在调用对象后无法更改其值。当您调用它们时,对象锁定,以及释放函数打开它们。

如果一个属性是可调,您可以随时更改它的值。

有关更改属性值的更多信息,请参见在MATLAB中使用系统对象进行系统设计

您可以将内部allpass过滤器实现结构指定为|中的一个最小的乘数|格子|波数字过滤器.每个结构使用不同的一组系数,独立地存储在相应的对象属性中。

指定真实的allpass多项式滤波器系数。将此属性指定为N-经过-1N-经过-2矩阵的N一阶或二阶全通段。默认值定义了一个稳定的二阶全通滤波器,其极点和零点位于Z平面的±π/3。

可调:是的

依赖关系

此属性仅适用于结构属性设置为最小的乘数

数据类型:||int8|INT16|INT32.|int64|uint8|uint16|uint32|uint64

在波数字滤波器表单中指定真正的Allpass系数。将此属性指定为aN-经过-1N-经过-2矩阵的N一阶或二阶全通段。所有元素的绝对值必须小于或等于1.的默认值的转换版本AllpassCoefficients计算使用allpass2wdf (AllpassCoefficients).这些系数定义了与时相同的稳定二阶全通滤波器结构被设定为“最低乘数”

可调:是的

依赖关系

此属性仅适用于结构属性设置为波数字过滤器

数据类型:||int8|INT16|INT32.|int64|uint8|uint16|uint32|uint64

指定真实或复杂的Allpass系数作为格子反射系数。将此属性指定为行向量(单节配置)或列向量。此值是默认值的转换和转换版本AllpassCoefficients计算使用置(tf2latc ([1 h.AllpassCoefficients])).这些系数定义了与时相同的稳定二阶全通滤波器结构被设定为“格子”

可调:是的

依赖关系

此属性仅在结构属性设置为格子

数据类型:||int8|INT16|INT32.|int64|uint8|uint16|uint32|uint64
复数的支持:万博1manbetx是的

指示最后一段是一阶还是二阶。当您设置TrailingFirstOrderSection真正的,最后一节被认为是一阶的,最后一行的第二个元素被认为是N- × 2矩阵被忽略。当您设置TrailingFirstOrderSection,最后一节被认为是二阶的。

使用

描述

例子

y= Allpass (x过滤输入信号x使用一个allpass过滤器产生输出y.每一列的x随着时间的推移,作为一个单独的通道被独立过滤。

输入参数

全部展开

数据输入,指定为向量或矩阵。此对象还接受可变大小的输入。锁定对象后,您可以更改每个输入通道的大小,但无法更改频道的数量。

数据类型:|
复数的支持:万博1manbetx是的

输出参数

全部展开

过滤后的输出,作为向量或矩阵返回。输出信号的大小、数据类型和复杂性与输入信号相匹配。

数据类型:|
复数的支持:万博1manbetx是的

对象的功能

要使用对象函数,请指定System对象作为第一个输入参数。例如,释放名为system的对象的系统资源obj,使用此语法:

发行版(obj)

全部展开

freqz 离散时间过滤器的频率响应系统对象
fvtool 显示DSP滤波器的频率响应
impz 离散时间滤波器的脉冲响应系统对象
信息 信息过滤系统对象
多项式系数 返回过滤器系统对象结构中的系数
成本 实现过滤器的估算成本系统对象
grpdelay 离散时间滤波器的组延迟响应系统对象
一步 运行系统对象算法
释放 释放资源并允许更改系统对象属性值和输入特征
重置 重置内部状态系统对象

例子

全部折叠

请注意:此示例仅在R2016B或更高版本中运行。如果您使用的是早期版本,请将每个呼叫替换为相同的函数一步语法。例如,myObject(x)变成step(myObject,x)。

构造Allpass过滤器

Fs = 48000;%在Hz.FL = 1024;APF1 = dsp。AllpassFilter(“AllpassCoefficients”...[-0.710525516540603 - 0.208818210000029]);APF2 = dsp。AllpassFilter(“AllpassCoefficients”...[-0.940456403667957 0.6;...-0.324919696232907 0],...“TrailingFirstOrderSection”,真正的);

构建传递函数估计器以估计随机输入和Allpass滤波输出之间的传输功能

TFE = dsp。TransferFunctionEstimator ('频率范围'...“单向的”“SpectralAverages”2);

构造ArrayLot以绘制幅度响应

美联社= dsp。ArrayPlot (“PlotType”“行”“YLimits”-80年[5],...“YLabel”“(dB)级”'SampleIncrement', Fs / FL,...“包含”的频率(赫兹)'标题'级响应的...“ShowLegend”, 真的,'ChannelNames',{级响应的});

过滤输入并显示输入和滤波输出之间的估计传输功能的幅度响应

抽搐;TOC <5 IN = RANDN(FL,1);OUT = 0.5。*(APF1(IN)+ APF2(IN));a = tfe(在,出);AP(DB(A));结束

算法

全部展开

给出了全通滤波器的传递函数

H z c n + c n 1 z 1 + ... + z n 1 + c 1 z 1 + ... + c n z n

c为全通多项式系数向量。订单,n,传递函数是向量的长度c

在最小乘法器形式和波数字形式中,全通滤波器被实现为二阶(双四)段或一阶段的级联。当系数被指定为anN-by-2矩阵,矩阵的每一行指定一个二阶滤波器的系数。根据末尾的一阶设置,可以忽略最后一行的最后一个元素。当系数被指定为anN-by-1矩阵,矩阵中的每个元素指定一阶滤波器的系数。所有过滤部分的级联形成allpass过滤器。

在晶格形式中,系数被指定为一个矢量。

与通用IIR滤波器相比,这些结构与诸如DF1,DF1T,DF2,DF2T等通用IIR滤波器相比的计算方式更经济和结构更稳定。对于所有结构,Allpass滤波器可以是单部分或多部分(级联)滤波器。不同的部分可以具有不同的订单,但它们全部根据相同的结构实现。

兼容性的考虑

全部展开

错误开始于R2018b

参考

[1] Regalia,Philip A.和Mitra Sanjit K.和Vaidyanathan,P。(1988)“数字全通滤波器:厌购信号处理构件块”。IEEE论文集,第76卷,第1期,1988,第19-37页

[2] M. Lutovac,D. Tosic,B.埃文斯,基于MATLAB和Mathematica的信号处理滤波器设计。上鞍河,新泽西州:普伦蒂斯霍尔,2001。

扩展功能

介绍了R2013a