Generate Bessel, Butterworth, Chebyshev, or RC filter
sys = mkfilter(fc,ord,type) sys = mkfilter(fc,ord,type,psbndr)
sys = mkfilter(fc,ord,type) returns a single-input, single-output analog low pass filter sys as an ss object. The cutoff frequency (Hertz) is fc and the filter order is ord, a positive integer. The string variable type specifies the type of filter and can be one of the following
Series of resistor/capacitor filters
The dc gain of each filter (except even-order Chebyshev) is set to unity.
sys = mkfilter(fc,ord,type,psbndr) contains the input argument psbndr that specifies the Chebyshev passband ripple (in dB). At the cutoff frequency, the magnitude is -psbndr dB. For even-order Chebyshev filters the DC gain is also -psbndr dB.
butw = mkfilter(2,4,'butterw'); cheb = mkfilter(4,4,'cheby',0.5); rc = mkfilter(1,4,'rc'); bode(butw_g,'-',cheb_g,'--',rc_g,'-.') megend('Butterworth','Chebyshev','RC filter')
The Bessel filters are calculated using the recursive polynomial formula. This is poorly conditioned for high order filters (order > 8).