InvCh_BPF

Advanced Analysis Library Only

AnalysisLibErrType InvCh_BPF (double inputArray[], int numberOfElements, double samplingFreq, double lowerCutoffFreq, double upperCutoffFreq, double stopBandAtten, int order, double outputArray[]);

Purpose

Filters the input array using an inverse Chebyshev bandpass digital filter. InvCh_BPF can perform the operation in place; that is, the input and output arrays can be the same.

Example

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

Parameters

Input
Name Type Description
inputArray double-precision array Array containing the raw data to filter.
numberOfElements integer Number of elements in both the input and output array.
samplingFreq double-precision Sampling frequency in Hertz.
lowerCutoffFreq double-precision Lower cutoff frequency in Hertz.
upperCutoffFreq double-precision Upper cutoff frequency in Hertz.
stopBandAtten double-precision Stop band attenuation in decibels.

Default Value: 40.0 db.
order integer Filter order.

Default Value: 5.
Output
Name Type Description
outputArray double-precision array 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.