Simplified solution to system of algebraic equations

1 view (last 30 days)
The following code solves the system of equations for x, but the solution could be further simplified, for example, by factoring N from the numerator. Can I modify the code so the solution is simplified?
syms a b x N g b L m
eqns = [(1/b)*(-2*N*sin(a))/3==m*L, x/b==-(5*L*cos(a))/6+(5*a^2*L*sin(a))/6, N/b==m*(5*L*sin(a))/6+(5*a^2*L)/(6*cos(a) +3*g)];
S = solve(eqns,[b m x]);
sol = [S.x]

Accepted Answer

Ameer Hamza
Ameer Hamza on 1 Apr 2020
Try this
syms a b x N g b L m
eqns = [(1/b)*(-2*N*sin(a))/3==m*L, x/b==-(5*L*cos(a))/6+(5*a^2*L*sin(a))/6, N/b==m*(5*L*sin(a))/6+(5*a^2*L)/(6*cos(a) +3*g)];
S = solve(eqns,[b m x]);
sol = S.x
sol_simplified = simplify(S.x)
Result:
sol =
-(18*N*cos(a)^2 + 10*N*cos(a)^2*sin(a)^2 + 9*N*g*cos(a) - 18*N*a^2*cos(a)*sin(a) - 5*N*a^2*g*sin(a)^3 + 5*N*g*cos(a)*sin(a)^2 - 10*N*a^2*cos(a)*sin(a)^3 - 9*N*a^2*g*sin(a))/(18*a^2)
sol_simplified =
(N*(cos(a) - a^2*sin(a))*(5*cos(a)^2 - 14)*(g + 2*cos(a)))/(18*a^2)

More Answers (0)

Categories

Find more on Numerical Integration and Differential Equations in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!