In [1]:
import numpy as np
import sympy as sy

In [3]:
s,z = sy.symbols('s,z', real=False)
Td,N,h = sy.symbols('Td, N,  h')

In [31]:
Fpd = 1 + Td*s/(1+Td*s/N)
Fpdd = Fpd.subs(s, (z-1)/(z*h)).subs(N,20).subs(h,0.2)
(Fnum, Fden) = sy.fraction(sy.together(Fpdd))
Bf = sy.poly(sy.expand(Fnum), z)
print Bf
Bd = sy.poly(z-0.8, z)
print Bd
coeffs = Bf.all_coeffs()
print coeffs


Poly((5.25*Td + 1.0)*z - 5.25*Td, z, domain='RR[Td]')
Poly(1.0*z - 0.8, z, domain='RR')
[5.25*Td + 1.0, -5.25*Td]

In [33]:
eq = coeffs[1]/coeffs[0] + 0.8
print eq
sol = sy.solve(eq, Td)
print sol


-5.25*Td/(5.25*Td + 1.0) + 0.8
[0.761904761904762]

In [35]:
Tdn = sy.N(sol[0])
5.25*Tdn/(5.25*Tdn+1)


Out[35]:
0.800000000000000

In [ ]: