transfer functions arithmetic - is it distributive?

1 次查看(过去 30 天)
I am using control toolbox for the first time and going through some of the documentation it seems like (h1*K1 + h1*h2*K2) and h1*(K1 + h2*K2) should give me the same resultant transfer function. I get two different transfer functions. I think I am missing something but dont know what. Can you help?
>> h1*(Kf1 + h2*Kf2)
ans =
From input to output "d":
0.06665 z - 0.0485
------------------
z^2 - 2 z + 1
>> (h1*Kf1) + (h1*h2*Kf2)
ans =
From input to output "d":
0.06665 z^2 - 0.1151 z + 0.0485
-------------------------------
z^3 - 3 z^2 + 3 z - 1
  1 个评论
Steven Lord
Steven Lord 2019-11-11
Can you show us the code you used to define the variables h1, Kf1, h1, h2, and Kf2?
Can you also confirm that none of those variables were changed between those two lines of code?

请先登录,再进行评论。

回答(1 个)

David Goodmanson
David Goodmanson 2019-11-11
Hi Kapil,
The second expression is merely the first expression multiplied by (z-1)/(z-1). So the two are equivalent, with the second expression lacking some factorization & cancellation.

类别

Help CenterFile Exchange 中查找有关 Get Started with MATLAB 的更多信息

产品


版本

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by