IIRFiltering

Advanced Analysis Library Only

AnalysisLibErrType IIRFiltering (double xArray[], int numberXElements, double aCoefficientArray[], double yConditionsArray[], int numberACoefficients, double bCoefficientArray[], double xConditionsArray[], int numberBCoefficients, double yArray[]);

Purpose

Filters the input sequence using the IIR filter specified by reverse coefficients aCoefficientArray and forward coefficients bCoefficientArray using the following formula:

The reverse and forward coefficients are obtained by respective IIR coefficient functions, such as Bw_Coef.

Parameters

Input
Name Type Description
xArray double-precision array Array containing the raw data to filter.
numberXElements integer Number of points in both bCoefficientArray and xConditionsArray.
aCoefficientArray double-precision array Array that contains the reverse coefficients for the IIR filtering operation.
numberACoefficients integer Number of coefficients in both aCoefficientArray and yConditionsArray.
bCoefficientArray double-precision array Array that contains the forward coefficients for the IIR filtering operation.
numberBCoefficients integer Number of coefficients in both bCoefficientArray and xConditionsArray.
Output
Name Type Description
yConditionsArray double-precision array Array that contains the initial conditions, or states. The size of this array must be at least numberACoefficients — 1.
yConditionsArray double-precision array The final conditions for the next iterations.
xConditionsArray double-precision array Array that contains the initial conditions, or states. The size of this array must be at least bCoefficientArray — 1.
xConditionsArray double-precision array The final conditions for the next iterations.
yArray double-precision array The output of the IIR filtering operation. The size of this array must be at least numberXElements.

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.