syredi — Design of iir filters, syredi code interface
[fact,b2,b1,b0,c1,c0,zzeros,zpoles]=syredi(ityp,iapro,om,deltap,deltas)
integer, the filter type: 1 stands for low-pass, 2 for high-pass, 3 for band-pass, 4 for stop-band.
integer, the design type:esign approximation: 1 stands for butterworth, 2 for elliptic, 3 for Chebytchev1, 4 for Chebytchev2.
4-vector of cutoff frequencies (in radians)
om=[om1,om2,om3,om4]
, 0 <= om1 <=
om2 <= om3 <= om4 <= pi
. When
ftype
='lp' or 'hp', om3
and
om4
are not used and may be set to 0.
ripple in the passband. 0<= deltap
<=1
ripple in the stopband. 0<= deltas
<=1
scalar, the filter gain
row vector, degree 2 coefficients of numerators.
row vector, degree 1 coefficients of numerators.
row vector, degree 0 coefficients of numerators.
row vector, degree 1 coefficients of denominators.
row vector, degree 0 coefficients of denominators.
row vector, filter zeros in the z-domain
row vector, filter poles in the z-domain
computes iir filter approximation. The result is given as a
set of second order transfer functions
Hi=(b0(i)+b1(i)*z+b2(i)*z^2)/(c0(i)+c1(i)*z+z^2)
and also as a poles, zeros, gain representation.
The filter obtained is h=fact*H1*...*Hn
.
The syredi code is derived from doredi package written by Guenter F. Dehner, Institut fuer Nachrichtentechnik Universitaet Erlangen-Nuernberg, Germany.