general links
See also GSLReplacement
http://www.numerical-recipes.com/recipe-list.html -- NR method names descriptions
http://kutsyy.com/java/javadoc/index.html -- Java libraries for several needed functions
http://paine.wiau.man.ac.uk/pub/doc_vxl/core/vnl/html/index.html -- vnl : Numerics Library
files modified/to-be-modified
utils/eigen.c
- will be removed
utils/image.c
EigenSystem will be replaced
utils/utils.c
- ran1 will be replaced
utils/mrimorph.c
- powell
- dfpmin
utils/mrinorm.c
- spline will be replaced
- splint will be replaced
utils/matrix.c
- lu_matrix_inverse
MatrixDeterminant will be replaced with OpenMatrixDeterminant
- svdcmp
histo_register_block/histo_register_block.c
- powell
mri_hires_register/mri_hires_register.c
- powell
mri_hires_register/mri_linear_align_binary.c
- powell
mri_hires_register/mri_linear_align.c
- powell
specific functions
powell.c
- powell's direction set method, or powell minimizer
- itkPowellOptimizer
- vnl_powell
f1dim.c
- function used by linmin [10.5]
linmin.c
- line minimization
- nothing apparent in ITK, vnl, GSL
- check koders.com
- used by powell
ludcmp.c
- LU decomposition
- vnl_rnpoly_solve has method
lubksb.c
- LU back substitution
- vnl_rnpoly_solve has method
brent.c
- brent's method for min of function
- gsl_min_fminimizer_brent
- ITK/vnl: Utilities/vxl/core/vnl/algo/vnl_brent.cxx
- used by linmin
mnbrak.c
- bracket the minimum of a function
no apparent replacements. others have same conclusion: http://www.blackwellpublishing.com/rss/Readmefiles/zucker.htm
- check koders.com
- used by linmin
svdcmp.c
- singular value decomposition of a matrix
LAPACK seems to have it (http://www.netlib.org/lapack/lug/node53.html), but not ATLAS
- check koders.com
ran1.c
- random deviate, minimal standard plus shuffle [7.1]
used in
- utils/utils.c from within randomNumber()
- not supposed to be such a great random num generator. how important is using the same algorithm?
- exact same: gsl_rng_ran1, but no longer exists. now provides gsl_rng_minstd
full gsl doc for this: http://www.lsw.uni-heidelberg.de/manuals/gsl-ref-html/gsl-ref_16.html
- vnl_random
- itkMersenneTwisterRandomVariateGenerator
tred2.c
- householder reduction of a real, symmetric matrix
itkSymmetricEigenAnalysis has ReduceToTridiagonalMatrixAndGetTransformation, adapted from netlib/tred2.c
- also: Utilities/vxl/v3p/netlib/tred2.c
tqli.c
- eigensolution of a symmetric tridiagonal matrix
- tqli vs. tql1 -- the same I think
- itkSymmetricEigenAnalysis has ComputeEigenValuesUsingQL, adapted from netlib/tql1.c
- also: Utilities/vxl/v3p/netlib/tql1.c
splint.c
- cubic spline interpolation [3.3]
- Image Registration Toolkit appears to have closed source implementation. Maybe they'll share.
SPLINE library: http://www.scs.fsu.edu/~burkardt/cpp_src/spline/spline.html
spline.c
- construct a cubic spline [3.3]
pythag.c
calculate (a2+b2)^{1/2} without overflow [2.6]
- ITK: Utilities/vxl/v3p/netlib/pythag.c
- used by tqli
dfpmin.c
- minimize in N-dimensions by variable metric method
- check koders.com
lnsrch.c
- search along a line, used by dfpmin
- check koders.com
betai.c
- incomplete beta function
gammp.c
- incomplete gamma function
nrutil.c
- vector, matrix, free_vector, free_matrix