No.3ベストアンサー
- 回答日時:
まだ締切られていないようなので補足します。
ANo.2の式(1)と式(2)が同じかどうかですが、計算したら同じでした。
【A = x*ln(x)*B*x の解(2通り)】
x = e^[W(A*e^B) - B] --- (1)
x = A/W(A*e^B) --- (2)
ただし-1/e≦A*e^B → -e^{-(B+1)}≦A
W(x)はLambertのW関数[1]で、x=W(x)*e^W(x) の解。
【(1)=(2)の証明】
xを使うと混乱するので、sを使ってW関数の定義を書くと
s = W(s)*e^W(s)
s=A*e^B とおくと、A*e^B = W(A*e^B)*e^W(A*e^B)
両辺をe^B (≠0)で割ると、A = W(A*e^B)*e^{W(A*e^B)-B}
A=0のときA*e^B = 0となるので、A≠0のとき両辺をW(A*e^B) で割ると、A/W(A*e^B) = e^{W(A*e^B)-B}。したがって式(1)=式(2)が成り立つ。A=0のときは、式(1)からx = 1が解となるが、式(2)では0/0となってしまうので、式(1)のほうがAがゼロかどうか気にしなくてもいいという点で使いやすいと思います。
[1] LambertのW関数 http://ja.wikipedia.org/wiki/%E3%83%A9%E3%83%B3% …
【LambertのW関数の数値計算法】
LambertのW関数の参考URLに出ている漸化式を使えば、-1/e≦xに対する関数値 W(x)を計算することができる。参考まで、ExcelVBAを使って計算する方法を示します。
Function LambertW(x As Double) As Variant
If x < -Exp(-1) Then
LambertW = ""
Exit Function
Else
If x = 0 Then
LambertW = 0
Exit Function
End If
End If
Dim W As Double, W1 As Double, eps As Double, ew As Double
eps = 10 ^ (-15)
W = 1
While Abs((W - W1) / W) > eps
W1 = W
ew = Exp(W)
W = W - (W * ew - x) / (ew * (W + 1) - (W + 2) * (W * ew - x) / (W + 1) / 2)
Wend
LambertW = W1
End Function
Excelの「ツール→マクロ→Visual Basic Editor→挿入→標準モジュール」で出たコード画面に上のプログラムを貼り付け、Excelシート上で「=LambertW()」で呼び出せば計算できます。この関数を使えば、元の方程式の解は、= exp(LambertW(A*exp(B))-B)で計算できます。
No.2
- 回答日時:
inaraです。
(解法1)
xがlnの中にあるのでx>0を考えて、x = exp(t-B)とおきます(-Bをつけているのがミソ)。
すると、与式は
A = x*ln(x) - B*x = exp(t-B)*(t-B) + B*exp(t-B) = t*exp(t-B)
となります。始めに x=exp(t-B) としたのは、 B*exp(t-B) の項を消すためです。計算を続けると、
= t*exp(t)*exp(-B) → A*exp(B) = t*exp(t)
となりますから、W関数を使うと、t = W{A*exp(B)}
したがって、x = exp(t-B) = exp[W{A*exp(B)} - B] --- (1)
(解法2)
これはストレートな方法です。
A = x*ln(x) + B*x の両辺を x で割ると
A/x = ln(x) + B = ln{x*exp(B)} → x*exp(B) = exp(A/x) → x = exp(A/x)*exp(-B)
ここまではkitakazetotaiyouさんと同じですが、その後が計算違いです。
両辺にA*exp(B)/xをかけると、A*exp(B) = A/x* exp(A/x)
W関数を使うと、A/x = W{A*exp(B)} → x = A/[W{A*exp(B)}] --- (2)
(1)と(2)は形が違いますが、私はW関数の専門家でないので、(1)=(2)が成り立つのかよく分かりません。
No.1
- 回答日時:
初等関数では解けませんが、解は x = exp(LambertW(A*exp(B))-B) です。
LambertW()は "The Lambert W function" といって、次の方程式の解です。
LambertW(x) * exp(LambertW(x)) = x
数値解を求めるには、Excelのソルバーを使ったほうが良いと思います。
ありがとうございます。
教えていただいたとおりランベルトのW関数で与式を変形したところ、
inara様の解と違う式が出てきました。
どのような変形をしたらなるのでしょうか。
途中計算を教えていただけませんか。
また、W関数の中はどう計算すればいいのですか?
wikiペディアをにある練習問題を見ると
2^t=5t
をW関数で示すと
t=W{-ln(2)/5}/{-ln(2)}
とあり、W{-ln(2)/5}の計算値が分かりません。
計算方法を教えていただけませんか。
すいませんが上の2点を教えていただけないでしょうか。
よろしくお願いします。
______________________________
以下に自分の式変形を示します。
A=xln(x)+xB
両辺をxで割って
A/x=ln(x)+B
移項して
ln(x)=A/x-B
lnをexpであらわすと
x=exp(A/x-B)
expを分けると
x=exp(A/x)exp(-B)
両辺をexp(A/x)で割ると
xexp(x/A)=exp(-B)
両辺をAで割ると
(x/A)exp(x/A)=(1/A)exp(-B)
W関数を用いると
x/A=W{(1/A)exp(-B)}
両辺にAをかけて
x=(A)W{(1/A)exp(-B)}
となりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
√-9の答えについて教えてくだ...
-
よく解けない漸化式の問題で絶...
-
外イキはなぜ1回しか出来ないの...
-
数学2の問題で、x2024乗をx2乗+...
-
X2乗+Xの解き方について
-
この問題を教えてください。な...
-
1kgの10%は?
-
7で割れば5余り、5で割れば3余...
-
連続する番号を引く確率
-
数学の問題です。 ある連続する...
-
隔年と毎年の違いを教えてくだ...
-
離散数学 順序関係のハッセ図
-
√x log(x+2)の不定積分は部分積...
-
場合の数 a1<a2<a3・・・・ b...
-
自動紙送り装置
-
【数学】4g の食塩水 300g と 9...
-
絶対値つき関数の質問
-
URL中で「サポートで確認中」に...
-
f(x,y) =
-
マクローリン展開
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報