- 締切済み
式の計算方法を教えてください
ずいぶん昔に勉強したかもしれませんが、すっかりわかりません。 以下の式でxを求めたいのです。 どなたか教えてください。 宜しくお願いします。 Y=(B(D+x)^e)/(A(C+x)^f)
- みんなの回答 (4)
- 専門家の回答
みんなの回答
>...... エクセルを使って少しずつ理解していきたいと思います。 #3 の勘定は間違ってました。あのまま追試されると混乱するので、参考までにやり直し。 ------------------------------------------------------ > W = 1.6 = {(0.4+x)^0.2}/{(0.2+x)^0.3} …(1) 強引に e=f=0.3 と仮想して解き、初期近似 x0 とする。 1.6 = {(0.4+x0)/(0.2+x0)}^0.3 x0 = -0.147239 これを式(1)に代入して、 W0 = 1.835900 両辺微分で、 dW0/W0 = [0.2/(0.4+x0) - 0.3/(0.2+x0)]*dx0 dx0 = -(dW0/W0)/[0.2/(0.4+x0) - 0.3/(0.2+x0)] = 0.026251 これから補正解を求める。 x1 = x0 + dx0 = -0.120989 W1 = 1.658889 以下、繰り返し。 EXCEL によると、この Newton 法の x5 = -0.108161 にて dx5 = 0 に収束。
勝手な一例を計算してみると、割と単純。 Y=(B(D+x)^e)/(A(C+x)^f) y = 1 A = 800 B = 500 W = 800/500 = 1.6 C = 0.2 D = 0.4 e = 0.2 f = 0.3 原式を変形して、 W = 1.6 = {(0.4+x)^0.2}/{(0.2+x)^0.3} (1) 強引に e=f=0.2 と仮想して解き、初期近似とする。 1.6 = {(0.4+x0)/(0.2+x0)}^0.2 x0 = -0.051854 これを式(1)に代入すると、 W0 = 1.435969 両辺微分で、 dW0/W0 = [0.2/(0.4+x0) - 0.3/(0.2+x0)]*dx0 dx0 = -(dW0/W0)/[0.2/(0.4+x0) - 0.3/(0.2+x0)] = -0.078749 これから補正解を求める。 x1 = x0 + dx0 = -0.130603 W1 = 1.712679 以下、繰り返し。 EXCEL によると、この Newton 法の x6 -0.108161 で dx6 = 0 に収束。
>以下の式でxを求めたい ......... >Y=(B(D+x)^e)/(A(C+x)^f) 一般的には、Newton 法などにより逐次求解するしかなさそうな形です。 たとえば、e, f ≠ -1 とでもしましょう。 原式を変形して、 W = {(D+x)^e}/{(C+x)^f} 両辺微分で、 dW/W = [e/(D+x) - f/(C+x)]*dx これを使って、一次微分の Newton 法。
お礼
ありがとうございます。 この計算は、やはり私には難しい内容でした。 効率的に(少ない計算回数で)解を探すための方法がNewton法であることを調べました。エクセルへの実装法なども記載があるようなので 原理理解を進めた上でやってみたいと思います。
- banakona
- ベストアンサー率45% (222/489)
これは難しいですね。 まず、eかfの少なくとも一方が「自然数または0」でない場合はお手上げです。AやDなどが具体的な値なら、エクセルのソルバーなどで解くことになるでしょう。 次に、eもfも「自然数または0」の場合ですが、分母をはらって Y(A(C+x)^f)=(B(D+x)^e) ・・・* となるのでxのn次方程式になります。 e≠fの場合は、e,fのどちらか大きい方を次数とするn次方程式(n=max(e,f))になります。しかし、nが5より大きければ代数的に解くことができないので、やはりエクセルのソルバーなどのお世話になることになります。 e=fの場合は、たとえe>4であっても、運よく高次の項が消えて4次以下の方程式になれば代数的に解けますが、そうでなければエクセルのソルバーなどで解くことになります。 たとえ、*が3次か4次の方程式になったとしても、その解の公式は結構むずかしいので、私なら最初からエクセルで解きます。 最後になりましたが、*が解けたら、A(C+x)^f=0となる解を除くのをお忘れなく。
補足
ありがとうございます。 私には難しいものだったんですね。 実際に計算したい数値は、 Y:0.7~1.5ぐらい AやBは、500~900ぐらい CやDは、0.1~0.5ぐらい eやfは、0.1~0.3ぐらい です。 ソルバーを用いれば良いとの理解しましたが、 その辺がよくわからないので調べてみます。
お礼
親切に有難うございます。 当方は基礎知識が薄いので、頂いた内容を見ながら エクセルを使って少しずつ理解していきたいと思います。