Signal Processing Toolbox | Help Desk |
filtic
Make initial conditions forfilter
function.
z = filtic(b,a,y,x) z = filtic(b,a,y)
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: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 isfiltic
works for both real and complex inputs.
filtic
performs a reverse difference equation to obtain the delay states z
.
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:
Requires vector inputs.
Filter data with a recursive (IIR) or nonrecursive (FIR) filter. |
|