Signal Processing Toolbox Help Desk

filtic

Purpose

Make initial conditions for filter function.

Syntax

Description

z = filtic(b,a,y,x) finds the initial conditions z for the delays in the transposed direct form II filter implementation given past outputs y and inputs x. The vectors b and a represent the numerator and denominator coefficients, respectively, of the filter's transfer function.

The vectors x and y contain the most recent input or output first, and oldest input or output last:

where nb is length(b)-1 (the numerator order) and na is length(a)-1 (the denominator order). If length(x) is less than nb, filtic pads it with zeros to length nb; if length(y) is less than na, filtic pads it with zeros to length na. Elements of x beyond x(nb-1) and elements of y beyond y(na-1) are unnecessary so filtic ignores them.

Output z is a column vector of length equal to the larger of nb and na. z describes the state of the delays given past inputs x and past outputs y.

z = filtic(b,a,y) assumes that the input x is 0 in the past.

The transposed direct form II structure is

where n-1 is the filter order.

filtic works for both real and complex inputs.

Algorithm

filtic performs a reverse difference equation to obtain the delay states z.

Diagnostics

If any of the input arguments y, x, b, or a is not a vector (that is, if any argument is a scalar or array), filtic gives the following error message:

See Also

filter

Filter data with a recursive (IIR) or nonrecursive (FIR) filter.

filtfilt

Zero-phase digital filtering.

References

[1] Oppenheim, A.V., and R.W. Schafer. Discrete-Time Signal Processing. Englewood Cliffs, NJ: Prentice Hall, 1989. Pgs. 296, 301-302.



[ Previous | Help Desk | Next ]