Equi-Ripple BandPass VI

Owning Palette: Filters VIs

Requires: Full Development System

Generates a bandpass FIR filter with equi-ripple characteristics using the Parks-McClellan algorithm and the higher pass freq, lower pass freq, # of taps, lower stop freq, higher stop freq, and sampling freq: fs. The Equi-Ripple BandPass VI then applies a linear-phase, bandpass filter to the input sequence X using the Convolution VI to obtain Filtered X. Wire data to the X input to determine the polymorphic instance to use or manually select the instance.

Details  

Use the pull-down menu to select an instance of this VI.

 Add to the block diagram  Find on the palette

Equi-Ripple BandPass (DBL)

higher pass freq must be greater than lower pass freq frequency and observe the Nyquist criterion. The default is 0.35 Hz. If higher pass freq is less than or equal to lower pass freq or does not meet the Nyquist criterion, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
lower pass freq must be greater than the lower stop freq and observe the Nyquist criterion. The default is 0.25 Hz. If lower pass freq is less than or equal to lower stop freq or does not meet the Nyquist criterion, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
X is the input signal to filter.
# of taps must be greater than 2. The default is 32. If # of taps is less than or equal to 2, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
lower stop freq must be greater than zero and observe the Nyquist criterion. The default is 0.20 Hz. If lower stop freq is less than or equal to zero or does not meet the Nyquist criterion, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
higher stop freq must be greater than higher pass freq and observe the Nyquist criterion. The default is 0.4 Hz. If higher stop freq is less than or equal to higher pass freq or does not meet the Nyquist criterion, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
sampling freq: fs is the frequency in Hz at which you want to sample X and must be greater than 0. The default is 1.0 Hz.
Filtered X contains the result of filtering the input sequence X by convolution. This VI calculates the number of elements, k, in Filtered X using the following equation:

k = n + m – 1,

where n is the number of elements in X and m is the number of taps.

This VI also calculates the delay associated with the output sequence using the following equation:

error returns any error or warning from the VI. You can wire error to the Error Cluster From Error Code VI to convert the error code or warning into an error cluster.

Equi-Ripple BandPass (CDB)

higher pass freq must be greater than lower pass freq frequency and observe the Nyquist criterion. The default is 0.35 Hz. If higher pass freq is less than or equal to lower pass freq or does not meet the Nyquist criterion, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
lower pass freq must be greater than the lower stop freq and observe the Nyquist criterion. The default is 0.25 Hz. If lower pass freq is less than or equal to lower stop freq or does not meet the Nyquist criterion, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
X is the input signal to filter.
# of taps must be greater than 2. The default is 32. If # of taps is less than or equal to 2, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
lower stop freq must be greater than zero and observe the Nyquist criterion. The default is 0.20 Hz. If lower stop freq is less than or equal to zero or does not meet the Nyquist criterion, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
higher stop freq must be greater than higher pass freq and observe the Nyquist criterion. The default is 0.4 Hz. If higher stop freq is less than or equal to higher pass freq or does not meet the Nyquist criterion, the VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.
sampling freq: fs is the frequency in Hz at which you want to sample X and must be greater than 0. The default is 1.0 Hz.
Filtered X contains the result of filtering the input sequence X by convolution. The number of elements, k, in Filtered X is given by the following equation.

k = n + m – 1,

where n is the number of elements in X and m is the number of taps.

A delay is also associated with the output sequence, as given by the following equation.

error returns any error or warning from the VI. You can wire error to the Error Cluster From Error Code VI to convert the error code or warning into an error cluster.

Equi-Ripple BandPass Details

The first stopband of the filter region goes from zero (DC) to the lower stop frequency. The passband region goes from the lower pass frequency to the higher pass frequency. The second stopband region goes from the higher stop frequency to the Nyquist frequency.

The values for the stop and pass frequencies must observe the following relationship.

0 < f0 < f1 < f2 < f3 < 0.5fs

where f0 is lower stop freq, f1 is lower pass freq, f2 is higher pass freq, f3 is higher stop freq, and fs is sampling frequency: fs. If you violate any of these conditions, this VI sets Filtered X to an empty array and returns an error through the Parks-McClellan VI.