Solving composite equations with symbolic toolbox

1 回表示 (過去 30 日間)
Nicholas Davis
Nicholas Davis 2021 年 6 月 1 日
Hi all,
I have a very simple code written to solve for two variables within two equations. My main variables are A and B, which are renamed to AR and BR later in the program. My constants are w, g, alphaL, and p. The initial equation is quadratic and thus will have two answers. I want each of these answers to be plugged into a new equation, a cubic equation, to therefore produce 6 differing solutions. I am not sure how to do this via symbolic toolbox, so any help would be seriously appreciated. Thanks!
syms A B w g alphaL p % w = (mu - V0)
eqn = B*(A + B)*(2*w - g*(A + 2*B)) - alphaL^2 == 0;
AR = solve(eqn,A);
neqn = -4*(B - p)*(AR + B - p)*(2*w - g*(AR + 2*B + p)) == 0;
BR = solve(neqn,B);
  3 件のコメント
Nicholas Davis
Nicholas Davis 2021 年 6 月 1 日
Hi Torsten.
I wasn't sure what approach to take as this was my first time with symbolic toolbox. The goal here was to start with the first equation and solve for A. The second equation was to have these solutions to A plugged into it to produce solutions for B.
John D'Errico
John D'Errico 2021 年 6 月 1 日
You CAN do it that way, at least, in this case, you can. However, the symbolic toolbox is better used to solve the two equations simultaneously. It has no problem with understanding there should be 6 solutions. @Sulaymon Eshkabilov shows how to do that.

サインインしてコメントする。

採用された回答

Sulaymon Eshkabilov
Sulaymon Eshkabilov 2021 年 6 月 1 日
Hi,
Here is the corrected code with the symbolic solutions (A, B) of the two equations:
clearvars
syms A B w g alphaL p AR
eqn1 = B*(A + B)*(2*w - g*(A + 2*B)) - alphaL^2 == 0;
eqn2 = -4*(B - p)*(AR + B - p)*(2*w - g*(AR + 2*B + p)) == 0;
SOL = solve(eqn1, eqn2,A, B);
A_solution=SOL.A;
B_solution=SOL.B;
Good luck.
  2 件のコメント
Nicholas Davis
Nicholas Davis 2021 年 6 月 2 日
This works amazingly Sulaymon! So, when used in the way that you have it written, the solve command can solve for both equations simulatenously? Also, can you explain the function of the last 2 lines?
Thanks for the help!
Sulaymon Eshkabilov
Sulaymon Eshkabilov 2021 年 6 月 2 日
Most welcome!
The last two lines are separation of solutions of A and B variables.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNumeric Solvers についてさらに検索

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by