How can I enter a transfer function without writing down the exponents?

Is there a possibility to enter transfer functions like this one:
without writing out the exponent?
I know that it could be inserted as:
num=[35 3.5 8.75];
den=[100 25 100.24 1];
sys=tf(num,den)
but writing out equations could be time consuming so is there a faster way?

 Réponse acceptée

Stephan
Stephan le 25 Oct 2018
Modifié(e) : Stephan le 25 Oct 2018
Hi,
i think you made a mistake by multiplying the denumerator - When i calculate by hand i get:
num=[35 3.5 8.75]
den = [100 25 100.24 1]
For your purposes you could tryout conv function - it multiplies 2 polynomials:
num1 = [8.75];
num2 = [4 0.4 1];
den1 = [100 1];
den2 = [1 0.24 1];
sys = tf(conv(num1,num2),conv(den1,den2))
sys =
35 s^2 + 3.5 s + 8.75
------------------------------
100 s^3 + 25 s^2 + 100.2 s + 1
Continuous-time transfer function.
Best regards
Stephan

Plus de réponses (1)

num=8.75*[4 0.4 1];
den=conv([100 1]),[1 0.24 1]);
convolution of polynomial coefficient vectors is same as multiplication. NB: the hand multiplication above for the denominator is in error; the actual answer is
>> conv([100 1],[1 0.24 1])
ans =
100.0000 25.0000 100.2400 1.0000
>>

Catégories

En savoir plus sur MATLAB dans Centre d'aide et File Exchange

Produits

Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by