solving an implicit function with two variables

Hi, I am trying to solve the equation below for a value of P. If I use the command solve, the code is taking too long to run. After half an hour I stopped running the code. Is there a better way to go about this?
syms C Q y P r real
eqn1=(C/r)*((P)^(-r))*(Q^(1-r))+((y)^(1-2*r))*(P)^r*Q^r-(y)^(1-r)==0;
solP=solve(eqn1,P)

 Akzeptierte Antwort

Torsten
Torsten am 2 Apr. 2019

1 Stimme

Multiply by P^r and substitute P^r = x. You'll get a quadratic equation in x.
Solutions are
P1 = ( (Q^(-r)) / 2 * (1 + sqrt(1 - 4 * C/r * Q* y^(r-1) ) ) ) ^(1/r)
P2 = ( (Q^(-r)) / 2 * (1 - sqrt(1 - 4 * C/r * Q * y^(r-1) ) ) ) ^(1/r)

3 Kommentare

Thank you! That was really simple.
Matt J
Matt J am 2 Apr. 2019
@Naeketa, you should Accept-click Torsten's answer, since it seems to have addressed your problem.
sorry, I am new to this. Did not know thats how it worked. Thank you. :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by