CxEquiRpl_BPFiltering
- Updated2023-02-21
- 2 minute(s) read
Advanced Analysis Library Only
AnalysisLibErrType CxEquiRpl_BPFiltering (NIComplexNumber inputArray[], ssize_t numberOfElements, int numberOfCoeffs, double samplingFrequency, double f1, double f2, double f3, double f4, NIComplexNumber outputArray[]);
Purpose
Filter the complex array using a optimal bandpass FIR linear phase filter with equi-ripple characteristics.
Example Code
/* Design a 51-point bandpass FIR filter and filter the complex incoming signal. */
complexnum x[256], y[306];
double input[256];
double fs, f1, f2, f3, f4;
int n, ncoef, i;
fs = 1000.0; // sampling frequency
f1 = 200.0; // first stop band [0, 200]
f2 = 250.0; // pass band [250, 350]
f3 = 350.0;
f4 = 400.0; // second stop band [400, fs/2]
n = 256; // input signal length
ncoef = 51; //filter length
WhiteNoise (n, 1, 17, input);
for(i = 0; i < n; i++){
x[i].real = input[i];
x[i].imaginary = input[i];
}
CxEquiRpl_BPFiltering(x, n, ncoef, fs, f1, f2, f3, f4, y);
Parameters
Input | ||
Name | Type | Description |
inputArray | NIComplexNumber [] | 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. |
highestStopFreq | double | Highest frequency of the lower stop band. The lower stop band is [0, f1]. |
f2 | double | Lowest frequency of the pass band. The pass band is [f2, f3]. |
f3 | double | Highest frequency of the pass band. The pass band is [f2, f3]. |
f4 | double | Lowest frequency of the upper stop band. The upper stop band is [f4, samplingFreq/2]. |
Output | ||
Name | Type | Description |
outputArray | NIComplexNumber [] | Filtered data. This array must be at least ![]() |
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