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?

 채택된 답변

Paul
Paul 2022년 1월 11일
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에서 Simulink에 대해 자세히 알아보기

제품

질문:

2022년 1월 10일

댓글:

2022년 1월 11일

Community Treasure Hunt

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

Start Hunting!

Translated by