0

transfer function How would I input this transfer function in python? I'm having trouble with the exponential term in the numerator. I'm currently using the python control systems library; is it possible to input the exponential term with this library? As far as I know, you can only input the transfer function through a list of coeficients like this

Hlc = control.tf(eqnum , eqden)

eqnum and eqden are both a list of numbers

I've red through the documentation of python control systems library

Jamiu S.
  • 5,257
  • 5
  • 12
  • 34
hassam
  • 1
  • 1
  • Doesn't seem like that interface supports non-polynomial transfer functions. You could ask the maintainers if there is a way to model a transfer function like yours. https://github.com/python-control/python-control – user9794 Dec 09 '22 at 20:59

1 Answers1

0

I believe you can do it like so:

num_pade, den_pade = control.pade(r,10)
TFe = control.tf(num_pade,den_pade)

The r is the coefficient of the expo with this you get fractional approximation of the expo. The 10 is for the precision of the approximation. TFe equals in this case e^(-rp) (approximately). if you want a transfer function with a poles do as follows:

num, den = [1],[a, 1]
TF2 = control.tf(num,den)
TF = control.series(TFe,TF2)

TF equals to, in this case, e^(-rp)/(ap+1). p = jw sometimes its reffered to as s.