Documentation Center |
Elliptic filter design
[z,p,k] = ellip(n,Rp,Rs,Wp)
[z,p,k] = ellip(n,Rp,Rs,Wp,'ftype')
[b,a] = ellip(n,Rp,Rs,Wp)
[b,a] = ellip(n,Rp,Rs,Wp,'ftype')
[A,B,C,D] = ellip(n,Rp,Rs,Wp)
[A,B,C,D] = ellip(n,Rp,Rs,Wp,'ftype')
[z,p,k] = ellip(n,Rp,Rs,Wp,'s')
[z,p,k] = ellip(n,Rp,Rs,Wp,'ftype','s')
[b,a] = ellip(n,Rp,Rs,Wp,'s')
[b,a] = ellip(n,Rp,Rs,Wp,'ftype','s')
[A,B,C,D] = ellip(n,Rp,Rs,Wp,'s')
[A,B,C,D] = ellip(n,Rp,Rs,Wp,'ftype','s')
ellip designs lowpass, bandpass, highpass, and bandstop digital and analog elliptic filters. Elliptic filters offer steeper rolloff characteristics than Butterworth or Chebyshev filters, but are equiripple in both the pass- and stopbands. In general, elliptic filters meet given performance specifications with the lowest order of any filter type.
[z,p,k] = ellip(n,Rp,Rs,Wp) designs an order n lowpass digital elliptic filter with normalized passband edge frequency Wp, Rp dB of ripple in the passband, and a stopband Rs dB down from the peak value in the passband. It returns the zeros and poles in length n column vectors z and p and the gain in the scalar k.
The normalized passband edge frequency is the edge of the passband, at which the magnitude response of the filter is -Rp dB. For ellip, the normalized cutoff frequency Wp is a number between 0 and 1, where 1 corresponds to half the sampling frequency (Nyquist frequency). Smaller values of passband ripple Rp and larger values of stopband attenuation Rs both lead to wider transition widths (shallower rolloff characteristics).
If Wp is a two-element vector, Wp = [w1 w2], ellip returns an order 2*n bandpass filter with passband w1 < ω < w2.
[z,p,k] = ellip(n,Rp,Rs,Wp,'ftype') designs a highpass, lowpass, or bandstop filter, where the string 'ftype' is one of the following:
'high' for a highpass digital filter with normalized passband edge frequency Wp
'low' for a lowpass digital filter with normalized passband edge frequency Wp
'stop' for an order 2*n bandstop digital filter if Wp is a two-element vector, Wp = [w1 w2]. The stopband is w1 < ω < w2.
With different numbers of output arguments, ellip directly obtains other realizations of the filter. To obtain the transfer function form, use two output arguments as shown below.
Note: See Limitations for information about numerical issues that affect forming the transfer function. |
[b,a] = ellip(n,Rp,Rs,Wp) designs an order n lowpass digital elliptic filter with normalized passband edge frequency Wp, Rp dB of ripple in the passband, and a stopband Rs dB down from the peak value in the passband. It returns the filter coefficients in the length n+1 row vectors b and a, with coefficients in descending powers of z.
[b,a] = ellip(n,Rp,Rs,Wp,'ftype') designs a highpass, lowpass, or bandstop filter, where the string 'ftype' is 'high', 'low', or 'stop', as described above.
To obtain state-space form, use four output arguments as shown below:
[A,B,C,D] = ellip(n,Rp,Rs,Wp) or
[A,B,C,D] = ellip(n,Rp,Rs,Wp,'ftype') where A, B, C, and D are
and u is the input, x is the state vector, and y is the output.
[z,p,k] = ellip(n,Rp,Rs,Wp,'s') designs an order n lowpass analog elliptic filter with angular passband edge frequency Wp rad/s and returns the zeros and poles in length n or 2*n column vectors z and p and the gain in the scalar k.
The angular passband edge frequency is the edge of the passband, at which the magnitude response of the filter is -Rp dB. For ellip, the angular passband edge frequency Wp must be greater than 0 rad/s.
If Wp is a two-element vector with w1 < w2, then ellip(n,Rp,Rs,Wp,'s') returns an order 2*n bandpass analog filter with passband w1 < ω< w2.
[z,p,k] = ellip(n,Rp,Rs,Wp,'ftype','s') designs a highpass, lowpass, or bandstop filter, where the string 'ftype' is 'high', 'low', or 'stop', as described above.
With different numbers of output arguments, ellip directly obtains other realizations of the analog filter. To obtain the transfer function form, use two output arguments as shown below:
[b,a] = ellip(n,Rp,Rs,Wp,'s') designs an order n lowpass analog elliptic filter with angular passband edge frequency Wp rad/s and returns the filter coefficients in the length n+1 row vectors b and a, in descending powers of s, derived from this transfer function:
[b,a] = ellip(n,Rp,Rs,Wp,'ftype','s') designs a highpass, lowpass, or bandstop filter, where the string 'ftype' is 'high', 'low', or 'stop', as described above.
To obtain state-space form, use four output arguments as shown below:
[A,B,C,D] = ellip(n,Rp,Rs,Wp,'s') or
[A,B,C,D] = ellip(n,Rp,Rs,Wp,'ftype','s') where A, B, C, and D are
and u is the input, x is the state vector, and y is the output.