メインコンテンツ

isallpass

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

    説明

    flag = isallpass(b,a) は、指定されたフィルターがオールパスの場合、1 に等しい logical 出力を返します。分子係数 b と分母係数 a をもつフィルターを指定します。

    flag = isallpass(sos) は、2 次セクション行列 sos で指定されるフィルターがオールパスの場合、1 を返します。

    flag = isallpass(d) は、デジタル フィルター d がオールパスの場合、1 を返します。

    flag = isallpass(___,tol) は、許容誤差 tol を指定して、2 つの数が等しいと見なせる程度に近づく時点を判別します。

    すべて折りたたむ

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

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

    Figure contains 2 axes objects. Axes object 1 with title Phase, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Phase (degrees) contains an object of type line. Axes object 2 with title Magnitude, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Magnitude (dB) contains an object of type line.

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

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

    Figure contains 2 axes objects. Axes object 1 with title Phase, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Phase (degrees) contains an object of type line. Axes object 2 with title Magnitude, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Magnitude (dB) contains an object of type line.

    入力引数

    すべて折りたたむ

    フィルター係数。ベクトルとして指定します。ba の値は、それぞれ分子多項式と分母多項式の係数を表します。

    例: [b,a] = cheby2(5,30,0.7) は、係数 ba をもつ 5 次のデジタル バタワース ローパス フィルターを作成します。このフィルターは、正規化された 3 dB 周波数が 0.7π ラジアン/サンプルで、阻止帯域の減衰量が 30 dB です。

    データ型: single | double
    複素数のサポート: あり

    2 次セクション表現。L 行 6 列の行列として指定します。ここで、L は 2 次セクションの数です。行列

    sos=[b01b11b211a11a21b02b12b221a12a22b0Lb1Lb2L1a1La2L]

    は、次に示す H(z) の 2 次セクションを表します。

    H(z)=k=1LHk(z)=k=1Lb0k+b1kz1+b2kz21+a1kz1+a2kz2.

    例: [z,p,k] = butter(3,1/32); sos = zp2sos(z,p,k) は、正規化された 3 dB の周波数 π/32 ラジアン/サンプルをもつ 3 次のバタワース フィルターを指定します。

    データ型: single | double
    複素数のサポート: あり

    デジタル フィルター。digitalFilter オブジェクトとして指定します。d を周波数応答仕様に基づいて生成するには、関数 designfilt を使用します。

    例: designfilt("lowpassfir",FilterOrder=10,CutoffFrequency=0.55) は、正規化された 3 dB 周波数が 0.55π rad/サンプルの 10 次 FIR ローパス フィルターの digitalFilter オブジェクトを生成します。

    データ型: digitalFilter

    近い値を区別するための許容誤差。正のスカラーとして指定します。許容誤差の値は、2 つの数が等しいと見なせる程度に近づく時点を判別します。

    データ型: single | double

    出力引数

    すべて折りたたむ

    オールパス フィルター フラグ。logical スカラーとして返されます。この関数は、入力がオールパス フィルターである場合、1 を返します。

    バージョン履歴

    R2013a で導入