Determine whether filter is minimum phase

`flag = isminphase(b,a)`

flag = isminphase(sos)

flag = isminphase(d)

flag = isminphase(...,tol)

flag = isminphase(hs,...)

isminphase(hs,'Arithmetic',* arithtype*)

flag = isminphase(h)

A filter is *minimum phase* when all the
zeros of its transfer function are on or inside the unit circle, or
the numerator is a scalar. An equivalent definition for a minimum
phase filter is a causal and stable system with a causal and stable
inverse.

returns a logical output, `flag`

= isminphase(`b`

,`a`

)`flag`

, equal to `true`

if
the filter specified by numerator coefficients, `b`

,
and denominator coefficients, `a`

, is a minimum
phase filter.

returns `flag`

= isminphase(`sos`

)`true`

if the filter specified by second
order sections matrix, `sos`

, is minimum phase. `sos`

is
a *K*-by-6 matrix, where the number of sections, *K*,
must be greater than or equal to 2. Each row of `sos`

corresponds
to the coefficients of a second order (biquad) filter. The *i*th
row of the `sos`

matrix corresponds to ```
[bi(1)
bi(2) bi(3) ai(1) ai(2) ai(3)]
```

.

returns `flag`

= isminphase(d)`true`

if
the digital filter, `d`

, has minimum phase. Use `designfilt`

to generate `d`

based
on frequency-response specifications.

uses
the tolerance, `flag`

= isminphase(...,`tol`

)`tol`

, to determine when two numbers
are close enough to be considered equal. If not specified, `tol`

,
defaults to `eps^(2/3)`

.

determines
whether the filter System object™ `flag`

= isminphase(hs,...)`hs`

is minimum
phase, returning `1`

if true and `0`

if
false. You must have the DSP System Toolbox™ software to use this
syntax.

`isminphase(hs,'Arithmetic',`

analyzes
the filter System object * arithtype*)

`hs`

based on the specified `arithtype`

`arithtype`

`'double'`

, `'single'`

, or `'fixed'`

.
When you specify `'double'`

or `'single'`

,
the function performs double- or single-precision analysis. When you
specify `'fixed'`

, the arithmetic changes depending
on the setting of the `CoefficientDataType`

property
and whether the System object is locked or unlocked. You must
have the DSP System Toolbox software to use this syntax.Details for Fixed-Point Arithmetic

When you do not specify the arithmetic for non-CIC structures, the function uses double-precision arithmetic if the filter System object is in an unlocked state. If the System object is locked, the function performs analysis based on the locked input data type. CIC structures only support fixed-point arithmetic.

determines
if the `flag`

= isminphase(h)`dfilt`

filter object `h`

is
minimum phase. If you have the DSP System Toolbox software, `isminphase`

works
with `adapfilt`

and `mfilt`

objects.

`designfilt`

| `digitalFilter`

| `isallpass`

| `islinphase`

| `ismaxphase`

| `isstable`

Was this topic helpful?