writing transfer functions in matlab

15 Ansichten (letzte 30 Tage)
aaa
aaa am 2 Apr. 2012
Kommentiert: rupam mahapatra am 27 Jan. 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 Kommentar
rupam mahapatra
rupam mahapatra am 27 Jan. 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).

Melden Sie sich an, um zu kommentieren.

Antworten (3)

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

Melden Sie sich an, um zu kommentieren.


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

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by