writing transfer functions in matlab

15 visualizaciones (últimos 30 días)
aaa
aaa el 2 de Abr. de 2012
Comentada: rupam mahapatra el 27 de En. de 2022
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 comentario
rupam mahapatra
rupam mahapatra el 27 de En. de 2022
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).

Iniciar sesión para comentar.

Respuestas (3)

Thomas
Thomas el 2 de Abr. de 2012
The documentation has good examples on how to write transfer functions:
  3 comentarios
Thomas
Thomas el 2 de Abr. de 2012
is this what you want:
trans=tf([1 5],[1])
trans =
s + 5
aaa
aaa el 2 de Abr. de 2012
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)

Iniciar sesión para comentar.


Arkadiy Turevskiy
Arkadiy Turevskiy el 4 de Abr. de 2012
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 el 24 de Jul. de 2020
num = 100
den = [1,14,10]
sys = tf(num,den)
printsys(num,den)

Community Treasure Hunt

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

Start Hunting!

Translated by