Cannot find explicit solution

I am trying to solve a nonlinear equation with one unknown:
syms eps a k f b e c d g w h ct m n
solve((-(w*(c*(f*k)^(1/(k + 1)) + d*(e*k)^(1/(k + 1))))/(4*eps*w - ct*w + n*w + g*(f*k)^(1/(k + 1))))^(k + 1) + (-(w*(a*(f*k)^(1/(k + 1)) + h*(e*k)^(1/(k + 1))))/(4*eps*w - ct*w + m*w + g*(f*k)^(1/(k + 1))))^(k + 1) == ((b*w*(e*k)^(1/(k + 1)))/(2*eps*w - ct*w + m*w + n*w + g*(f*k)^(1/(k + 1))))^(k + 1) + w^(k + 1), w>=0, eps>0, a>0, b>0, c>0, d>0, e>0, f>0, g>0, h>0, k>0, ct>0, m>0, n>0, w)
But Matlab says:
Warning: Cannot find explicit solution.
> In solve (line 316)
ans =
Empty sym: 0-by-1
Any idea?
Thanks.

1 Comment

At first I didn't restrict the parameters to be greater than zero. Now I did it and edited the question by adding them, but I still have the same problem.

Sign in to comment.

Answers (2)

I’m afraid you will just have to take solve’s word for it that it cannot find an explicit solution to your equation. I believe it is the presence of the term “w^(k+1)” that prevents a solution being found.
The way around this is to abandon symbolic solutions and obtain a numerical solution. This will require that you assign specific numerical values to all the parameters: k, c, d, e, etc. You can use matlab’s ‘fzero’ for this purpose. Read about it at:
http://www.mathworks.com/help/matlab/ref/fzero.html

1 Comment

Thanks Roger.
I already solved it numerically by assigning some values to the parameters in another software (not Matlab). The reason of using Matlab was to find the solution symbolically.
I need a symbolic solution...

Sign in to comment.

Walter Roberson
Walter Roberson on 29 May 2016
I do not know why it cannot find the solution, but the solution is w = 0, provided k is not -1

1 Comment

Oh! Actually I forgot to mention that all of the parameters are greater than zero and the variable (w) is greater than or equal to 0. Does it help?
And would you tell me how you found w=0?

Sign in to comment.

Asked:

on 29 May 2016

Commented:

on 29 May 2016

Community Treasure Hunt

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

Start Hunting!