ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

lp2bp

ローパス アナログ フィルターからバンドパス アナログ フィルターへの変換

構文

[bt,at] = lp2bp(b,a,Wo,Bw)
[At,Bt,Ct,Dt] = lp2bp(A,B,C,D,Wo,Bw)

説明

lp2bp では、1 rad/s のカットオフ角周波数をもつアナログ ローパス フィルターのプロトタイプが、望ましい帯域幅と中心周波数をもつバンドパス フィルターに変換されます。この変換は、関数 buttercheby1cheby2、および ellip のデジタル フィルター設計の 1 ステップです。

lp2bp では、次の 2 つの異なる線形システム表現で 変換を行えます。伝達関数型および状態空間型。いずれの場合も、入力システムはアナログ フィルターのプロトタイプでなければなりません。

伝達関数型 (多項式)

[bt,at] = lp2bp(b,a,Wo,Bw) では、多項式係数によって与えられるアナログ ローパス フィルターのプロトタイプが、中心周波数 Wo と帯域幅 Bw をもつバンドパス フィルターに変換されます。行ベクトル ba は、プロトタイプの分子と分母の係数を s の次数の降順に指定します。

B(s)A(s)=b(1)sn++b(n)s+b(n+1)a(1)sm++a(m)s+a(m+1)

スカラー Wo および Bw では、中心周波数と帯域幅を rad/s 単位で指定します。低い方の帯域エッジ w1 と高い方の帯域エッジ w2 をもつフィルターでは、Wo = sqrt(w1*w2)Bw = w2-w1 が使用されます。

lp2bp では、周波数変換されたフィルターが行ベクトル btat に返されます。

状態空間型

[At,Bt,Ct,Dt] = lp2bp(A,B,C,D,Wo,Bw) では、次に示す行列 ABC、および D による連続時間状態空間ローパス フィルターのプロトタイプ

x˙=Ax+Buy=Cx+Du

が、中心周波数 Wo と帯域幅 Bw をもつバンドパス フィルターに変換されます。低い方の帯域エッジ w1 と高い方の帯域エッジ w2 をもつフィルターでは、Wo = sqrt(w1*w2)Bw = w2-w1 が使用されます。

このバンドパス フィルターは、行列 AtBtCtDt に返されます。

アルゴリズム

lp2bp は、標準的なアナログ フィルター周波数変換の高精度な状態空間型の公式です。次の状態空間システムを考えます。

x˙=Ax+Buy=Cx+Du

ここで、u は入力、x は状態ベクトル、y は出力です。最初の方程式 (初期条件を 0 と仮定) のラプラス変換は、次のようになります。

sX(s)=AX(s)+BU(s)

このとき、バンドパス フィルターが中心周波数 ω0 と帯域幅 Bw をもつ場合、標準の s 領域の変換は、以下のようになります。

s=Q(p2+1)/p

ここでは Q = ω0/Bw および p = s/ω0 です。これをラプラス変換した状態空間方程式の s に代入し、演算子p を d/dt と考えます。

Qx¨+Qx=A˙x+Bu˙

または

Qx¨A˙xBu˙=Qx

次に、以下のように定義します。

Qω˙=Qx

これを代入すると次式が導かれます。

Qx˙=Ax+Qω+Bu

最後の 2 つの方程式により、状態方程式が得られます。これらを標準型で記述し、p で表される時間/周波数スケーリングを回復するために ω0 微分方程式に乗算して、バンドパス フィルターの状態行列が求められます。

Q = Wo/Bw; [ma,m] = size(A);
At = Wo*[A/Q eye(ma,m);-eye(ma,m) zeros(ma,m)];
Bt = Wo*[B/Q; zeros(ma,n)];
Ct = [C zeros(mc,ma)];
Dt = d;

lp2bp への入力が伝達関数型の場合は、このアルゴリズムを適用する前に状態空間型に変換されます。

R2006a より前に導入