dsp.IIRFilter
无限脉冲响应(IIR)过滤器
描述
的dsp.IIRFilter
系统对象™过滤器每个通道的输入使用指定的过滤器。您可以指定过滤器有一个“我直接形式”
,“我直接形式转置”
,“直接形成二世”
,或者一个“直接形成二转置”
结构。
使用分子和分母属性指定滤波器的系数的分子和分母系数。除了这些系数外,您还可以指定非零初始滤波器通过InitialConditions财产。
过滤信号使用IIR滤波器:
创建
dsp.IIRFilter
对象并设置其属性。调用对象的参数,就好像它是一个函数。
了解更多关于系统对象是如何工作的,看到的系统对象是什么?
创建
属性
属性,除非另有注明nontunable后,这意味着你不能改变它们的值调用对象。对象锁当你叫他们,释放
函数打开它们。
如果一个属性可调在任何时候,你可以改变它的值。
改变属性值的更多信息,请参阅系统设计在MATLAB使用系统对象。
结构
- - - - - -IIR滤波器结构
“直接形成二转置”
(默认)|“我直接形式”
|“我直接形式转置”
|“直接形成二世”
IIR滤波器结构,指定为“我直接形式”
,“我直接形式转置”
,“直接形成二世”
,或“直接形成二转置”
。
分子
- - - - - -分子系数
[1]
(默认)|行向量
分子系数,指定为一个行向量。
例子:(0.0296 0.1775 0.4438 0.5918 0.4438 0.1775 0.0296
]
可调:是的
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
复数的支持:金宝app是的
分母
- - - - - -分母系数
0.1 [1]
(默认)|行向量
分母系数,指定为一个行向量。领先的分母系数必须相等1
。
例子:(1.0000 -0.0000 0.7777 -0.0000 0.1142 -0.0000 0.0018
]
可调:是的
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
复数的支持:金宝app是的
InitialConditions
- - - - - -初始条件
0
(默认)|标量|向量|矩阵
过滤器的初始条件,指定为以下之一:
标量——对象初始化所有延迟滤波器的标量值的元素。
向量,向量的长度等于延迟滤波器中的元素的数量。每个向量元素指定为相应的延迟元素独特的初始条件。对象相同的向量适用于每个通道的输入信号。
矩阵,在矩阵的行数必须等于延迟滤波器中的元素的数量。矩阵的列数必须等于输入通道的数量。每个元素指定一个唯一的初始条件的相应的延迟元素对应的通道。
过滤器的状态数= max (N,米)- 1,N是极数,米是0的数量。
可调:是的
依赖关系
这个属性只适用于当你设置结构财产“直接形成二世”
或“直接形成二转置”
。
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
复数的支持:金宝app是的
NumeratorInitialConditions
- - - - - -零初始条件
0
(默认)|标量|向量|矩阵
初始条件的滤波器状态的滤波器结构零,指定为以下之一:
标量——对象初始化所有延迟元素在零侧过滤标量值。
向量,向量的长度等于0端的延迟元素的数量的过滤器。每个向量元素指定一个唯一的初始条件为零元素对应的延迟。对象相同的向量初始条件适用于每个通道的输入信号。
矩阵,在矩阵的行数必须等于零一边延迟元素的数量的过滤器。矩阵的列数必须等于输入信号通道的数量。每个元素指定一个唯一的初始条件为相应的延迟元素0一边在相应的通道。
过滤器的状态数= max (N,米)- 1,N是极数,米分别是0的数量。
可调:是的
依赖关系
这个属性只适用于当你设置结构财产“我直接形式”
或“我直接形式转置”
。
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
复数的支持:金宝app是的
DenominatorInitialConditions
- - - - - -初始条件对波兰人的一面
0
(默认)|标量|向量|矩阵
初始条件的过滤状态的两极的滤波器结构,指定为以下之一:
标量——对象初始化所有延迟元素两极端的滤波器的标量值。
向量,向量的长度等于两极端的延迟的元素数量的过滤器。每个向量元素指定一个唯一的初始条件的相应延迟两极端的元素。对象相同的向量初始条件适用于每个通道的输入信号。
矩阵,在矩阵的行数必须等于两极端的延迟的数量元素的过滤器。矩阵的列数必须等于输入信号通道的数量。每个元素指定一个唯一的初始条件中相应的延迟两极端的元素对应的通道。
过滤器的状态数= max (N,米)- 1,N是极数,米分别是0的数量。
可调:是的
依赖关系
这个属性只适用于当你设置结构财产“我直接形式”
或“我直接形式转置”
。
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
复数的支持:金宝app是的
RoundingMethod
- - - - - -舍入方法
“地板”
(默认)|“天花板”
|“收敛”
|“最近的”
|“圆”
|“简单”
|“零”
选择舍入模式为定点操作。
OverflowAction
- - - - - -溢出的行动
“包装”
(默认)|“饱和”
StateDataType
- - - - - -状态数据类型
同样作为输入的
(默认)|“自定义”
状态数据类型,指定为以下之一:
同样作为输入的
——国家相同数据类型作为输入数据类型。“自定义”
——国家输出数据类型是一个通过autosigned数值类型CustomStateDataType财产。
CustomStateDataType
- - - - - -状态词和部分长度
numerictype([], 16岁,15)
(默认)
NumeratorCoefficientsDataType
- - - - - -数据类型的分子系数
相同的单词长度作为输入的
(默认)|“自定义”
数据类型的分子系数,指定为以下之一:
相同的单词长度作为输入的
——分子的单词长度系数作为输入单词长度相同。部分的长度选择给最好的精度。“自定义”
——分子系数的数据类型是autosigned数字指定的类型CustomNumeratorCoefficientsDataType财产。
CustomNumeratorCoefficientsDataType
- - - - - -词和部分长度的分子系数
numerictype([], 16岁,15)
(默认)
词和部分长度的分子系数,指定为一个autosigned数值类型的字长16和一小部分的长度15。
依赖关系
这个属性只适用于当您设置NumeratorCoefficientsDataType来“自定义”
。
DenominatorCoefficientsDataType
- - - - - -数据类型的分母系数
相同的单词长度作为输入的
(默认)|“自定义”
数据类型的分母系数,指定为以下之一:
相同的单词长度作为输入的
——分母系数的字长是一样的输入单词的长度。部分的长度选择给最好的精度。“自定义”
——分母系数的数据类型是autosigned数字指定的类型CustomDenominatorCoefficientsDataType财产。
CustomDenominatorCoefficientsDataType
- - - - - -词和部分长度的分母系数
numerictype([], 16岁,15)
(默认)
词和部分长度的分母系数,指定为一个autosigned数值类型的字长16和一小部分的长度15。
依赖关系
这个属性只适用于当您设置DenominatorCoefficientsDataType来“自定义”
。
NumeratorProductDataType
- - - - - -分子产品数据类型
“充分精确”
(默认)|同样作为输入的
|“自定义”
数据类型的一个产品的输出操作分子多项式的IIR滤波器,指定为以下之一:
“充分精确”
——计算分子产品输出数据类型的对象不能使用规则。这些规则提供最精确定点数字。没有发生量子化。位,根据需要,以确保没有舍入或发生溢出。同样作为输入的
——产品输出数据类型作为输入数据类型相同。“自定义”
——产品输出数据类型是指定的自定义数字类型CustomNumeratorProductDataType财产。舍入法和溢出作用是指定的RoundingMethod和OverflowAction属性。
CustomNumeratorProductDataType
- - - - - -分子产品词和部分的长度
numerictype([], 32岁,30)
(默认)
DenominatorProductDataType
- - - - - -分母产品数据类型
“充分精确”
(默认)|同样作为输入的
|“自定义”
数据类型的输出产品的操作在分母多项式的IIR滤波器,指定为以下之一:
“充分精确”
——对象计算分母产品输出数据类型不能使用规则。这些规则提供最精确定点数字。没有发生量子化。位,根据需要,以确保没有舍入或发生溢出。同样作为输入的
——产品输出数据类型作为输入数据类型相同。“自定义”
——产品输出数据类型是指定的自定义数字类型CustomDenominatorProductDataType财产。舍入法和溢出作用是指定的RoundingMethod和OverflowAction属性。
CustomDenominatorProductDataType
- - - - - -分母产品词和部分的长度
numerictype([], 32岁,30)
(默认)
NumeratorAccumulatorDataType
- - - - - -分子蓄电池数据类型
“充分精确”
(默认)|同样作为输入的
|“一样的产品”
|“自定义”
输出的数据类型操作积累的分子多项式的IIR滤波器,指定为以下之一:
“充分精确”
——计算分子蓄电池数据类型的对象不能使用规则。这些规则提供最精确定点数字。没有发生量子化。位,根据需要,以确保没有舍入或发生溢出。同样作为输入的
——蓄电池数据类型作为输入数据类型相同。“一样的产品”
——蓄电池数据类型是一样的产品输出数据类型。“自定义”
——蓄电池数据类型指定的自定义数字类型CustomNumeratorAccumulatorDataType财产。舍入法和溢出作用是指定的RoundingMethod和OverflowAction属性。
CustomNumeratorAccumulatorDataType
- - - - - -分子蓄电池词和部分长度
numerictype([], 32岁,30)
(默认)
分子蓄电池词和部分长度,指定为一个autosigned数值类型,字长为32个,一小部分的长度30。
依赖关系
这个属性只适用于当您设置NumeratorAccumulatorDataType来“自定义”
。
DenominatorAccumulatorDataType
- - - - - -分母蓄电池数据类型
“充分精确”
(默认)|同样作为输入的
|“一样的产品”
|“自定义”
数据类型的积累的输出操作分母多项式的IIR滤波器,指定为以下之一:
“充分精确”
——对象计算分母蓄电池数据类型不能使用规则。这些规则提供最精确定点数字。没有发生量子化。位,根据需要,以确保没有舍入或发生溢出。同样作为输入的
——蓄电池数据类型作为输入数据类型相同。“一样的产品”
——蓄电池数据类型是一样的产品输出数据类型。“自定义”
——蓄电池数据类型指定的自定义数字类型CustomDenominatorAccumulatorDataType财产。舍入法和溢出作用是指定的RoundingMethod和OverflowAction属性。
CustomDenominatorAccumulatorDataType
- - - - - -分母蓄电池词和部分长度
numerictype([], 32岁,30)
(默认)
分母蓄电池词和部分长度,指定为一个autosigned数值类型,字长为32个,一小部分的长度30。
依赖关系
这个属性只适用于当您设置DenominatorAccumulatorDataType来“自定义”
。
OutputDataType
- - - - - -输出数据类型
同样作为输入的
(默认)|“充分精确”
|“自定义”
数据类型的输出dsp.IIRFilter
对象,指定为以下之一:
同样作为输入的
——输出数据类型作为输入数据类型相同。“充分精确”
——对象计算输出数据类型不能使用规则。这些规则提供最精确定点数字。没有发生量子化。位,根据需要,以确保没有舍入或发生溢出。“自定义”
——输出数据类型是指定的自定义数字类型CustomOutputDataType财产。舍入法和溢出作用是指定的RoundingMethod和OverflowAction属性。
CustomOutputDataType
- - - - - -输出词和部分的长度
numerictype([], 16岁,15)
(默认)
MultiplicandDataType
- - - - - -被乘数数据类型
同样作为输入的
(默认)|“自定义”
被乘数数据类型,指定为以下之一:
同样作为输入的
——被乘数数据类型作为输入数据类型相同。“自定义”
——被乘数数据类型是autosigned数值类型指定的CustomMultiplicandDataType财产。
CustomMultiplicandDataType
- - - - - -被乘数输出词和部分的长度
numerictype([], 16岁,15)
(默认)
使用
输入参数
输入
- - - - - -数据输入
向量|矩阵
过滤后的数据输入,指定为一个向量或矩阵。
例子:randn(34岁24)
数据类型:单
|双
|int8
|int16
|int32
|int64
|fi
复数的支持:金宝app是的
输出参数
iirOut
——过滤输出
向量|矩阵
过滤输出,作为一个向量或矩阵返回。大小、数据类型和输入的生产匹配的复杂性。
数据类型:单
|双
|int8
|int16
|int32
|int64
|fi
复数的支持:金宝app是的
对象的功能
使用一个目标函数,指定系统对象作为第一个输入参数。例如,释放系统资源的系统对象命名obj
使用这个语法:
发行版(obj)
过滤的列表分析方法这一对象支持,类型金宝appdsp.IIRFilter.helpFilterAnalysis
在MATLAB®命令提示符。相应的函数引用页面,看到过滤系统对象的分析方法。
例子
使用IIR滤波器过滤噪声信号
使用低通巴特沃斯滤波器的正弦信号IIR滤波器。
请注意:如果您使用的是R2016a或更早的版本中,用相同的步骤替换每个调用对象的语法。例如,obj (x)
就变成了步骤(obj, x)
。
输入信号
输入信号有三个音调,1 kHz, 5 kHz, 12 kHz。
Sine1 = dsp.SineWave (“频率”1 e3,…“SampleRate”44.1 e3);Sine2 = dsp.SineWave (“频率”5 e3,…“SampleRate”44.1 e3);Sine3 = dsp.SineWave (“频率”,12 e3,…“SampleRate”44.1 e3);
滤波器的设计
使用黄油
设计一个十阶低通巴特沃斯滤波器函数。
N = 10;Fc = 0.4;[b] =黄油(N, Fc);
创建一个dsp.IIRFilter
对象和分配系数的设计分子
和分母
属性。
iir = dsp.IIRFilter (“分子”b…“分母”,);
滤波器的幅度响应。截止频率为0.4 rad /样品,采样率为44.1 kHz,翻译 或8.82 kHz。
fvtool(信息检索,“Fs”Sine1.SampleRate)
查看输入和输出信号的功率谱使用频谱分析仪
。
sa =简介(“SampleRate”Sine1.SampleRate,…“方法”,“韦尔奇”,…“PlotAsTwoSidedSpectrum”假的,…“OverlapPercent”,80,…“SpectrumUnits”,“瓦分贝”,…“YLimits”-10年[-220]);
流媒体
添加零均值高斯白噪声的标准差0.01正弦波之和。过滤器使用IIR滤波器的信号。
音调1 kHz和5 kHz不受影响,因为他们的通频带。12 kHz的频率是减毒因为它落在滤波器的过渡带。
为我= = Sine1 1:1000输入()+ Sine2 Sine3 () + () +…0.01 * randn (Sine1.SamplesPerFrame, 1);输出= iir(输入);sa(输入、输出)结束
设计一个IIR滤波器
设计一个切口梳状滤波器8级,和一个等级的带宽0.02引用3 dB的水平。
创建一个梳子
滤波器设计规范对象使用fdesign.comb
这些设计参数并指定函数。
combSpecs = fdesign.comb (“缺口”,“N, BW”8,0.02);
设计切口梳状滤波器使用设计
函数。由此产生的过滤器dsp.IIRFilter
系统对象™。有关如何应用这个过滤器流数据,参考dsp.IIRFilter
。
iirFilt =设计(combSpecs,“Systemobject”,真正的)
iirFilt = dsp。IIRFilter属性:结构:“直接形成II”分子:[0.8878 0 0 0 0 0 0 0 -0.8878]分母:[1 0 0 0 0 0 0 0 -0.7757]InitialConditions: 0显示所有属性
使用视图级响应的滤波器设计fvtool
。
fvtool (iirFilt)
更多关于
不动点
的dsp.IIRFilter
系统对象支持以下滤波器结构。金宝app每一节中的图显示中使用的数据类型为定点信号滤波器结构。你可以设置数据类型使用定点的属性对象。
以下限制适用于结构
属性设置为“我直接形式”
:
输入可以是真实的或复杂的。
分子和分母系数可以真实的或复杂的。
分子和分母系数必须具有相同的复杂性特征。当分子和分母系数有不同的复杂性,对象处理过滤器提供两套复系数。实值系数集看作是与新鲜感虚部是一个复杂的矢量。
国家不能为这个结构指定数据类型。这样做是不可能的,因为输入和输出状态具有相同的数据类型作为输入和输出缓冲区。
以下限制适用于结构
属性设置为“我直接形式转置”
:
输入可以是真实的或复杂的。
分子和分母系数可以真实的或复杂的。
分子和分母系数必须具有相同的复杂性特征。当分子和分母系数有不同的复杂性,对象处理过滤器提供两套复系数。实值系数集看作是与新鲜感虚部是一个复杂的矢量。
州是复杂的,当输入或系数是复杂的。
以下限制适用于结构
属性设置为“直接形成二世”
:
输入可以是真实的或复杂的。
分子和分母系数可以真实的或复杂的。
分子和分母系数必须具有相同的复杂性特征。当分子和分母系数有不同的复杂性,对象处理过滤器提供两套复系数。实值系数集看作是与新鲜感虚部是一个复杂的矢量。
州是复杂的,当输入或系数是复杂的。
以下限制适用于结构
属性设置为“直接形成二转置”
:
输入可以是真实的或复杂的。
分子和分母系数可以真实的或复杂的。
分子和分母系数必须具有相同的复杂性特征。当分子和分母系数有不同的复杂性,对象处理过滤器提供两套复系数。实值系数集看作是与新鲜感虚部是一个复杂的矢量。
州是复杂的,当输入或系数是复杂的。
扩展功能
C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。
使用笔记和限制:
只有
分子
和分母
代码生成的属性是可调的。看到系统在MATLAB代码生成对象(MATLAB编码器)。
版本历史
介绍了R2012b
Abrir比如
这种版本modificada德埃斯特比如。害怕Desea abrir埃斯特比如con sus modificaciones吗?
第一de MATLAB
Ha事实clic en联合国围绕此时一个埃斯特第一de MATLAB:
Ejecute el第一introduciendolo en la ventana de第一de MATLAB。洛杉矶navegadores网络没有admiten第一de MATLAB。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。