besselap: Bessel analog low-pass filter prototype

View source: R/besselap.R

besselapR Documentation

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.

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! /

Value

List of class Zpg containing poles and gain of the filter

Author(s)

Thomas Sailer, emailt.sailer@alumni.ethz.ch.
Conversion to R by Geert van Boxtel, G.J.M.vanBoxtel@gmail.com.

References

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

Examples

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


gjmvanboxtel/gsignal documentation built on Nov. 22, 2023, 8:19 p.m.