writing transfer functions in matlab

12 次查看(过去 30 天)
Hi, I want to write a transfer function in matlab. I know we usually write in the following way
trans = tf([1 0 0], [1 0 1]);
This gives something as a function of 's'.
what if i wanted to write an equation that was a function of 's+x', where x is a constant. So instead of H(s), i want to write a function and evaluate at values of say H(s+5).
thanks
  1 个评论
rupam mahapatra
rupam mahapatra 2022-1-27
Write a MATLAB program to determine the partial fraction expansion of a rational z-transform. Using this program
determine the partial-fraction expansion of G(z).

请先登录,再进行评论。

回答(3 个)

Thomas
Thomas 2012-4-2
The documentation has good examples on how to write transfer functions:
  3 个评论
Thomas
Thomas 2012-4-2
is this what you want:
trans=tf([1 5],[1])
trans =
s + 5
aaa
aaa 2012-4-2
thanks for your reply.
that is not quite what i am looking for. that method just gives H(s) still. I would like to implement something that is in the form of H(s+5)

请先登录,再进行评论。


Arkadiy Turevskiy
Do you want to see the resulting expression as a function of (s+x), or do you just want to write an equation as function of (s+x)? If it is the latter you could do this:
>> arg=tf('s')+5
arg =
s + 5
Continuous-time transfer function.
>> h=1/(arg+3)
h =
1
-----
s + 8
Continuous-time transfer function.
>> arg=tf('s')+10
arg =
s + 10
Continuous-time transfer function.
>> h=1/(arg+3)
h =
1
------
s + 13
Continuous-time transfer function.
HTH. Arkadiy

Savan Prajapati
Savan Prajapati 2020-7-24
num = 100
den = [1,14,10]
sys = tf(num,den)
printsys(num,den)

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by