ドキュメンテーション

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

isallpass

フィルターがオールパスであるかを判別

構文

flag = isallpass(b,a)
flag = isallpass(sos)
flag = isallpass(d)
flag = isallpass(...,tol)
flag = isallpass(hd)

説明

flag = isallpass(b,a) では、logical の出力 flag が返されます。これは分子係数 b と分母係数 a で指定されるフィルターがオールパス フィルターの場合、true になります。フィルターがオールパス フィルターでない場合、flagfalse になります。

flag = isallpass(sos) では、2 次セクション型行列 sos で指定されるフィルターがオールパス フィルターの場合、true が返されます。sos は K 行 6 列の行列です。ここで、セクション数 K は 2 以上でなければなりません。sos の各行は 2 次 (双二次) フィルターの係数に対応しています。sos 行列の i 行目は [bi(1) bi(2) bi(3) ai(1) ai(2) ai(3)] に対応しています。

flag = isallpass(d) では、デジタル フィルター d がオールパス フィルターの場合、true が返されます。d を周波数応答仕様に基づいて生成するには、関数 designfilt を使用します。

flag = isallpass(...,tol) では、許容誤差 tol を使用して、2 つの数が等しいと見なせる程度に近づく時点が判別されます。tol を指定しない場合は、既定値の eps^(2/3) が使用されます。許容誤差の指定は、固定小数点オールパス フィルターにおいて非常に有用となり得ます。

 固定小数点演算の詳細

flag = isallpass(hd) では、フィルター オブジェクト hd がオールパス フィルターの場合、true が返されます。

すべて折りたたむ

オールパス フィルターを作成し、周波数応答がオールパスであることを検証します。

b = [1/3 1/4 1/5 1];
a = fliplr(b); 
flag = isallpass(b,a)
flag = logical
   1

fvtool(b,a)

ラティス オールパス フィルターを作成し、フィルターがオールパスであることを検証します。

k = [1/2 1/3 1/4 1/5];
[b,a] = latc2tf(k,'allpass');
flag_isallpass = isallpass(b,a)
flag_isallpass = logical
   1

fvtool(b,a)

R2013a で導入