Factorize transfer function

34 ビュー (過去 30 日間)
Michel
Michel 2012 年 3 月 25 日
I need to divide my transfer function into 2 transfer functions in such way that S2 = S1' Actually I have product of S2*S1
s = tf('s')
Suu = -1.6/((s-4)*(s+4))
Sux = -0.8/((s+4)*(s-4)*(s^2 + 0.1*s + 1))
Sxx = 0.3*(s - 4.163)*(s + 4.163)/((s+4)*(s-4)*(s^2 - 0.1*s + 1)*(s^2 + 0.1*s + 1))
Sxu = Sux'
SxdSdx = Sxx - (Sxu*Sux)/Suu
How to determine Sxd and Sdx if Sxd = Sdx' ? Anybody can help me?

採用された回答

Stefan Wehmeier
Stefan Wehmeier 2012 年 3 月 26 日
Don't know how to do it using tf, but you can do
syms s
Suu = -1.6/((s-4)*(s+4))
Sux = -0.8/((s+4)*(s-4)*(s^2 + 0.1*s + 1))
Sxx = 0.3*(s - 4.163)*(s + 4.163)/((s+4)*(s-4)*(s^2 - 0.1*s + 1)*(s^2 + 0.1*s + 1))
Sxu = subs(Sux, s, -s)
SxdSdx = Sxx - (Sxu*Sux)/Suu
factor(SxdSdx)
or, to obtain a factorization of the numerator also,
feval(symengine, 'factor', SxdSdx, 'R_')

その他の回答 (0 件)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by