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.

Antworten (1)

Dyuman Joshi
Dyuman Joshi am 31 Jan. 2024
Verschoben: Steven Lord am 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 Kommentare

Esteban
Esteban am 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 am 19 Feb. 2024
Any updates, @Esteban?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Symbolic Math Toolbox finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2023b

Gefragt:

am 31 Jan. 2024

Kommentiert:

am 19 Feb. 2024

Community Treasure Hunt

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

Start Hunting!

Translated by