besself3
Create a Bessel filter.
Syntax
[b,a] = besself3(n,Wp)
[b,a] = besself3(n,Wp,band)
[b,a] = besself3(n,Wp,domain)
[b,a] = besself3(n,Wp,band,domain)
Inputs
- n
- The filter order.
- Wp
- A scalar specifying the 3dB cutoff frequency of a low or high pass filter, or a two element vector specifying the cutoff frequencies of a bandpass or bandstop filter. For a digital filter the values (in Hz) are normalized relative to the Nyquist frequency. For an analog filter the values are in radians/sec. See Comments.
- band
- The band type of the filter. Omit for low pass or bandpass. Use 'high' for high pass, and 'stop' for bandstop.
- domain
-
- Use 'z' for digital filters (default).
- Use 's' for analog filters.
Outputs
- b
- The numerator polynomial coefficients of the filter.
- a
- The denominator polynomial coefficients of the filter.
Example
Create a fourth order Bessel low pass digital filter with a 300 Hz cutoff frequency and a 1000 Hz sampling frequency.
[b,a] = besself3(4,300/500)
b = [Matrix] 1 x 5
0.25350 1.01399 1.52099 1.01399 0.25350
a = [Matrix] 1 x 5
1.00000 1.56400 1.08905 0.35652 0.04640
Comments
Bessel filters are desirable for their property of having a maximally linear phase response in the pass band of an analog filter. For digital filters, this property is lost unless the sampling frequency is substantially higher than the cutoff frequency.
Filters can become unstable for high orders, and more easily so for bandpass or stopband filters.