How to create a transfer function with no simplification ?
15 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
s=tf('s')
num=(s+0.1946)*1.4;
den=(4*s+1)*(50*s+4)*(12*s+1);
G=tf(num/den)
G = zpk((s+0.1946)*1.4/((4*s+1)*(50*s+4)*(12*s+1)))
If I use zpk command I get finally a simplification which leads to:
(which is ideal for calculating directly the pole and zero locations)
G =
0.00058333 (s+0.1946)
-----------------------------
(s+0.25) (s+0.08333) (s+0.08)
Continuous-time zero/pole/gain model.
I would like to get excactly the same coefficients like is given to num and den above. ((s+0.1946)*1.4)/((4*s+1)*(50*s+4)*(12*s+1))
Is it posible?
Thank you.
0 commentaires
Réponses (2)
Sam Chak
le 15 Oct 2022
The zpk() command shows the zero/pole/gain model. (
),
, and (
) are not in pole forms.
If the native transfer function is required for analysis, then how about this form?
syms s
num = (s + 0.1946)*1.4;
den = (4*s + 1)*(50*s + 4)*(12*s + 1);
G = num/den
Paul
le 15 Oct 2022
I'm almost certain that this can't be done in the CST. If just wanted for display purposes you'd have to write your own code, but even that might be painful because the numerator is in the form of (s + a) but the denominator factors are in the form (s/b + 1) so you'd need different code to handle those two formats.
This answer shows some code for reformatting the display of a discrete-time tf to show more precision of the coefficients. Maybe it could be a starting point for this use case?
2 commentaires
Sam Chak
le 15 Oct 2022
I think if OP wants for display purposes without any computational analysis, perhaps using LaTeX or any professional Equation Editor should make the Transfer Function looks 'beautiful'.
Voir également
Catégories
En savoir plus sur Conversion Between Symbolic and Numeric dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
