• ベストアンサー

少し複雑な方程式の解

二次関数と対数関数の和の方程式を解くことは、できるのでしょうか? 例えば、ax^2 + bx + lnx + c = 0 (a, b, cは定数。lnxはxの自然対数。)のような方程式です。 教えて頂ければ幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • info22_
  • ベストアンサー率67% (2650/3922)
回答No.2

ax^2 + bx + lnx + c = 0 (a, b, cは定数) この実数解はa,b,cの値によって,0個、1個、2個、3個の場合があります。 解の個数やa,b,cの値により場合分けして扱う必要があります。 それぞれの場合によって解が変わってきます。しかし、2次方程式の解のような公式は存在しませんし、実数解だけでも、場合によって解が存在しなかったり、1個~3個と変化します。 それぞれの場合(a,b,cの値を与えた場合)について、一般的には解析的に解くことはできないけれど、数値計算でなら実数解を求めることができます。 例えば、  0.5x^2-2.5x+2+ln(x)=0 この方程式は、ニュートン法を使えば実数解が次の3個存在することがわかります。  x≒0.239120298683575357, x=1, x≒2.8731091641039842584 a,b,cの値を与えて、参考URLで  「solve(x^2-5x+4+2*log(x)=0,x)」などと入力すれば解を求めることができます。 a,b,cを色々与えて解いてみるといいでしょう。

参考URL:
http://www.wolframalpha.com/
immunoassay
質問者

お礼

ご回答ありがとうございました。ニュートン法の解法例と参考URLの情報もありがとうございました。 化学反応のシミュレーションをやっているのですが、a, b, cは決められますので、従来はExcelのSolver機能を使って計算値が0になる解を一つづつ求めていましたが、上記URLでは複数の解が一度に得られるので便利ですね。

その他の回答 (1)

回答No.1

多項式中に指数や対数、三角関数が含まれている方程式は超越方程式と呼ばれ、通常の代数的な操作で解を得ることはできません。 このような方程式の解を得るときは、二分法やニュートン法といった数値計算を使って解を得ることが一般的です。

immunoassay
質問者

お礼

ご回答ありがとうございました。超越方程式と言う言葉を初めて聞きました。二分法やニュートン法を試してみたいと思います。

関連するQ&A