Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

filt

DSP 形式で離散伝達関数を指定

構文

sys = filt(num,den)
sys = filt(num,den,Ts)
sys = filt(M)

説明

デジタル信号処理 (DSP) において、通常は、伝達関数を z−1 の有理式として記述し、分子および分母の項を z−1昇べきの順に並べます。以下に例を示します。

H(z1)=2+z11+0.4z1+2z2

DSP 形式の伝達関数の指定を容易にするために、関数 filt が提供されています。

sys = filt(num,den) は、分子が num で分母が den の離散時間の伝達関数 sys を作成します。サンプル時間は未指定のままになり (sys.Ts = -1)、出力の sys は TF オブジェクトになります。

sys = filt(num,den,Ts) は、さらにサンプル時間 Ts (秒単位) を指定します。

sys = filt(M) はゲイン行列が M の静的フィルターを指定します。

前述した任意の構文に、次のプロパティ名/プロパティ値の組み合わせを続けることができます。

'Property',Value

各組は入力名や伝達関数変数などのモデルの特定のプロパティを指定します。利用可能なプロパティとその値の詳細は、tf のリファレンス ページを参照してください。

引数

SISO 伝達関数では、numden は z−1 の昇べきの順に並べられた分子と分母の係数を含む行ベクトルです。たとえば、den = [1 0.4 2] は多項式 1 + 0.4z−1 + 2z−2 を表します。

MIMO 伝達関数は SISO 伝達関数の配列 (I/O チャネルごとに 1 つ) として扱われ、それぞれが分子と分母によって特徴付けられます。入力引数 numden は次のようになる行ベクトルの cell 配列となります。

  • numden は出力と同じ数の行、入力と同じ数の列をもちます。

  • この (i, j) エントリ num{i,j} および den{i,j} は、入力 j から出力 i への伝達関数の分子と分母を指定します。

すべての SISO エントリの分母が同じ場合は、この共通分母の行ベクトル表現に den を設定することもできます。

入力名 'channel1''channel2' をもつ2 入力デジタル フィルターを作成します。

num = {1 , [1 0.3]};
den = {[1 1 2] ,[5 2]};
H = filt(num,den,'inputname',{'channel1' 'channel2'})

この構文は次を返します。

Transfer function from input "channel1" to output:
        1
-----------------
1 + z^-1 + 2 z^-2
 
Transfer function from input "channel2" to output:
1 + 0.3 z^-1
------------
 5 + 2 z^-1
 
Sample time: unspecified

ヒント

filtVariable プロパティを 'z^-1' あるいは 'q' に設定した場合、tf と同様に動作します。詳細は、以下の tf エントリを参照してください。

参考

| |

R2006a より前に導入