filters a data sequence using a digital filter
[y,zf] = filter(B, A, x [,zi])
real vector : the coefficients of the filter numerator in decreasing power order, or a polynomial.
real vector : the coefficients of the filter denominator in decreasing power order, or a polynomial.
real row vector : the input signal
real row vector of length
max(length(a),length(b))-1
: the initial
condition relative to a "direct form II transposed" state
space representation. The default value is a vector filled
with zeros.
real row vector : the filtered signal.
real row vector : the final state. It can be used to filter a next batch of the input signal.
This function filters a data sequence using a digital filter using a "direct form II transposed" implementation.
The filter canonical form is :
The algorithm uses the highest degree between degree(a)
and degree(b)
as value for n
.
If the polynomial form is used for B
(resp. for A
) then a polynomial or a scalar must be used for A
(resp. B
).
Oppenheim, A. V. and R.W. Schafer. Discrete-Time Signal Processing, Englewood Cliffs, NJ: Prentice-Hall, 1989, pp. 311-312.