Symbolic Expression Sum Same Denominator

I have a symbolic experssion in the form: (where are symvars)
(3*a)/8 + (3*b)/8 + c/4
I would like this to be in the form of the same denominator, like:
(3*a + 3*b + 2*c) / 8
How can I achieve this ?

Réponses (2)

Star Strider
Star Strider le 26 Déc 2018
Modifié(e) : Star Strider le 26 Déc 2018
Try this:
syms a b c
Eqn = (3*a)/8 + (3*b)/8 + c/4
[Eqnn,Eqnd] = numden(Eqn)
producing:
Eqnn =
3*a + 3*b + 2*c
Eqnd =
8
Unfortunately, if you express it again as:
NewEqn = Eqnn / Eqnd
the result is the original format for ‘Eqn’.
EDIT —
The best you can hope for is a LaTeX expression for your fraction:
syms a b c
Eqn = (3*a)/8 + (3*b)/8 + c/4
[Eqnn,Eqnd] = numden(Eqn)
fn = latex(Eqnn);
fd = latex(Eqnd);
Expr = sprintf('$f(a,b,c) = \\frac{%s}{%s}$', fn, fd)
producing:
madhan ravi
madhan ravi le 26 Déc 2018
Modifié(e) : madhan ravi le 26 Déc 2018
syms a b c
eqn = (3*a)/8 + (3*b)/8 + c/4
simplifyFraction(eqn,'Expand',1) % the best way to simplify a fraction by expanding also returns the same

2 commentaires

Miraç Gülgönül
Miraç Gülgönül le 26 Déc 2018
Modifié(e) : Miraç Gülgönül le 26 Déc 2018
I don't understand, this outputs
eqn =
(3*a)/8 + (3*b)/8 + c/4
ans =
(3*a)/8 + (3*b)/8 + c/4
so no change.
madhan ravi
madhan ravi le 26 Déc 2018
Modifié(e) : madhan ravi le 26 Déc 2018
Yes exactly matlab is not able to compute those fractions as you desire.
Try:
bb=factor(eqn) % gives your partial result though
Gives:
bb =
[ 1/8, 3*a + 3*b + 2*c]

Connectez-vous pour commenter.

Catégories

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

Community Treasure Hunt

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

Start Hunting!

Translated by