Mupad interface- solving equations

2 ビュー (過去 30 日間)
Mirsad
Mirsad 2017 年 1 月 14 日
コメント済み: Mirsad 2017 年 1 月 16 日
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

回答 (1 件)

Walter Roberson
Walter Roberson 2017 年 1 月 14 日
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 件のコメント
Walter Roberson
Walter Roberson 2017 年 1 月 16 日
編集済み: Walter Roberson 2017 年 1 月 16 日
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 2017 年 1 月 16 日
Thank you, the code you write is the better way to get what I need. Yes, lammbert function is more relevant now.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeGet Started with MuPAD についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by