Solving equations for Variable/Variable

조회 수: 1 (최근 30일)
Isaac Kambouris
Isaac Kambouris 2021년 9월 4일
댓글: Isaac Kambouris 2021년 9월 6일
I have a simple question but i have not been able to find a way to achive this and was looking for some help. For example if I have the following code
syms A B C D E
eqn = (A*B*C)/E == D;
Is it there a function that will allow me to solve for C/D = ?. I have tried using solve but this provides a struct variable that solve the equation for c and D aka (solves for C= and D=).
Thanks

채택된 답변

John D'Errico
John D'Errico 2021년 9월 5일
No reason you cannot do this:
syms A B C D E
eqn = (A*B*C)/E == D;
syms CoverD
solve(subs(eqn,C,CoverD*D),CoverD)
ans = 
  댓글 수: 3
John D'Errico
John D'Errico 2021년 9월 5일
Just look. Take it apart.
syms A B C D E
eqn = (A*B*C)/E == D;
syms CoverD;
Effectively, I define the variable CoverD as C/D. So if we accept that
CoverD = C/D
then multiply by D. Can you solve for C? I hope so.
So what does this substitution do?
subs(eqn,C,CoverD*D)
ans = 
It replaces C with the product CoverD*D. Now what happens to D in that expression? It effectively goes away, as long as D is not zero. And if D was zero, then what would be the meaning of the ratio C/D anyway? So we can assume D is never zero in this context.
The final solve should now be clear.
Isaac Kambouris
Isaac Kambouris 2021년 9월 6일
Ah thank you that makes a lot sense

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Assumptions에 대해 자세히 알아보기

제품


릴리스

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by