ellip {signal} | R Documentation |
Elliptic or Cauer filter
Description
Generate an Elliptic or Cauer filter (discrete and continuous).
Usage
## Default S3 method:
ellip(n, Rp, Rs, W, type = c("low", "high", "stop",
"pass"), plane = c("z", "s"), ...)
## S3 method for class 'FilterOfOrder'
ellip(n, Rp = n$Rp, Rs = n$Rs, W = n$Wc, type = n$type, ...)
Arguments
n |
filter order or generic filter model |
Rp |
dB of pass band ripple |
Rs |
dB of stop band ripple |
W |
critical frequencies of the filter. |
type |
Filter type, one of |
plane |
|
... |
additional arguments passed to |
Details
Because ellip
is generic, it can be extended to accept other
inputs, using "ellipord"
to generate filter criteria for example.
Value
An Arma
object with list elements:
b |
moving average (MA) polynomial coefficients |
a |
autoregressive (AR) polynomial coefficients |
Author(s)
Original Octave version by Paulo Neis p_neis@yahoo.com.br. Modified by Doug Stewart. Conversion to R by Tom Short.
References
Oppenheim, Alan V., Discrete Time Signal Processing, Hardcover, 1999.
Parente Ribeiro, E., Notas de aula da disciplina TE498 - Processamento Digital de Sinais, UFPR, 2001/2002.
https://en.wikipedia.org/wiki/Elliptic_filter
Octave Forge https://octave.sourceforge.io/
See Also
Arma
, filter
, butter
,
cheby1
, and ellipord
Examples
# compare the frequency responses of 5th-order Butterworth and elliptic filters.
bf <- butter(5, 0.1)
ef <- ellip(5, 3, 40, 0.1)
bfr <- freqz(bf)
efr <- freqz(ef)
plot(bfr$f, 20 * log10(abs(bfr$h)), type = "l", ylim = c(-50, 0),
xlab = "Frequency, radians", ylab = c("dB"))
lines(efr$f, 20 * log10(abs(efr$h)), col = "red")