Admin Production ni-theme
Current Publication

EquiRpl_LPFiltering

LabWindows/CVI

EquiRpl_LPFiltering

Advanced Analysis Library Only

AnalysisLibErrType EquiRpl_LPFiltering (double inputArray[], ssize_t numberOfElements, int numberOfCoeffs, double samplingFrequency, double passBand, double stopBand, double outputArray[]);

Purpose

Filter the real array using a optimal lowpass FIR linear phase filter with equi-ripple characteristics.

Example Code

/* Design a 25-point lowpass FIR filter and filter the real incoming signal. */
double x[256], y[280];
double fs, f1, f2;
int n, ncoef;

fs = 1000.0; // sampling frequency
f1 = 300.0; // pass band [0, 300]
f2 = 400.0; // stop band [400, fs/2]
n = 256; // input signal length
ncoef = 25; //filter length
WhiteNoise (n, 1, 17, x);

EquiRpl_LPFiltering(x, n, ncoef, fs, f1, f2, y);

Parameters

Input
Name Type Description
inputArray double [] Array containing the raw data to filter.
numberOfElements ssize_t Number of elements in the input array inputArray.
numberOfCoeffs int Length of the FIR filter. numberOfCoeffs must be greater than 2.
samplingFrequency double Sampling frequency in Hertz.
passBand double Highest frequency of the pass band. The pass band is [0, f1].
stopBand double Lowest frequency of the stop band. The stop band is [f2, samplingFreq/2].
Output
Name Type Description
outputArray double [] Filtered data. This array must be at least (n + ncoef - 1) elements long.

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 2012 and later