Digital Filters Option

23.08.2021

The FlexPro digital filters option offers algorithms for designing IIR and FIR filters as well as filters for smoothing data. The Analysis Wizard makes it possible to design various IIR and FIR filters based on specifications. After creation, the results can be stored directly as objects and documents in FlexPro's Object List.

Filter Design

FlexPro offers three procedures for designing filters: two options for the FIR filter design (FIR: Finite Impulse Response) and one for designing IIR filters (IIR: Infinite Impulse Response). These procedures are presented in the Digital Filters Tutorial. The filter coefficients can be calculated and the designed filter can be applied directly to the input signal. Phase correction is also possible here.

FIR Filter

The FIR filter design using the window method is probably the most popular FIR filter design option. This design technique is based on direct approximation of the required frequency response of the discrete-time system. In this case, the filter coefficients are determined from the impulse response of the filter to be implemented. In principle, this method should be accurate, but since the impulse response needs to have a finite length, large deviations are more or less the result, which are disruptive particularly in the achievable stopband attenuation and slope steepness.

For the FIR Filter Analysis Object (Window Method) various window functions available (Rectangular, Bartlett, Hamming, Generalized Hamming, Hanning, Blackman, Kaiser, Chebyshev) with which both the stopband attenuation and the slope steepness can be influenced. The Kaiser window and the Chebyshev window have a special role in this case, since for both windows the attenuation behavior and slope steepness can be influenced through adjustable parameters.

The disadvantage of designing FIR filters using the window method is that the approximation error cannot be influenced in different frequency ranges. Therefore it is often better when designing filters to use the minimax strategy (minimize the maximum error) or an error criterion with frequency weighting. This results in the "best" filter that can be achieved for the defined specification. The Parks-McClellan method provides the solution for the FIR filter using the Remez Exchange algorithm (Equiripple FIR) in an iteration process. Since filters can be designed using this approximation method with a constant ripple both in the passband and stopband, the filter is also known as the Equiripple filter. This algorithm is an optimization algorithm is based on Chebyshev polynomials and produces a minimum number of filter coefficients. For the required filter, an error function is formed from a linear combination of cosine functions and minimized by an efficient optimization procedure.

Using the FIR Filter Analysis Object (Equiripple Method), it is possible to design freely definable multiband filters in addition to low pass, high pass, bandpass and stopband filters. For this purpose, bands can be specified for which the cut-off frequencies, related gains and approximation error are specified.

IIR Filter

Using the IIR Filter Analysis Object you can design a filter that includes internal feedback (recursive filter). Different filter characteristics are available for this: Bessel filter, Butterworth filter, Chebyshev filter, Inverse Chebyshev filter (Chebyshev II filter) and Elliptic filter (Cauer filter). Low pass, high pass, bandpass and bandstop are also design options.

CFC Filter

CFC stands for Channel Frequency Class. This is a 4-pole phaseless Butterworth filter. The CFC filter is used in particular for crash tests and is described in more detail in the ISO 6487 and SAE J211 standards (CFC Filter Calculation).

SavitzkyGolay smoothing filter

This filter uses polynomial smoothing based on Savitzky and Golay. The data are weighted by applying filter coefficients (SavitzkyGolay Algorithm). Unlike a moving average filter, which reduces the height of the local maximum (peak) while simultaneously spreading the peak, the SavitzkyGolayFilter leaves the local maximum virtually unchanged. Use of this filter is therefore preferred in spectroscopy, for example.

LOESS and LOWESS filters

LOESS and LOWESS are very popular smoothing methods that use a locally weighted regression function. This method uses a weighting function with the effect that the influence of a neighboring value on the smoothed value at a certain position decreases with their distance to that position. Outliers are weighted lower compared to other methods. The important issue is selecting the smoothing width that renders the number of observed values used in calculating a point. In addition, two types of weighting are used: proximity weighting and robust weighting (LOESS/LOWESS Algorithm). LoessFilter uses a quadratic weighting function and LowessFilter uses a linear weighting function.

Gaussian filter

This filter smooths a data set through convolution with a Gaussian normal distribution. It is possible to design a Gaussian low pass, high pass, bandpass and stopband filter. Better smoothing is especially achieved using the Gaussian low pass filter than using the moving average.

 

Analysis Objects

CFC Filter Analysis Object

FIR Filter Analysis Object (Window Method)

FIR Filter Analysis Object (Equiripple Method)

IIR Filter Analysis Object

FPScript Functions

CFCFilter

IIRFilter

FIRFilterEquiripple

FIRFilterWindow

LoessFilter

LowessFilter

SavitzkyGolayFilter

GaussianFilter

AmplitudeResponse

PhaseResponse

GroupDelay Function

Tutorials

Digital Filters Tutorial

Algorithms

CFC Filter Calculation

Window Method

LOESS/LOWESS Algorithm

FIR Equiripple Method

SavitzkyGolay Algorithm

Share article or send as email:

You might be interested in these articles