ドキュメンテーション

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

freqs

アナログ フィルターの周波数応答

構文

h = freqs(b,a,w)
[h,w] = freqs(b,a,n)
freqs

説明

freqs では、アナログ フィルターの複素周波数応答 H(jω) (ラプラス変換) が返されます。

H(s)=B(s)A(s)=b(1)sn+b(2)sn1++b(n+1)a(1)sm+a(2)sm1++a(m+1)

(ベクトル b および a の分子と分母の係数) が返されます。

h = freqs(b,a,w) では、係数ベクトル b および a で指定されたアナログ フィルターの複素周波数応答を返します。freqs は、実数ベクトル w により指定される角周波数 (rad/s) における周波数応答を、複素平面の虚軸で表したものです。ここで w には複数の周波数が含まれます。

[h,w] = freqs(b,a,n) では、n 個の周波数点を使用して周波数応答 h が計算されます。ここで、n は実数スカラー値です。周波数応答ベクトル w は、長さ n をもち、自動生成されます。入力で n を省略した場合、200 個の周波数点が使用されます。生成される周波数ベクトルを返す必要がない場合は、h = freqs(b,a,n) を使用することで、周波数応答 h のみを返すことができます。

出力引数のない freqs は、周波数に対する振幅応答および位相応答を現在の Figure ウィンドウにプロットします。

freqs は、実数入力システムと正の周波数に対してのみ使用できます。

すべて折りたたむ

伝達関数の周波数応答を求め、それをグラフ表示します。

H(s)=0.2s2+0.3s+1s2+0.4s+1.

a = [1 0.4 1];
b = [0.2 0.3 1];
w = logspace(-1,1);
freqs(b,a,w)

結果を計算し、それを使用してプロットを生成することもできます。

h = freqs(b,a,w);
mag = abs(h);
phase = angle(h);
phasedeg = phase*180/pi;

subplot(2,1,1), loglog(w,mag), grid on
xlabel 'Frequency (rad/s)', ylabel Magnitude
subplot(2,1,2), semilogx(w,phasedeg), grid on
xlabel 'Frequency (rad/s)', ylabel 'Phase (degrees)'

最大 104 ラジアン/サンプルの定数近似群遅延をもつ 5 次のアナログ ローパス ベッセル フィルターを設計します。freqs を使用してフィルターの周波数応答をプロットします。

[b,a] = besself(5,10000);   % Bessel analog filter design
freqs(b,a)                  % Plot frequency response

アルゴリズム

freqs では、各周波数点で多項式が計算され、その後に分子応答が分母応答で除算されます。

s = i*w;
h = polyval(b,s)./polyval(a,s);

R2006a より前に導入