Next: , Previous:   [Contents][Index]

68 mnewton


68.1 Introduction to mnewton

mnewtonは 1変数または多変数の非線形方程式を解くための Newton法の実装です。


68.2 Functions and Variables for mnewton

オプション変数: newtonepsilon

デフォルト値: 10.0^(-fpprec/2)

mnewton関数が解に向かって収束した時を決定する精度。 もしnewtonepsilonが多倍長浮動小数点なら、mnewton計算は多倍長浮動小数点でされます。 mnewtonも参照してください。

オプション変数: newtonmaxiter

デフォルト値: 50

もし収束しないか収束が遅すぎるなら mnewton関数を止める繰り返しの最大数。

mnewtonも参照してください。

関数: mnewton (FuncList,VarList,GuessList)

Newton法を使った複数非線形関数の解。 FuncListは解くべき関数のリスト、 VarListは変数名のリスト、 GuessListは初期近似のリストです。

解は solve()が返すのと同じフォーマットで返されます。 もし解が見つからないなら、[]が返されます。

この関数は グローバル変数newtonepsilonnewtonmaxiterによって制御されます。

(%i1) load("mnewton")$

(%i2) mnewton([x1+3*log(x1)-x2^2, 2*x1^2-x1*x2-5*x1+1],
              [x1, x2], [5, 5]);
(%o2) [[x1 = 3.756834008012769, x2 = 2.779849592817897]]
(%i3) mnewton([2*a^a-5],[a],[1]);
(%o3)             [[a = 1.70927556786144]]
(%i4) mnewton([2*3^u-v/u-5, u+2^v-4], [u, v], [2, 2]);
(%o4) [[u = 1.066618389595407, v = 1.552564766841786]]

変数newtonepsilonは近似の精度を制御します。 それはまた、計算が浮動小数点で実行されるか、多倍長浮動小数点で実行されるかを制御します。

(%i1) (load("mnewton"), fpprec : 25, newtonepsilon : bfloat(10^(-fpprec+5)))$

(%i2) mnewton([2*3^u-v/u-5, u+2^v-4], [u, v], [2, 2]);
(%o2) [[u = 1.066618389595406772591173b0, v = 1.552564766841786450100418b0]]

この関数を使うためには、最初にload("mnewton")を書いてください。 newtonepsilonnewtonmaxiterも参照してください。


Next: , Previous:   [Contents][Index]