Fitting filters to frequency response¶
This module contains several functions to carry out a leastsquares fit to a given complex frequency response.
This module contains the following functions:
 LSIIR: Leastsquares IIR filter fit to a given frequency response
 LSFIR: Leastsquares fit of a digital FIR filter to a given frequency response
Deprecated since version 1.2.71: The module identification will be combined with the module deconvolution and renamed to model_estimation in the next major release 2.0.0. From then on you should only use the new module model_estimation instead.

PyDynamic.identification.fit_filter.
LSIIR
(Hvals, Nb, Na, f, Fs, tau=0, justFit=False)[source]¶ Leastsquares IIR filter fit to a given frequency response.
This method uses GaussNewton nonlinear optimization and pole mapping for filter stabilization
Parameters:  Hvals (numpy array of frequency response values of shape (M,)) –
 Nb (integer numerator polynomial order) –
 Na (integer denominator polynomial order) –
 f (numpy array of frequencies at which Hvals is given of shape) –
 (M,) –
 Fs (sampling frequency) –
 tau (integer initial estimate of time delay) –
 justFit (boolean, when true then no stabilization is carried out) –
Returns:  b,a (IIR filter coefficients as numpy arrays)
 tau (filter time delay in samples)
References
 Eichstädt et al. 2010 [Eichst2010]
 Vuerinckx et al. 1996 [Vuer1996]

PyDynamic.identification.fit_filter.
LSFIR
(H, N, tau, f, Fs, Wt=None)[source]¶ Leastsquares fit of a digital FIR filter to a given frequency response.
Parameters:  H (frequency response values of shape (M,)) –
 N (FIR filter order) –
 tau (delay of filter) –
 f (frequencies of shape (M,)) –
 Fs (sampling frequency of digital filter) –
 Wt ((optional) vector of weights of shape (M,) or shape (M,M)) –
Returns: Return type: filter coefficients bFIR (ndarray) of shape (N+1,)