Admin Production ni-theme
Current Publication

Bw_BPF

LabWindows/CVI

Bw_BPF

Advanced Analysis Library Only

AnalysisLibErrType Bw_BPF (double inputArray[], ssize_t numberOfElements, double samplingFrequency, double lowerCutoffFreq, double upperCutoffFreq, int order, double outputArray[]);

Purpose

Filters the input array using a Butterworth bandpass digital filter. Bw_BPF can perform the operation in place; that is, the input and output arrays can be the same.

Example Code

/* Generate a random signal and filter it using a fifth-order bandpass Butterworth filter. The pass band is from 200.0 to 300.0. */
double x[256], y[256], fs, fl, fh;
ssize_t n; int status, order;
n = 256;
fs = 1000.0;
fl = 200.0;
fh = 300.0;
order = 5;
Uniform (n, 17, x);
status = Bw_BPF (x, n, fs, fl, fh, order, y);

Parameters

Input
Name Type Description
inputArray double [] Array containing the raw data to filter.
numberOfElements ssize_t Number of elements in both the input and output array.
samplingFrequency double The frequency in Hertz at which you want to sample inputArray. This value must be greater than 0.
lowerCutoffFreq double Lower cutoff frequency in Hertz. This value must be 0 < lowerCutoffFreq < upperCutoffFreq < 0.5 * samplingFrequency.
upperCutoffFreq double Upper cutoff frequency in Hertz. This value must be 0 < lowerCutoffFreq < upperCutoffFreq < 0.5 * samplingFrequency.
order int Filter order. This value must be greater than 0.

Default Value: 5.
Output
Name Type Description
outputArray double [] Filtered data.

Return Value

Name Type Description
status AnalysisLibErrType A value that specifies the type of error that occurred. Refer to analysis.h for definitions of these constants.

Additional Information

Library: Advanced Analysis Library

Include file: analysis.h

LabWindows/CVI compatibility: LabWindows/CVI 3.1 and later

Example

Refer to apps\freqresp\freqresp.cws for an example of using the Bw_BPF function.