Engee documentation

isallpass

Determines whether the filter is all-permissive.

Library

EngeeDSP

Syntax

Function call

  • flag = isallpass(b,a) — returns a logical output signal equal to true if the specified filter is all-permissive. Specify a filter with numerator coefficients b and the coefficients of the denominator a.

  • flag = isallpass(sos) — returns true if the filter is specified by a matrix of second-order sections sos, is all-permissive.

  • flag = isallpass(_,tol) — sets the tolerance tol, which determines how close two numbers must be in order for them to be considered equal.

Arguments

Input arguments

# b,a are the coefficients of the transfer function

+ vectors

Details

The coefficients of the transfer function, set as vectors. Values b and a They represent the coefficients of the polynomial in the numerator and denominator, respectively.

Типы данных

Float64, Float32

Support for complex numbers

Yes

# sos — representation of second-order sections

+ the matrix

Details

The representation of the second-order sections, defined as a matrix of size , where — the number of second-order sections. The matrix

It represents sections of the second-order function :

Типы данных

Float64, Float32

Support for complex numbers

Yes

# tol — tolerance

+ e2/3 | scalar

Details

The tolerance is set as a positive scalar. The tolerance indicates how close two numbers must be in order to be considered equal.

Типы данных

Float32, Float64

Output arguments

# flag — all-pass filter flag

true | false

Details

An all-pass filter flag returned as a boolean value. The function returns true if there is an all-pass filter at the input.

Типы данных

Bool

Examples

All-permeable filter

Details

Let’s create an all-permissive filter and make sure that its frequency response is all-permissive.

import EngeeDSP.Functions: isallpass, freqz

b = [1/3 1/4 1/5 1]
a = reverse(b)
flag = isallpass(b,a)
true
freqz(b,a,out=:plot)

isallpass 1