[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

70. minpack


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

70.1 Introduction to minpack

Minpackは Netlibで入手可能な Fortranライブラリ MINPACKの (f2clを介した) Common Lisp翻訳です。

Categories:  Numerical methods · Share packages · Package minpack · Package minpack


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

70.2 Functions and Variables for minpack

関数: minpack_lsquares (flist, varlist, guess [, tolerance, jacobian])

リスト flistの関数の平方の和を最小化する点を計算します。 変数はリスト varlistの中にあります。 最適点の初期推測は guessで供給されなければいけません。

オプションのキーワード引数 tolerancejacobianはアルゴリズム上のある制御を提供します。 toleranceは平方の和に関する望みの見積もり相対誤差です。 jacobianは Jacobianを指定するのに使うことができます。 もし jacobianが与えられず(デフォルトの) true なら、 Jacobianを flistから計算します。 もし jacobianfalseなら数値近似を使います。

minpack_lsquaresはリストを返します。 一番目の項目は見積られた解です; 二番目は平方の和で,三番目はアルゴリズムの成功を示します。 可能な値は以下の通りです。

0

不適切な入力パラメータ。

1

アルゴリズムが平方の和の相対誤差がせいぜい toleranceと見積もります。

2

アルゴリズムがxと解の相対誤差がせいぜい toleranceと見積もります。

3

info = 1と info = 2の条件が両方とも成立します。

4

fvec が機械精度の jacobianの列に直交的です。

5

iflag = 1が 100*(n+1)に至る fcnへのコールの回数

6

tolが小さすぎます。平方の和の更なる減少は不可能です。

7

tolが小さすぎます。近似解 xの更なる改善は不可能です。

 
/* Problem 6: Powell singular function */
(%i1) powell(x1,x2,x3,x4) :=
         [x1+10*x2, sqrt(5)*(x3-x4), (x2-2*x3)^2,
              sqrt(10)*(x1-x4)^2]$
(%i2) minpack_lsquares(powell(x1,x2,x3,x4), [x1,x2,x3,x4],
                       [3,-1,0,1]);
(%o2) [[1.652117596168394e-17, - 1.652117596168393e-18,
        2.643388153869468e-18, 2.643388153869468e-18],
       6.109327859207777e-34, 4]
 
/* Same problem but use numerical approximation to Jacobian */
(%i3) minpack_lsquares(powell(x1,x2,x3,x4), [x1,x2,x3,x4],
                       [3,-1,0,1], jacobian = false);
(%o3) [[5.060282149485331e-11, - 5.060282149491206e-12,
        2.179447843547218e-11, 2.179447843547218e-11],
       3.534491794847031e-21, 5]

関数: minpack_solve (flist, varlist, guess [, tolerance, jacobian])

n個の未知数に関する n個の方程式系を解きます。 n個の方程式形はリスト flistで与えられます。 解の初期推測は guessの中で提供されます。

オプションのキーワード引数 tolerancejacobianはアルゴリズム上のある制御を提供します。 toleranceは平方の和に関して望まれる見積り相対誤差です。 jacobianは Jacobianを指定するのに使うことができます。 もし jacobianを与えないか、(デフォルトの) trueなら、 Jacobianを flistから計算します。 もし jacobianfalseなら数値近似を使います。

minpack_solveはリストを返します。 一番目の項目は見積られた解です; 二番目は平方の和で,三番目はアルゴリズムの成功を示します。 可能な値は以下の通りです。

0

不適切な入力パラメータ。

1

アルゴリズムが、解の相対誤差がせいぜい toleranceと見積もります。

2

iflag = 1で fcnをコールした回数が 100*(n+1)に達しました。

3

tolが小さ過ぎます。平方和の中で換算がこれ以上不可能です。

4

繰り返しがよい進捗を産んでいません。


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by 市川雄二 on June, 5 2017 using texi2html 1.76.