|
1.6.3 方程式の数値解法

方程式の数値解法
NSolveを使い整方程式の持つすべての根の近似値を求める.
In[1]:= NSolve[ x^5 + x + 1 == 0, x ]
Out[1]= 
NSolveは,連立方程式の数値解法にも使える.
In[2]:= NSolve[{x + y == 2, x - 3 y + z == 3, x - y + z == 0}, {x, y, z}]
Out[2]= 
方程式が線形関数や多項式からなるとき, NSolveを使うことで,存在するすべての解に対する数値解析的な近似値を得ることが可能である.しかし,より複雑な関数,例えば超越関数を含む方程式においては,一般に体系化された手法がないことから,数値解析でも解を求めることができない.そのような場合でも, FindRootを使い数値解を探索することは可能である.FindRootを使うには,探索の初期値を指定する必要がある.
FindRootを使い超越関数方程式の数値解を探す.初期値は とした.
In[3]:= FindRoot[ 3 Cos[x] == Log[x], {x, 1} ]
Out[3]= 
この方程式は複数の解を持つ.違った の点から始めると, FindRootは異なった解を返してくる.
In[4]:= FindRoot[ 3 Cos[x] == Log[x], {x, 10} ]
Out[4]= 
連立方程式の解を探すことも可能である.この例の解は複素数からなる.
In[5]:= FindRoot[{x==Log[y], y==Log[x]}, {{x, I}, {y, 2}}]
Out[5]= 
|