Mupad interface- solving equations

2 views (last 30 days)
Mirsad
Mirsad on 14 Jan 2017
Commented: Mirsad on 16 Jan 2017
Hello everyone,
I have an equation that written in Mupad;
F := 38000 * ln((K*n)/(K*n - 250)) - 9500000.0/(K*n - 250) + 7000 = 0;
Here, I want to calculate the K*n value. My purpose is to get this parameter from the equation. When I use solve command such that F:= solve(F,K*n), it gives me only one solution of the equation. How can I see all possible solutions?. I had only one negative solution but there must be some positive solution also but I haven't seen yet.
Note: I also try to limit the parameter range, (K*n = 1..1000) but still doesn't work. Best regards, Mirsad

Answers (1)

Walter Roberson
Walter Roberson on 14 Jan 2017
Delete the ".0" from the constant in order to have the two real-valued solutions returned.
There are an infinite number of solutions corresponding to different branches of the LambertW function. I do not know how to get MuPAD to return the generalized form. The generalized form is
250*LambertW(Z, -exp(-45/38))/(LambertW(Z, -exp(-45/38))+1)
for integer Z, the different roots of LambertW. Z = -1 and Z = 0 are the real-valued solutions.
  3 Comments
Walter Roberson
Walter Roberson on 16 Jan 2017
Edited: Walter Roberson on 16 Jan 2017
F := 38000 * ln((K*n)/(K*n - 250)) - 9500000/(K*n - 250) + 7000 = 0;
select( solve(F, K*n), x->float(x)>0);
float(%)
The description of the LambertW function is not bad; see https://www.mathworks.com/help/symbolic/mupad_ref/lambertw.html
Mirsad
Mirsad on 16 Jan 2017
Thank you, the code you write is the better way to get what I need. Yes, lammbert function is more relevant now.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!