MATLAB ヘルプ センター
離散時間フィルター System object のインパルス応答
[impResp,t] = impz(sysobj)
[impResp,t] = impz(sysobj,n)
[impResp,t] = impz(sysobj,n,fs)
[impResp,t] = impz(sysobj,[],fs)
[impResp,t] = impz(sysobj,Arithmetic=arithType)
impz(sysobj)
[impResp,t] = impz(sysobj) は、フィルター System object™ のインパルス応答を計算し、応答を列ベクトル impResp で、時間のベクトル (またはサンプル間隔) を t で返します。ここで、t = [0 1 2 ...k-1]' で、k はフィルター係数の数です。
impResp
t
sysobj
t = [0 1 2 ...k-1]'
k
例
[impResp,t] = impz(sysobj,n) は floor(n) 1 秒間隔でインパルス応答を計算します。時間ベクトル t は (0:floor(n)-1)' と同等です。
n
floor(n)
(0:floor(n)-1)'
[impResp,t] = impz(sysobj,n,fs) は floor(n) 1/fs 秒間隔でインパルス応答を計算します。時間ベクトル t は (0:floor(n)-1)'/fs と同等です。
fs
(0:floor(n)-1)'/fs
[impResp,t] = impz(sysobj,[],fs) は k 1/fs 秒間隔でインパルス応答を計算します。k はフィルター係数の数です。時間ベクトル t は (0:k-1)'/fs と同等です。
(0:k-1)'/fs
[impResp,t] = impz(sysobj,Arithmetic=arithType) は、前の構文のいずれかを使用して、arithType で指定された演算に基づいてインパルス応答を計算します。
arithType
impz(sysobj) は、フィルター System object のインパルス応答をプロットします。
impz は、実数のフィルターと複素数のフィルターの両方に使用できます。出力引数を省略した場合、impz はインパルス応答の実数部のみをプロットします。
impz
その他の入力オプションについては、Signal Processing Toolbox™ の impz を参照してください。
すべて折りたたむ
ナイキスト周波数の 0.4 倍のカットオフ周波数をもつ 4 次ローパス楕円フィルターの離散時間フィルターを作成します。2 次セクション構造を使用して、量子化誤差を低減させます。インパルス応答の最初の 50 個のサンプルを基準インパルス応答と共にプロットします。
d = fdesign.lowpass(.4,.5,1,80);
プロトタイプ フィルターの設計オブジェクトを作成します。ellip を使用して、最小次数の離散時間 SOS フィルターを設計します。
ellip
sosFilt = design(d,"ellip",Systemobject=true)
sosFilt = dsp.SOSFilter with properties: Structure: 'Direct form II' CoefficientSource: 'Property' Numerator: [4×3 double] Denominator: [4×3 double] HasScaleValues: true ScaleValues: [0.7277 0.8290 1.3494 0.0048 1] Show all properties
インパルス応答をプロットします。
impz(sosFilt);
入力フィルター。次のいずれかのフィルター System object として指定します。
dsp.AllpassFilter
dsp.AllpoleFilter
dsp.CICCompensationDecimator
dsp.CICCompensationInterpolator
dsp.CICDecimator
dsp.CICInterpolator
dsp.CoupledAllpassFilter
dsp.DCBlocker (R2024b 以降)
dsp.DCBlocker
dsp.Delay
dsp.Differentiator
dsp.FarrowRateConverter
dsp.FilterCascade
dsp.FIRDecimator
dsp.FIRFilter
dsp.FIRHalfbandDecimator
dsp.FIRHalfbandInterpolator
dsp.FIRInterpolator
dsp.FIRRateConverter
dsp.FourthOrderSectionFilter
dsp.HighpassFilter
dsp.IIRFilter
dsp.IIRHalfbandDecimator
dsp.IIRHalfbandInterpolator
dsp.LowpassFilter
dsp.NotchPeakFilter
dsp.ParallelFilter
dsp.SOSFilter
dsp.VariableBandwidthFIRFilter
dsp.VariableBandwidthIIRFilter
dsp.VariableFIRDecimator
dsp.VariableFIRInterpolator
インパルス応答ベクトルの長さ。正の整数として指定します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
1
インパルス応答の計算で使用するサンプリング周波数。正のスカラーとして指定します。
'double'
'single'
'Fixed'
フィルター解析で使用される演算。'double'、'single'、または 'Fixed' として指定します。演算入力が指定されず、フィルター System object がロック解除状態の場合、解析ツールは倍精度フィルターを使用します。演算入力が指定されず、System object がロックされている場合、関数はロックされた入力のデータ型に基づいて解析を実行します。
'Fixed' 値は、固定小数点プロパティのみをもつフィルター System object に適用されます。
'Arithmetic' 入力引数が 'Fixed' として指定され、フィルター オブジェクトの係数のデータ型が 'Same word length as input' に設定されている場合、演算解析は System object がロック解除されているかロックされているかに応じて異なります。
'Arithmetic'
'Same word length as input'
ロック解除 –– 解析オブジェクト関数は係数のデータ型を判断できません。関数は、係数のデータ型が符号付き、16 ビット語長、自動スケーリングであると仮定します。関数は、この仮定に基づいて固定小数点解析を実行します。
ロック –– 入力のデータ型が 'double' または 'single' の場合、解析オブジェクト関数は係数のデータ型を判断できません。関数は、係数のデータ型が符号付き、16 ビット語長、自動スケーリングであると仮定します。関数は、この仮定に基づいて固定小数点解析を実行します。
System object がロックされているかロック解除されているかを確認するには、関数 isLocked を使用します。
isLocked
演算入力が 'Fixed' として指定され、フィルター オブジェクトの係数のデータ型がカスタム数値型に設定されている場合、オブジェクト関数はカスタム数値データ型に基づいて固定小数点解析を実行します。
インパルス応答。n 要素のベクトルとして返されます。n を指定しない場合、インパルス応答ベクトルの長さは、フィルターの係数の数と等しくなります。
データ型: double
秒単位の長さ n の時間ベクトル。t は、範囲 (0:floor(n)-1)'/fs における n 個の等間隔の点で構成されます。n を指定しない場合、関数はフィルターの係数の数を使用します。
すべて展開する
R2024b 以降、impz 解析関数は dsp.VariableFIRDecimator オブジェクトおよび dsp.VariableFIRInterpolator オブジェクトをサポートします。
dsp.BiquadFilter
dsp.BiquadFilter オブジェクトは警告を発行します。また、将来のリリースでは削除される予定です。代わりに dsp.SOSFilter オブジェクトを使用してください。既存のコードを置換する方法の詳細については、dsp.BiquadFilter のリファレンス ページにある互換性の考慮事項のセクションを参照してください。
R2024b 以降、この関数は dsp.DCBlocker オブジェクトをサポートします。
出力引数なしで関数 impz を呼び出す場合、関数はフィルターのインパルス応答をプロットするためにフィルターの可視化ツールを使用しません。R2024a 以降、関数は代わりに MATLAB® プロットを使用します。
コードを変更する必要はありません。
R2023b 以降、解析関数 impz は dsp.ParallelFilter オブジェクトおよび dsp.Delay オブジェクトをサポートします。
dsp.BiquadFilter オブジェクトは将来のリリースで削除される予定です。代わりに dsp.SOSFilter オブジェクトを使用してください。
filter
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ