problem in summation of two transfer function

Hello guys,
I have defined two transfer function as below:
numerator1 = 1;
denominator1 = [2,1];
sys1 = tf(numerator1, denominator1)
sys1 =
1
-------
2 s + 1
numerator2 = 2;
denominator2 = [2,1];
sys2 = tf(numerator2, denominator2)
sys2 =
2
-------
2 s + 1
when I use
sys3 = sys1 + sys2
I get the multiple version of two TF while I expect to get normal summation
I want this:
sys3 =
3
-------
2 s + 1
PS: I already tested minreal(sys3) and sys3 = parallel(sys1, sys2), again same (multiply) result!
where am I doing wrong?

 采纳的回答

sys1 = tf(1,[2 1]);
sys2 = tf(2,[2 1]);
sys3 = sys2 + sys1
sys3 = 6 s + 3 --------------- 4 s^2 + 4 s + 1 Continuous-time transfer function.
minreal(sys3)
ans = 1.5 ------- s + 0.5 Continuous-time transfer function.
minreal(parallel(sys1,sys2))
ans = 1.5 ------- s + 0.5 Continuous-time transfer function.
minreal() normalizes the denominator to have unity leading coefficient. But it does give the correct answer. Is ths not the desired/expected result?

1 个评论

Thanks Paul, yes you are right.
when I used minreal(), because the denominator was changed I thought that the result is wrong while, the answer is correct and numerator and denominator are simplified together.
cheers and thank you again

请先登录,再进行评论。

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Control System Toolbox 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by