please help me in solving these equation showing error 0-by-1 and warning: Unable to find explicit solution

1 view (last 30 days)
syms f k_3 k_2 n k_1
eqn1= 0.00001168245 - k_1 - k_2/(1 + (0.00008662/(f - k_3*((0.00001168245)^2)))^n)==0;
eqn2=0.0000253 - k_1 - k_2/(1 + (0.000135034/(f - k_3*((0.0000253)^2)))^n)==0;
eqn3=0.00001187352 - k_1 - k_2/(1 + (0.0000973094/(f - k_3*((0.00001187352)^2)))^n)==0;
eqn4=0.00001437763 - k_1 - k_2/(1 + (0.00011957/(f - k_3*((0.00001437763)^2)))^n)==0;
eqn5=0.0000397437 - k_1 - k_2/(1+(0.00014748/(f - k_3*((0.0000397437)^2)))^n)==0;
eqns=[eqn1,eqn2,eqn3,eqn4,eqn5];
vars=[f k_3 k_2 n k_1];
answer = solve(eqns, vars);
vpa(answer.f)
vpa(answer.k_1)
vpa(answer.k_2)
vpa(answer.n)
vpa(answer.k_3)
  4 Comments
Walter Roberson
Walter Roberson on 25 Apr 2023
Note that you have expressions ^n where n is one of the unknowns. You will rarely be able to solve for exact integer powers or for lambertw . When you have an unknown power, you should assume that you will need to find approximate numeric solutions rather than exact formulas.

Sign in to comment.

Answers (1)

Luca Ferro
Luca Ferro on 24 Apr 2023
Not every system of equations, or even single equation, can be explicitly solved.
in your case the single equations can be solved, but the system can't.
What i suggest is to plot the equations and actually see where are the solutions, and then solve it numerically per intervals using vpasolve() or fzero()

Community Treasure Hunt

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

Start Hunting!