Simplified solution to system of algebraic equations

4 ビュー (過去 30 日間)
Aleem Andrew
Aleem Andrew 2020 年 4 月 1 日
コメント済み: Aleem Andrew 2020 年 4 月 1 日
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]

採用された回答

Ameer Hamza
Ameer Hamza 2020 年 4 月 1 日
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)

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNumbers and Precision についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by