Butterworth filter design
[
designs
a lowpass, highpass, bandpass, or bandstop Butterworth filter, depending
on the value of b,a
] = butter(n
,Wn
,ftype
)ftype
and the number of elements
of Wn
. The resulting bandpass and bandstop designs
are of order 2n
.
Note: See Limitations for information about numerical issues that affect forming the transfer function.
[
designs
a lowpass, highpass, bandpass, or bandstop digital Butterworth filter
and returns its zeros, poles, and gain. This syntax can include any
of the input arguments in previous syntaxes.z,p,k
] = butter(___)
Butterworth filters have a magnitude response that is maximally flat in the passband and monotonic overall. This smoothness comes at the price of decreased rolloff steepness. Elliptic and Chebyshev filters generally provide steeper rolloff for a given filter order.
butter
uses a five-step algorithm:
It finds the lowpass analog prototype
poles, zeros, and gain using the function buttap
.
It converts the poles, zeros, and gain into state-space form.
If required, it uses a state-space transformation to convert the lowpass filter into a bandpass, highpass, or bandstop filter with the desired frequency constraints.
For digital filter design, it uses bilinear
to convert the analog filter
into a digital filter through a bilinear transformation with frequency
prewarping. Careful frequency adjustment enables the analog filters
and the digital filters to have the same frequency response magnitude
at Wn
or at w1
and w2
.
It converts the state-space filter back to its transfer function or zero-pole-gain form, as required.
besself
| buttap
| buttord
| cheby1
| cheby2
| designfilt
| ellip
| filter
| maxflat
| sosfilt