Allpass filter
hd = dfilt.allpass(c)
hd = dfilt.allpass(c)
constructs
an allpass filter with the minimum number of multipliers from the
elements in vector c
. To be valid, c
must
contain one, two, three, or four real elements. The number of elements
in c
determines the order of the filter. For example, c
with
two elements creates a second-order filter and c
with
four elements creates a fourth-order filter.
The transfer function for the allpass filter is defined by
given the coefficients in c
.
To construct a cascade of allpass filter objects, use dfilt.cascadeallpass
.
For more information about creating cascades of allpass filters, refer
to dfilt.cascadeallpass
.
The following table provides a list of all the properties associated
with an allpass dfilt
object.
Property Name | Brief Description |
---|---|
| Contains the coefficients for the allpass filter object |
| Describes the signal flow for the filter object, including all of the active elements that perform operations during filtering — gains, delays, sums, products, and input/output. |
| Specifies whether to reset the filter states and memory
before each filtering operation. Lets you decide whether your filter
retains states from previous filtering runs. |
| This property contains the filter states before, during,
and after filter operations. States act as filter memory between filtering
runs or sessions. They also provide linkage between the sections of
a multisection filter, such as a cascade filter. For details, refer
to |
This example constructs and displays the information about a second-order allpass filter that uses the minimum number of multipliers.
c = [1.5, 0.7];
% Create a second-order dfilt object.
hd = dfilt.allpass(c);
dfilt
| dfilt.cascadeallpass
| dfilt.cascadewdfallpass
| dfilt.latticeallpass
| dsp.CICInterpolator
| dsp.IIRHalfbandDecimator