Learn R Programming

gsignal (version 0.3-1)

besselap: Bessel analog low-pass filter prototype

Description

Return the poles and gain of a Bessel analog low-pass filter prototype.

Usage

besselap(n)

Arguments

n

order of the filter; must be < 25.

Value

List of class Zpg containing poles and gain of the filter

Details

The transfer function is

                     k
 H(s) = -----------------------------
         (s-p(1))(s-p(2))...(s-p(n))

besselap normalizes the poles and gain so that at low frequency and high frequency the Bessel prototype is asymptotically equivalent to the Butterworth prototype of the same order. The magnitude of the filter is less than \(1/\sqrt{2}\) at the unity cutoff frequency \(\Omega_c = 1\).

Analog Bessel filters are characterized by a group delay that is maximally flat at zero frequency and almost constant throughout the passband. The group delay at zero frequency is

   /  (2n!) \ 2
   | ------ |
   \ 2^n n! /

References

https://en.wikipedia.org/wiki/Bessel_polynomials

Examples

Run this code
# NOT RUN {
## 6th order Bessel low-pass analog filter
zp <- besselap(6)
w <- seq(0, 4, length.out = 128)
freqs(zp, w)

# }

Run the code above in your browser using DataLab