[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

67. minpack


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

67.1 Introduction to minpack

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

·

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


[ < ] [ > ]   [ << ] [] [ >> ]         [冒頭] [目次] [見出し] [ ? ]

67.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

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


[ << ] [ >> ]           [冒頭] [目次] [見出し] [ ? ]

この文書は市川 雄二によって2014年9月月15日texi2html 1.82を用いて生成されました。