Main Content

sos2cell

2 次セクション行列の cell 配列への変換

構文

c = sos2cell(m)
c = sos2cell(m,g)

説明

c = sos2cell(m) では、tf2sos が生成する L 行 6 列の 2 次セクション行列 m が、1 行 2 列の cell 配列 c からなる 1 行 L 列の cell 配列に変換されます。この c を使用して、L のカスケードに結合された2 次セクションをもつ量子化フィルターを指定できます。

行列 m は、以下の形式でなければなりません。

m = [b1 a1;b2 a2; ... ;bL aL]

ここで、biai は、1 行 3 列の行ベクトルで、i = 1, ..., L, です。結果として得られる c は、以下の形式のセルからなる 1 行 L 列の cell 配列です。

c = { {b1 a1} {b2 a2} ... {bL aL} }

c = sos2cell(m,g) では、オプションのゲイン項 g を設定することで、定数値 gc に付加したものが返されます。コマンドで加算的なゲイン項を使用する場合は、c は以下の形式をとるセルの 1 行 L 列の cell 配列になります。

c = {{g,1} {b1,a1} {b2,a2}...{bL,aL} }

すべて折りたたむ

0.5 dB の通過帯域リップルと 20 dB の阻止帯域の減衰量をもつ次数 4 のローパス楕円フィルターを生成します。通過帯域エッジはナイキスト周波数の 0.6 倍です。伝達関数を 2 次セクションの行列に変換します。

[b,a] = ellip(4,0.5,20,0.6);
m = tf2sos(b,a);

sos2cell を使用して、関数 tf2sos で作成した 2 行 6 列 の行列を、セルの 1 行 2 列の cell 配列c に変換します。c の最初のセルの 2 番目のエントリを表示します。これに、m の最初の 2 次セクションの分母係数が含まれているかどうかを確認します。

c = sos2cell(m);
compare = [c{1}{2};m(1,4:6)]
compare = 2×3

    1.0000    0.1677    0.2575
    1.0000    0.1677    0.2575

バージョン履歴

R2006a より前に導入