SignalUtils::KaiserBetaFir Function

double KaiserBetaFir(double Ripple);

Kaiser beta for a FIR filter with a given ripple.

#NameTypeDescription
1Rippledouble
Remarks:

Returns the Kaiser-window shape parameter beta that yields the requested passband/stopband Ripple in a windowed FIR design. With A = -20log_(10)(Ripple) the attenuation in dB, the standard empirical formula is

beta = { 0.1102 (A-8.7),  if A > 50
       { 0.5842 (A-21)^(0.4) + 0.07886 (A-21),  if 21 <= A <= 50
       { 0,  if A < 21

Domain: 0 < Ripple < 1. The result feeds the Beta argument of Kaiser / KaiserImpulse. A larger ripple (less attenuation) gives a smaller beta; below 21 dB no windowing is needed and beta = 0.

References:

[1] Discrete-time signal processing, Oppenheim and Schafer, Prentice-Hall, 1989.

See Also: SignalUtils::Kaiser, SignalUtils::KaiserBetaWindow
Declared in Dew::Signal::Units::SignalUtils · Dew.Signal/Units.SignalUtils.h · Cross-compiler