Solve a system of non linear equations with parameters

I have to find p11 p12 p22 in the following equations where q r b c are constants
p12^2/r + 2*c*p12 - 2*q = 0
p11 - b*p12 - c*p22 + (p12*p22)/r = 0
p22^2/r - 2*b*p22 + 2*p12 = 0
I specifically want to find p11 p12 and p22.
What should I do?

 Accepted Answer

syms p12 r c q p11 b p22
eqns = [p12^2/r + 2*c*p12 - 2*q ==0, p11 - b*p12 - c*p22 + (p12*p22)/r == 0, p22^2/r - 2*b*p22 + 2*p12 == 0]
sol = solve(eqns, [p11 p12 p22])
P11 = simplify(sol.p11,'steps',20);
P12 = simplify(sol.p12,'steps',20);
P22 = simplify(sol.p12,'steps',20);
Note: there are 4 solutions for each variable.

4 Comments

Sir the code is not running Warning: The solutions are parametrized by the symbols: z = C_ z11 = C_
In sufficiently old MATLAB such as R2014a, you need to use
sol = solve(eqns, p11, p12, p22);

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!