partfrac() function returning same expression

syms s
% Given expression
F = partfrac((s^2+2*s+1)/(s^3-5*s+3),s)
F = 
The output is as follows.
F =
(s^2 + 2*s + 1)/(s^3 - 5*s + 3)
I know syms has a big part to do with it but im not sure exactly what.

Réponses (1)

Dyuman Joshi
Dyuman Joshi le 31 Jan 2024
Déplacé(e) : Steven Lord le 31 Jan 2024
It gives the same expression as the output because the denominator can not be decomposed with the default factor format i.e. 'rational'.
You can specify a 'full' or 'real' factor mode but the output might not be easy to look at -
syms s
F1 = partfrac((s^2+2*s+1)/(s^3-5*s+3),s,'FactorMode','real')
F1 = 
F2 = partfrac((s^2+2*s+1)/(s^3-5*s+3),s,'FactorMode','full')
F2 = 
vpa(F2)
ans = 

3 commentaires

Esteban
Esteban le 31 Jan 2024
Thank you. When I attempted I did try full but like you said the output was a bit crazy. Is there any way to format the ouput short ? for the factor format real?
I assume you mean to show the output with 4 significant digits -
syms s
F = partfrac((s^2+2*s+1)/(s^3-5*s+3),s,'FactorMode','full')
F = 
vpa(F, 4)
ans = 
Dyuman Joshi
Dyuman Joshi le 19 Fév 2024
Any updates, @Esteban?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Symbolic Math Toolbox dans Centre d'aide et File Exchange

Produits

Version

R2023b

Question posée :

le 31 Jan 2024

Commenté :

le 19 Fév 2024

Community Treasure Hunt

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

Start Hunting!

Translated by