Main Content

dfilt.allpass

Allpass filter

Syntax

hd = dfilt.allpass(c)

Description

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

H(z)=c(n)+c(n1)z1++zn1+c(1)z1++c(n)zn

given the coefficients in c.

To construct a cascade of allpass filter objects, use dfilt.cascadeallpass.

Properties

The following table provides a list of all the properties associated with an allpass dfilt object.

Property Name

Brief Description

AllpassCoefficients

Contains the coefficients for the allpass filter object

FilterStructure

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.

PersistentMemory

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. False is the default setting.

States

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 filtstates in Signal Processing Toolbox™ documentation or in the Help system.

Examples

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);

Version History

Introduced in R2011a