ellip {signal} | R Documentation |
Generate an Elliptic or Cauer filter (discrete and contnuious).
## 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, ...)
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. W must be a
scalar for low-pass and high-pass filters, and W must be a
two-element vector c(low, high) specifying the lower and
upper bands. For digital filters, W must be between 0 and 1
where 1 is the Nyquist frequency. |
type |
Filter type, one of "low" for a low-pass filter,
"high" for a high-pass filter, "stop" for a stop-band (band-reject)
filter, or "pass" for a pass-band filter. |
plane |
"z" for a digital filter or "s" for an
analog filter. |
... |
additional arguments passed to ellip ,
overriding those given by n of class FilterOfOrder . |
Because ellip
is generic, it can be extended to accept other
inputs, using "ellipord"
to generate filter criteria for example.
An Arma
object with list elements:
b |
moving average (MA) polynomial coefficients |
a |
autoregressive (AR) polynomial coefficients |
Original Octave version by Paulo Neis p_neis@yahoo.com.br. Modified by Doug Stewart. Conversion to R by Tom Short.
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.
http://en.wikipedia.org/wiki/Elliptic_filter
Octave Forge http://octave.sf.net
Arma
, filter
, butter
,
cheby1
, and ellipord
# 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")