Signal Processing Toolbox    
cheby1

Chebyshev Type I filter design (passband ripple)

Syntax

Description

cheby1 designs lowpass, bandpass, highpass, and bandstop digital and analog Chebyshev Type I filters. Chebyshev Type I filters are equiripple in the passband and monotonic in the stopband. Type I filters roll off faster than type II filters, but at the expense of greater deviation from unity in the passband.

Digital Domain

[b,a] = cheby1(n,Rp,Wn) designs an order n Chebyshev lowpass digital Chebyshev filter with normalized cutoff frequency Wn and Rp dB of peak-to-peak ripple 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.

Normalized cutoff frequency is the frequency at which the magnitude response of the filter is equal to -Rp dB. For cheby1, the normalized cutoff frequency Wn is a number between 0 and 1, where 1 corresponds to the Nyquist frequency, radians per sample. Smaller values of passband ripple Rp lead to wider transition widths (shallower rolloff characteristics).

If Wn is a two-element vector, Wn = [w1 w2], cheby1 returns an order 2*n bandpass filter with passband w1 <  < w2.

[b,a] = cheby1(n,Rp,Wn,'ftype') designs a highpass or bandstop filter, where the string 'ftype' is either:

With different numbers of output arguments, cheby1 directly obtains other realizations of the filter. To obtain zero-pole-gain form, use three output arguments as shown below:

[z,p,k] = cheby1(n,Rp,Wn) or

[z,p,k] = cheby1(n,Rp,Wn,'ftype') returns the zeros and poles in length n column vectors z and p and the gain in the scalar k.

To obtain state-space form, use four output arguments as shown below:

[A,B,C,D] = cheby1(n,Rp,Wn) or

[A,B,C,D] = cheby1(n,Rp,Wn,'ftype') where A, B, C, and D are

and u is the input, x is the state vector, and y is the output.

Analog Domain

[b,a] = cheby1(n,Rp,Wn,'s') designs an order n lowpass analog Chebyshev Type I filter with angular cutoff frequency Wn rad/s. It returns the filter coefficients in length n+1 row vectors b and a, in descending powers of s, derived from the transfer function

Angular cutoff frequency is the frequency at which the magnitude response of the filter is -Rp dB. For cheby1, the angular cutoff frequency Wn must be greater than 0 rad/s.

If Wn is a two-element vector Wn = [w1 w2] with w1 < w2, then cheby1(n,Rp,Wn,'s') returns an order 2*n bandpass analog filter with passband w1 < w2.

[b,a] = cheby1(n,Rp,Wn,'ftype','s') designs a highpass or bandstop filter.

You can supply different numbers of output arguments for cheby1 to directly obtain other realizations of the analog filter. To obtain zero-pole-gain form, use three output arguments as shown below.

[z,p,k] = cheby1(n,Rp,Wn,'s') or

[z,p,k] = cheby1(n,Rp,Wn,'ftype','s') returns the zeros and poles in length n or 2*n column vectors z and p and the gain in the scalar k.

To obtain state-space form, use four output arguments as shown below:

[A,B,C,D] = cheby1(n,Rp,Wn,'s') or

[A,B,C,D] = cheby1(n,Rp,Wn,'ftype','s') where A, B, C, and D are defined as

and u is the input, x is the state vector, and y is the output.

Examples

Example 1: Lowpass Filter

For data sampled at 1000 Hz, design a 9th-order lowpass Chebyshev Type I filter with 0.5 dB of ripple in the passband and a cutoff frequency of 300 Hz, which corresponds to a normalized value of 0.6:

The frequency response of the filter is

Example 2: Bandpass Filter

Design a 10th-order bandpass Chebyshev Type I filter with a passband from 100 to 200 Hz and plot its impulse response:

Limitations

For high order filters, the state-space form is the most numerically accurate, followed by the zero-pole-gain form. The transfer function form is the least accurate; numerical problems can arise for filter orders as low as 15.

Algorithm

cheby1 uses a five-step algorithm:

  1. It finds the lowpass analog prototype poles, zeros, and gain using the cheb1ap function.
  2. It converts the poles, zeros, and gain into state-space form.
  3. It transforms the lowpass filter into a bandpass, highpass, or bandstop filter with desired cutoff frequencies, using a state-space transformation.
  4. For digital filter design, cheby1 uses bilinear to convert the analog filter into a digital filter through a bilinear transformation with frequency prewarping. Careful frequency adjustment guarantees that the analog filters and the digital filters will have the same frequency response magnitude at Wn or w1 and w2.
  5. It converts the state-space filter back to transfer function or zero-pole-gain form, as required.

See Also

besself, butter, cheb1ap, cheb1ord, cheby2, ellip


  chebwin cheby2