Skip to content

Latest commit

 

History

History
40 lines (35 loc) · 1.25 KB

README.md

File metadata and controls

40 lines (35 loc) · 1.25 KB

Tfest

PyPI version Downloads

Transfer function estimation with frequency response. Python equivalent of MATLAB tfest (but the algorithm is not exactly the same)

Only works with SISO systems for now.

Installation:

pip install tfest

Example:

To get a scipy transfer function:

import tfest
# u: input
# y: output
te = tfest.tfest(u, y)
# n_zeros, n_poles
te.estimate(3, 4, time=1)
te.get_transfer_function()

"time" is simulation length in seconds. To plot its bode diagram:

te.plot_bode()

Default method to calculate the frequency response Y/U is H1 estimator, if you want to use H2 or frequency/frequency just set the method to "h2" or "fft" and specify the time length of the simulation (in seconds, default is 1):

te.estimate(3, 4, method="h2", time=1)
te.estimate(3, 4, method="fft", time=1)

To use L2 regularization set the value of lambda l1 (default l1=0):

te.estimate(3, 4, time=1, l1=0.1)