DSP Blockset | ![]() ![]() |
Apply a variable IIR filter to the input.
Library
Filtering / Filter Structures
Description
The Time-Varying Direct-Form II Transpose Filter block is a version of the Direct-Form II Transpose Filter block whose filter coefficients can be updated during the simulation. The block applies a direct-form II transposed IIR filter to the top input (In
).
This is a canonical form that has the minimum number of delay elements. The filter order is max(m,n)-1
.
An M-by-N sample-based matrix input is treated as M*N independent channels, and an M-by-N frame-based matrix input is treated as N independent channels. In both cases, the block filters each channel independently over time, and the output has the same size and frame status as the input.
The block's two lower inputs (Num
and Den
) specify the filter's transfer function,
By default the filter coefficients are normalized by a1. To prevent normalization by a1, deselect the Support non-normalized filters check box.
Filter Type
The Filter type parameter specifies whether the filter is an all-zero (FIR or MA) filter, all-pole (AR) filter, or pole-zero (IIR or ARMA) filter:
The block accepts inputs for both the numerator (Num
) and denominator (Den
) vectors.
Input Num
is a vector of numerator coefficients,
[b(1) b(2) ... b(m)]
and input Den
is a vector of denominator coefficients,
[a(1) a(2) ... a(n)]
The block accepts only the numerator vector (Num
). The denominator of the all-zero filter is 1.
The block accepts only the denominator vector (Den
). The numerator of the all-pole filter is 1.
For any of these designs, the coefficient vector inputs can change over time to alter the filter's response characteristics during the simulation.
Initial Conditions
In its default form, the filter initializes the internal filter states to zero, which is equivalent to assuming past inputs and outputs are zero. The block also accepts optional nonzero initial conditions for the filter delays. Note that the number of filter states (delay elements) per input channel is
max(m,n)-1
The Initial conditions parameter may take one of four forms:
The empty matrix, []
, causes a zero (0) initial condition to be applied to all delay elements in each filter channel.
The scalar value is copied to all delay elements in each filter channel. Note that a value of zero is equivalent to setting the Initial conditions parameter to the empty matrix, []
.
The vector has a length equal to the number of delay elements in each filter channel, max(m,n)-1
, and specifies a unique initial condition for each delay element in the filter channel. This vector of initial conditions is applied to each filter channel.
The matrix specifies a unique initial condition for each delay element, and can specify different initial conditions for each filter channel. The matrix must have the same number of rows as the number of delay elements in the filter, max(m,n)-1
, and must have one column per filter channel.
Filter Update Rate
In frame-based operation, the Filter update rate parameter determines how frequently the block updates the filter coefficients (i.e., how often it checks the Num
and Den
inputs). There are two available options:
The block updates the filter coefficients (from inputs Num
and Den
) for each individual scalar sample in the frame-based input. This means that each output sample could potentially be computed by a different filter (assuming that Num
and Den
inputs are updated frequently enough).
The block updates the filter coefficients (from inputs Num
and Den
) for each new input frame, rather than at each sample in the frame. This means that each output sample in a given frame is a result of an identical filtering process.
Dialog Box
Num
and Den
input ports are enabled or disabled as appropriate.References
Oppenheim, A. V. and R. W. Schafer. Discrete-Time Signal Processing. Englewood Cliffs, NJ: Prentice Hall, 1989.
Proakis, J. and D. Manolakis. Digital Signal Processing. 3rd ed. Englewood Cliffs, NJ: Prentice-Hall, 1996.
See Also
Discrete Filter |
Simulink |
Filter Realization Wizard |
DSP Blockset |
Direct-Form II Transpose Filter |
DSP Blockset |
Time-Varying Lattice Filter |
DSP Blockset |
filter |
MATLAB |
See Filter Structures for related information.
![]() | SVD Solver | Time-Varying Lattice Filter | ![]() |