hmatrix-gsl-0.16.0.1: Numerical computation

Copyright(c) Alberto Ruiz 2009
LicenseGPL
MaintainerAlberto Ruiz
Stabilityprovisional
Safe HaskellNone
LanguageHaskell98

Numeric.GSL.Root

Description

Multidimensional root finding.

http://www.gnu.org/software/gsl/manual/html_node/Multidimensional-Root_002dFinding.html

The example in the GSL manual:

>>> let rosenbrock a b [x,y] = [ a*(1-x), b*(y-x^2) ]
>>> let (sol,path) = root Hybrids 1E-7 30 (rosenbrock 1 10) [-10,-5]
>>> sol
[1.0,1.0]
>>> disp 3 path
11x5
 1.000  -10.000  -5.000  11.000  -1050.000
 2.000   -3.976  24.827   4.976     90.203
 3.000   -3.976  24.827   4.976     90.203
 4.000   -3.976  24.827   4.976     90.203
 5.000   -1.274  -5.680   2.274    -73.018
 6.000   -1.274  -5.680   2.274    -73.018
 7.000    0.249   0.298   0.751      2.359
 8.000    0.249   0.298   0.751      2.359
 9.000    1.000   0.878  -0.000     -1.218
10.000    1.000   0.989  -0.000     -0.108
11.000    1.000   1.000   0.000      0.000

Synopsis

Documentation

root Source

Arguments

:: RootMethod 
-> Double

maximum residual

-> Int

maximum number of iterations allowed

-> ([Double] -> [Double])

function to minimize

-> [Double]

starting point

-> ([Double], Matrix Double)

solution vector and optimization path

Nonlinear multidimensional root finding using algorithms that do not require any derivative information to be supplied by the user. Any derivatives needed are approximated by finite differences.

rootJ Source

Arguments

:: RootMethodJ 
-> Double

maximum residual

-> Int

maximum number of iterations allowed

-> ([Double] -> [Double])

function to minimize

-> ([Double] -> [[Double]])

Jacobian

-> [Double]

starting point

-> ([Double], Matrix Double)

solution vector and optimization path

Nonlinear multidimensional root finding using both the function and its derivatives.