このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
限额インパルス(IIR)フィルター
dsp。IIRFilter
系统对象™は,指定されたフィルターを使用して入力の各チャネルをフィルター処理します。フィルターに“我直接形式”
、'直接形式I ' transposed'
、“直接形成二世”
または'直接形式II转置'
構造のいずれかを指定できます。
分子プロパティと分母プロパティををし,フィルター分子数量ととをを指定ます。InitialConditionsプロパティを使って非ゼロフィルターフィルターのの状态も指定できできできできできできできできでき
IIRフィルターを使用して信号をフィルター処理するには,次のようにします。
dsp。IIRFilter
オブジェクトを作用成し,そのプロパティを设定ます。
関数と同様に,引数を指定してオブジェクトを呼び出します。
系统对象の機能の詳細については,系统对象とはを参照してください。
特に指定がない限り,プロパティは”調整不可能”です,オブジェクトオブジェクトの呼び出し后に値変更変更することはませませませませませ呼び出すとさされれませ呼び出すとロックされれれを解除とロックされれれをを解除するするにに释放
を使用します。
プロパティが”調整可能”の場合,その値をいつでも変更できます。
プロパティ値の変更の详细についてについては,系统对象を使用したMATLABでのシステム設計を参照してください。
结构
- - - - - -IIRフィルター構造'直接形式II转置'
(既定値) |“我直接形式”
|'直接形式I ' transposed'
|“直接形成二世”
IIRフィルター構造。“我直接形式”
、'直接形式I ' transposed'
、“直接形成二世”
,または'直接形式II转置'
として指定します。
分子
- - - - - -分子数量[1]
(既定値) |行ベクトル分子係数。行ベクトルとして指定します。
例:[0.0296 0.1775 0.4438 0.5918 0.4438 0.1775 0.0296
]
調整可能:是的
データ型:单
|双
|int8
|int16
|INT32.
|int64
|uint8
|uint16
|uint32
|uint64
複素数のサポート:あり
分母
- - - - - -分母係数0.1 [1]
(既定値) |行ベクトル分母係数。行ベクトルとして指定します。
例:[1.0000 -0.0000 0.7777 -0.0000 0.1142 -0.0000 0.0018
]
調整可能:是的
データ型:单
|双
|int8
|int16
|INT32.
|int64
|uint8
|uint16
|uint32
|uint64
複素数のサポート:あり
InitialConditions
- - - - - -初期条件0
(既定値) |スカラー|ベクトル|行列フィルターの状態の初期条件。次のいずれかを指定します。
标量——オブジェクトはフィルター内のすべての遅延要素をスカラー値に初期化します。
向量,ベクトルの長さはフィルターの遅延要素の数と等しくなります。各ベクトル要素は対応する遅延要素に対して一意の初期条件を指定します。オブジェクトは同じベクトルを入力信号の各チャネルに適用します。
矩阵 - 行程の行数フィルターフィルター列ばはん入同じ列のは入なりの要素は対応するなりませんんんんん遅延要素に一意のの条件指定します。
フィルターの状態の数は马克斯(N, M) - 1になります。ここでNは極の数,Mはゼロの数です。
調整可能:是的
このプロパティは,结构プロパティを“直接形成二世”
または'直接形式II转置'
に設定した場合にのみ適用されます。
データ型:单
|双
|int8
|int16
|INT32.
|int64
|uint8
|uint16
|uint32
|uint64
複素数のサポート:あり
NumeratorInitialConditions
- - - - - -零点側の初期条件0
(既定値) |スカラー|ベクトル|行列フィルター構造の零点側でのフィルター状態の初期条件。次のいずれかを指定します。
标量——オブジェクトはフィルター内の零点側ですべての遅延要素をスカラー値に初期化します。
载体 - ベクトルの长さはフィルター零点侧の遅延要素と等しくなりますます対応遅延は侧の対応遅延要素一下の条件をします。同じ同じをを力信号のチャネルに适适适ます。
矩阵,行列の行数はフィルターの零点側の遅延要素の数と同じでなければなりません。行列の列数は入力信号のチャネル数と同じでなければなりません。各要素は対応するチャネルの対応する零点側の遅延要素に一意の初期条件を指定します。
フィルターの状態の数は马克斯(N, M) - 1になります。ここでNは極の数,Mはゼロの数です。
調整可能:是的
このプロパティは,结构プロパティを“我直接形式”
または'直接形式I ' transposed'
に設定した場合にのみ適用されます。
データ型:单
|双
|int8
|int16
|INT32.
|int64
|uint8
|uint16
|uint32
|uint64
複素数のサポート:あり
分母律师证据
- - - - - -極側の初期条件0
(既定値) |スカラー|ベクトル|行列フィルター構造の極側でのフィルター状態の初期条件。次のいずれかを指定します。
标量——オブジェクトはフィルター内の極側ですべての遅延要素をスカラー値に初期化します。
向量,ベクトルの長さはフィルターの極側の遅延要素の数と等しくなります。各ベクトル要素は極側の対応する遅延要素に対して一意の初期条件を指定します。オブジェクトは初期条件の同じベクトルを入力信号の各チャネルに適用します。
矩阵,行列の行数はフィルターの極側の遅延要素の数と同じでなければなりません。行列の列数は入力信号のチャネル数と同じでなければなりません。各要素は対応するチャネルの対応する極側の遅延要素に一意の初期条件を指定します。
フィルターの状態の数は马克斯(N, M) - 1になります。ここでNは極の数,Mはゼロの数です。
調整可能:是的
このプロパティは,结构プロパティを“我直接形式”
または'直接形式I ' transposed'
に設定した場合にのみ適用されます。
データ型:单
|双
|int8
|int16
|INT32.
|int64
|uint8
|uint16
|uint32
|uint64
複素数のサポート:あり
RoundingMethod
- - - - - -丸め方法“地板”
(既定値) |“天花板”
|“收敛”
|“最近的”
|“圆”
|“简单”
|“零”
固定小数点演算の丸めモードを選択します。
溢出
- - - - - -オーバーフローアクション“包装”
(既定値) |“饱和”
固定小数点演算のオーバーフローアクション。次のいずれかを指定します。
“包装”
——オブジェクトはその固定小数点演算の結果をラップします。
“饱和”
——オブジェクトはその固定小数点演算の結果を飽和します。
オーバーフローアクションの詳細については,固定小数点演算のオーバーフローモードを参照してください。
stateataType.
- - - - - -状態のデータ型同样作为输入的
(既定値) |“自定义”
状態のデータ型。次のいずれかを指定します。
同样作为输入的
- 状态のデータデータ型,入力のデータ型とです。
“自定义”
——状態の出力データ型は,CustomStateDataTypeプロパティによる自动编号付き数号です。
CustomStateDataType
- - - - - -状態の語長と小数部の長さnumerictype([], 16岁,15)
(既定値)NumeratorCoefficientsDataType
- - - - - -分子係数のデータ型“与输入的字长相同”
(既定値) |“自定义”
分子係数のデータ型。次のいずれかを指定します。
“与输入的字长相同”
——分子係数の語長は入力の語長と同じです。小数部の長さは,可能な最高の精度になるように選択されます。
“自定义”
——分子係数のデータ型は,CustomNumeratorCoefficientsDataTypeプロパティで指定された自動符号付きの数値型です。
CustomNumeratorCoefficientsDataType
- - - - - -分子係数の語長と小数部の長さnumerictype([], 16岁,15)
(既定値)分子係数の語長と小数部の長さ。語長が16で小数部の長さが15の自動符号付きの数値型に指定します。
このプロパティはNumeratorCoefficientsDataTypeを“自定义”
に設定した場合にのみ適用されます。
DenominatorCoefficientsDataType
- - - - - -分母係数のデータ型“与输入的字长相同”
(既定値) |“自定义”
分母係数のデータ型。次のいずれかを指定します。
“与输入的字长相同”
- 分析次数の语长ははの语长と同じです。小数部の长はは,可口な最高の度になるよう选択されれれますますますますれますますれますれれれれ
“自定义”
——分母係数のデータ型は,CustomDenominatorCoefficientsDataTypeプロパティで指定された自動符号付きの数値型です。
CustomDenominatorCoefficientsDataType
- - - - - -分母係数の語長と小数部の長さnumerictype([], 16岁,15)
(既定値)分母係数の語長と小数部の長さ。語長が16で小数部の長さが15の自動符号付きの数値型に指定します。
このプロパティはDenominatorCoefficientsDataTypeを“自定义”
に設定した場合にのみ適用されます。
NumeratorProductDataType
- - - - - -分子の乗算のデータ型'完整精度'
(既定値) |同样作为输入的
|“自定义”
IIRフィルターにおける分子多項式の乗算操作の出力のデータ型。次のいずれかを指定します。
'完整精度'
——オブジェクトは,完全精度ルールを使用して分子係数の乗算出力データ型を計算します。これらの規則は,最も正確な固定長数値を提供します。量子化は行われません。必要に応じてビットが追加されて,丸めやオーバーフローが発生しないことを確実にします。
同样作为输入的
——乗算出力のデータ型は入力データ型と同じです。
“自定义”
——乗算出力のデータ型は,CustomNumeratorProductDataTypeプロパティで指定されたカスタムの数値型です。丸め方法とオーバーフローアクションは,RoundingMethodプロパティと溢出プロパティで指定します。
CustomNumeratorProductDataType
- - - - - -分子の乗算の語長と小数部の長さnumerictype([], 32岁,30)
(既定値)分子の乗算の語長と小数部の長さ。語長が32で小数部の長さが30の自動符号付きの数値型に指定します。
このプロパティはNumeratorProductDataTypeを“自定义”
に設定した場合にのみ適用されます。
DenominatorProductDataType
- - - - - -分母の乗算のデータ型'完整精度'
(既定値) |同样作为输入的
|“自定义”
IIRフィルターにおける分母多項式の乗算操作の出力のデータ型。次のいずれかを指定します。
'完整精度'
——オブジェクトは,完全精度ルールを使用して分母係数の乗算出力のデータ型を計算します。これらの規則は,最も正確な固定長数値を提供します。量子化は行われません。必要に応じてビットが追加されて,丸めやオーバーフローが発生しないことを確実にします。
同样作为输入的
——乗算出力のデータ型は入力データ型と同じです。
“自定义”
——乗算出力のデータ型は,CustomDenominatorProductDataTypeプロパティで指定されたカスタムの数値型です。丸め方法とオーバーフローアクションは,RoundingMethodプロパティと溢出プロパティで指定します。
CustomDenominatorProductDataType
- - - - - -分母の乗算の語長と小数部の長さnumerictype([], 32岁,30)
(既定値)分母の乗算の語長と小数部の長さ。語長が32で小数部の長さが30の自動符号付きの数値型に指定します。
このプロパティはDenominatorProductDataTypeを“自定义”
に設定した場合にのみ適用されます。
NumeratorAccumulatorDataType
- - - - - -分子アキュムレータのデータ型'完整精度'
(既定値) |同样作为输入的
|“一样的产品”
|“自定义”
IIRフィルターにおける分子多項式の累積操作の出力のデータ型。次のいずれかを指定します。
'完整精度'
——オブジェクトは,完全精度ルールを使用して分子アキュムレータのデータ型を計算します。これらの規則は,最も正確な固定長数値を提供します。量子化は行われません。必要に応じてビットが追加されて,丸めやオーバーフローが発生しないことを確実にします。
同样作为输入的
- アキュムレータのデータ型はは力データ型型とです。
“一样的产品”
——アキュムレータのデータ型は乗算出力のデータ型と同じです。
“自定义”
- アキュムレータのデータ型は,CustomNumeratorAccumulatorDataTypeプロパティで指定されたカスタムの数値型です。丸め方法とオーバーフローアクションは,RoundingMethodプロパティと溢出プロパティで指定します。
CustomNumeratorAccumulatorDataType
- - - - - -分子アキュムレータの語長と小数部の長さnumerictype([], 32岁,30)
(既定値)分子アキュムレータの語長と小数部の長さ。語長が32で小数部の長さが30の自動符号付きの数値型に指定します。
このプロパティはNumeratorAccumulatorDataTypeを“自定义”
に設定した場合にのみ適用されます。
DenominatorAccumulatorDataType
- - - - - -分母アキュムレータのデータ型'完整精度'
(既定値) |同样作为输入的
|“一样的产品”
|“自定义”
IIRフィルターにおける分母多項式の累積操作の出力のデータ型。次のいずれかを指定します。
'完整精度'
——オブジェクトは,完全精度ルールを使用して分母アキュムレータのデータ型を計算します。これらの規則は,最も正確な固定長数値を提供します。量子化は行われません。必要に応じてビットが追加されて,丸めやオーバーフローが発生しないことを確実にします。
同样作为输入的
- アキュムレータのデータ型はは力データ型型とです。
“一样的产品”
——アキュムレータのデータ型は乗算出力のデータ型と同じです。
“自定义”
- アキュムレータのデータ型は,CustomDenatorAccumulatorDataTyp.プロパティで指定されたカスタムの数値型です。丸め方法とオーバーフローアクションは,RoundingMethodプロパティと溢出プロパティで指定します。
CustomDenatorAccumulatorDataTyp.
- - - - - -分母アキュムレータの語長と小数部の長さnumerictype([], 32岁,30)
(既定値)分母アキュムレータの語長と小数部の長さ。語長が32で小数部の長さが30の自動符号付きの数値型に指定します。
このプロパティはDenominatorAccumulatorDataTypeを“自定义”
に設定した場合にのみ適用されます。
OutputDataType
- - - - - -出力データ型同样作为输入的
(既定値) |'完整精度'
|“自定义”
dsp。IIRFilter
オブジェクトの出力のデータ型。次のいずれかを指定します。
同样作为输入的
——出力のデータ型は,入力のデータ型と同じです。
'完整精度'
——オブジェクトは,完全精度ルールを使用して出力のデータ型を計算します。これらの規則は,最も正確な固定長数値を提供します。量子化は行われません。必要に応じてビットが追加されて,丸めやオーバーフローが発生しないことを確実にします。
“自定义”
——出力のデータ型は,CustomOutputDataTypeプロパティで指定されたカスタムの数値型です。丸め方法とオーバーフローアクションは,RoundingMethodプロパティと溢出プロパティで指定します。
CustomOutputDataType
- - - - - -出力の语长と小数部の长さnumerictype([], 16岁,15)
(既定値)MultiplicandDataType
- - - - - -被乗数のデータ型同样作为输入的
(既定値) |“自定义”
被乗数のデータ型。次のいずれかを指定します。
同样作为输入的
——被乗数のデータ型は入力データ型と同じです。
“自定义”
——被乗数のデータ型は,custommultiplicanddatatyp.プロパティで指定された自動符号付きの数値型です。
custommultiplicanddatatyp.
- - - - - -被乗数の出力の語長と小数部の長さnumerictype([], 16岁,15)
(既定値)被乗数の出力の語長と小数部の長さ。語長が16で小数部の長さが15の自動符号付きの数値型に指定します。
このプロパティはMultiplicandDataTypeを“自定义”
に設定した場合にのみ適用されます。
输入
- - - - - -データデータ力フィルターフィルターささデータデータとしてししししししまたは列列指定しし
例:兰德(34,24)
データ型:单
|双
|int8
|int16
|INT32.
|int64
|fi
複素数のサポート:あり
IIROUT.
- フィルター管理されれた力フィルター処理された出力。ベクトルまたは行列として返されます。出力のサイズ、データ型、実数/複素数は入力と一致します。
データ型:单
|双
|int8
|int16
|INT32.
|int64
|fi
複素数のサポート:あり
オブジェクト関数を使用するには,系统对象を最初の入力引数として指定します。たとえば,obj
という名前の系统对象のシステムリソースを解放するには,次の構文を使用します。
发行版(obj)
このオブジェクトがサポートしているフィルター解析法のリストについては,MATLAB®コマンドプロンプトに”dsp.IIRFilter.helpFilterAnalysis
“と入力します。対応する関数リファレンスページについては,过滤系统对象的分析方法を参照してください。
ローパスバタワースiirフィルターフィルターをフィルター使て,ノイズを含む正式信号ををしし。
メモ: R2016a以前のリリースを使用している場合,それぞれのオブジェクトの呼び出しを等価な一步構文で置き換えてください。たとえば,obj (x)
は步骤(obj, x)
になります。
入力信号
入力信号は1 kHz 5 kHz,および12千赫の3つのトーンで構成されます。
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);
フィルターの設計
関数牛油
をを用して,10次のローパスバタワースフィルターをしします。
N = 10;Fc = 0.4;[b] =黄油(N, Fc);
dsp。IIRFilter
オブジェクトを作成し,設計した係数を分子
および分母
プロパティに割り当てます。
iir = dsp。IIRFilter (“分子”b'分母',);
フィルターの振幅応答を表示します。0.4カットオフ周波数はラジアン/サンプルです。これは,サンプルレートが44.1 kHzの場合, つまり8.82 kHzになります。
fvtool(信息检索,“Fs”,Sine1.Samplerate)
频谱分析仪
を使用して,入力信号と出力信号のパワースペクトルを表示します。
sa = dsp。简介(“SampleRate”,Sine1.Samplerate,“NumInputPorts”2,...'plotastwosidedspectrum'假的,...“OverlapPercent”, 80,“PowerUnits”,“瓦分贝”,...“YLimits”,[ - 220 -10]);
ストリーミング
标准偏差0.01でゼロ平等のホワイトノイズノイズ正弦波和に付ノイズします。
1 kHzと5khzのトーンは,通过帯域にあるため影响ません.12 khzのん数,フィルターフィルターの迁移帯域にあるのでしし
为i = 1:100 input = Sine1()+Sine2()+Sine3()+0.01*randn(Sine1. samplesperframe,1);输出= iir(输入);sa(输入、输出)结束
8ノッチ,および3 dBレベルを基準とする0.02のノッチ帯域幅をもつ櫛形ノッチフィルターを設計します。
関数fdesign.comb
を使用し,次の設計パラメーターを指定して,梳子
フィルター設計仕様オブジェクトを作成します。
combSpecs = fdesign.comb (“缺口”,“N, BW”8, 0.02);
関数设计
を使用して櫛形ノッチフィルターを設計します。生成されるフィルターは,dsp。IIRFilter
系统对象™です。このフィルターをストリーミングデータに適用する方法の詳細については,dsp。IIRFilter
を参照してください。
IIRFILT = DESIGN(COMBSPECS,“Systemobject”,真正的)
iirFilt = dsp。IIRFilterwith properties: Structure: 'Direct form II' Numerator: [0.8878 0 0 0 0 0 0 0 -0.8878] Denominator: [1 0 0 0 0 0 0 0 -0.7757] InitialConditions: 0 Show all properties
fvtool
を使用して設計したフィルターの振幅応答を表示します。
fvtool (iirFilt)
使用上の注意および制限:
コード生成では,分子
プロパティと分母
プロパティのみが調整可能です。
MATLABコード生成における系统对象(MATLAB编码器)を参照してください。
dsp。IIRFilter
System对象は,以下のフィルターをサポートしますますしし図ブロック図,固定小数信号の构造使される型を示しいい小小数点パティパティししデータ型设定设定ます。
以下の制約は,结构
プロパティが“我直接形式”
に設定されている場合に適用されます。
入力は実数または複素数を受け入れる。
分子係数と分母係数は実数または複素数を受け入れる。
分子係数と分母係数は同じ実数/複素数の特性をもたなければならない。分子数量と分母係数の実数/複素数がそれぞれ異なると、オブジェクトは 2 組の複素数係数が指定されている場合と同様にフィルターを処理します。実数値係数のセットは、値がゼロの虚数部をもつ複素数ベクトルと同様に扱われます。
この構造に状態のデータ型は指定できない。状態のデータ型を指定できないのは、入力および出力の状態が、入力バッファーおよび出力バッファーと同じデータ型をもつためです。
以下の制約は,结构
プロパティが'直接形式I ' transposed'
に設定されている場合に適用されます。
入力は実数または複素数を受け入れる。
分子係数と分母係数は実数または複素数を受け入れる。
分子係数と分母係数は同じ実数/複素数の特性をもたなければならない。分子数量と分母係数の実数/複素数がそれぞれ異なると、オブジェクトは 2 組の複素数係数が指定されている場合と同様にフィルターを処理します。実数値係数のセットは、値がゼロの虚数部をもつ複素数ベクトルと同様に扱われます。
入力または係数が複素数のときに状態は複素数になる。
以下の制約は,结构
プロパティが“直接形成二世”
に設定されている場合に適用されます。
入力は実数または複素数を受け入れる。
分子係数と分母係数は実数または複素数を受け入れる。
分子係数と分母係数は同じ実数/複素数の特性をもたなければならない。分子数量と分母係数の実数/複素数がそれぞれ異なると、オブジェクトは 2 組の複素数係数が指定されている場合と同様にフィルターを処理します。実数値係数のセットは、値がゼロの虚数部をもつ複素数ベクトルと同様に扱われます。
入力または係数が複素数のときに状態は複素数になる。
以下の制約は,结构
プロパティが'直接形式II转置'
に設定されている場合に適用されます。
入力は実数または複素数を受け入れる。
分子係数と分母係数は実数または複素数を受け入れる。
分子係数と分母係数は同じ実数/複素数の特性をもたなければならない。分子数量と分母係数の実数/複素数がそれぞれ異なると、オブジェクトは 2 組の複素数係数が指定されている場合と同様にフィルターを処理します。実数値係数のセットは、値がゼロの虚数部をもつ複素数ベクトルと同様に扱われます。
入力または係数が複素数のときに状態は複素数になる。
次のMATLABコマンドに対応するリンクがクリックされました。
コマンドをMATLABコマンドウィンドウに入力して実行してください。WebブラウザーはMATLABコマンドをサポートしていません。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。