Calculate inverse Laplace Matlab
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi I have a transfer function in this form : (a*s^2)/(b*s^3+c*s^2+d*s+e) I have numerical value for a b c and d for example assume a=22 b=45 c=14 d=18 e=29. I would like to find the inverse Laplace in terms of coefficients a,b,c,d and e (Meaning something like a*exp(b*t)+...) . How can I do that since Matlab will give me :
a*sum((r3^2*exp(r3*t))/(3*b*r3^2 + 2*c*r3 + d), r3 in RootOf(b*s3^3 + c*s3^2 + d*s3 + e, s3))
after issuing following command.
ilaplace
0 commentaires
Réponses (1)
Martin Brown
le 26 Juin 2015
Modifié(e) : Martin Brown
le 26 Juin 2015
I presume you've tried this with 1st and 2nd order expressions and found it works correctly, but when moving to 3rd and higher, sometimes this type of factorized / summarized expression is returned. You can manually interpret it by using the roots() function to numerically calculate the actual roots of the denominator, r3 in your expression, which would then be substituted into the left hand side expression to get the three exponents and three coefficients.
Personally, I'd have expected the symbolic toolbox to do this for your 3rd order expression. I've tried in mupad and this gives an equivalent result to the one displayed in Matlab (not surprisingly). A similar, slightly longer discussion http://uk.mathworks.com/matlabcentral/newsreader/view_thread/302725
0 commentaires
Voir également
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!