rb-gsl 1.16.0.5 → 1.16.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/rb-gsl.gemspec +5 -10
- metadata +10 -713
- data/.gitignore +0 -12
- data/.travis.yml +0 -24
- data/AUTHORS +0 -12
- data/COPYING +0 -341
- data/ChangeLog +0 -621
- data/Gemfile +0 -4
- data/README.md +0 -77
- data/Rakefile +0 -20
- data/THANKS +0 -17
- data/examples/alf/alf.gp +0 -15
- data/examples/alf/alf.rb +0 -32
- data/examples/blas/blas.rb +0 -13
- data/examples/blas/dnrm2.rb +0 -16
- data/examples/blas/level1.rb +0 -81
- data/examples/blas/level2.rb +0 -11
- data/examples/blas/level3.rb +0 -12
- data/examples/bspline.rb +0 -57
- data/examples/cdf.rb +0 -16
- data/examples/cheb.rb +0 -21
- data/examples/combination.rb +0 -23
- data/examples/complex/RC-lpf.rb +0 -47
- data/examples/complex/add.rb +0 -36
- data/examples/complex/coerce.rb +0 -14
- data/examples/complex/complex.rb +0 -25
- data/examples/complex/fpmi.rb +0 -70
- data/examples/complex/functions.rb +0 -77
- data/examples/complex/michelson.rb +0 -36
- data/examples/complex/mul.rb +0 -28
- data/examples/complex/oscillator.rb +0 -17
- data/examples/complex/set.rb +0 -37
- data/examples/const/physconst.rb +0 -151
- data/examples/const/travel.rb +0 -45
- data/examples/deriv/demo.rb +0 -13
- data/examples/deriv/deriv.rb +0 -36
- data/examples/deriv/diff.rb +0 -35
- data/examples/dht.rb +0 -42
- data/examples/dirac.rb +0 -56
- data/examples/eigen/eigen.rb +0 -34
- data/examples/eigen/herm.rb +0 -22
- data/examples/eigen/narray.rb +0 -9
- data/examples/eigen/nonsymm.rb +0 -37
- data/examples/eigen/nonsymmv.rb +0 -43
- data/examples/eigen/qhoscillator.gp +0 -35
- data/examples/eigen/qhoscillator.rb +0 -90
- data/examples/eigen/vander.rb +0 -41
- data/examples/fft/fft.rb +0 -17
- data/examples/fft/fft2.rb +0 -17
- data/examples/fft/forward.rb +0 -25
- data/examples/fft/forward2.rb +0 -26
- data/examples/fft/radix2.rb +0 -18
- data/examples/fft/real-halfcomplex.rb +0 -33
- data/examples/fft/real-halfcomplex2.rb +0 -30
- data/examples/fft/realradix2.rb +0 -19
- data/examples/fft/sunspot.dat +0 -256
- data/examples/fft/sunspot.rb +0 -16
- data/examples/fit/expdata.dat +0 -20
- data/examples/fit/expfit.rb +0 -31
- data/examples/fit/gaussfit.rb +0 -29
- data/examples/fit/gaussian_2peaks.rb +0 -34
- data/examples/fit/hillfit.rb +0 -40
- data/examples/fit/lognormal.rb +0 -26
- data/examples/fit/lorentzfit.rb +0 -22
- data/examples/fit/multifit.rb +0 -72
- data/examples/fit/ndlinear.rb +0 -133
- data/examples/fit/nonlinearfit.rb +0 -89
- data/examples/fit/plot.gp +0 -36
- data/examples/fit/polyfit.rb +0 -9
- data/examples/fit/powerfit.rb +0 -21
- data/examples/fit/sigmoidfit.rb +0 -40
- data/examples/fit/sinfit.rb +0 -22
- data/examples/fit/wlinear.rb +0 -46
- data/examples/fresnel.rb +0 -11
- data/examples/function/function.rb +0 -36
- data/examples/function/log.rb +0 -7
- data/examples/function/min.rb +0 -33
- data/examples/function/sin.rb +0 -10
- data/examples/function/synchrotron.rb +0 -18
- data/examples/gallery/butterfly.rb +0 -7
- data/examples/gallery/cayley.rb +0 -12
- data/examples/gallery/cornu.rb +0 -23
- data/examples/gallery/eight.rb +0 -11
- data/examples/gallery/koch.rb +0 -40
- data/examples/gallery/lemniscate.rb +0 -11
- data/examples/gallery/polar.rb +0 -11
- data/examples/gallery/rgplot/cossin.rb +0 -35
- data/examples/gallery/rgplot/rgplot.replaced +0 -0
- data/examples/gallery/rgplot/roesller.rb +0 -55
- data/examples/gallery/roesller.rb +0 -39
- data/examples/gallery/scarabaeus.rb +0 -14
- data/examples/histogram/cauchy.rb +0 -27
- data/examples/histogram/cauchy.sh +0 -2
- data/examples/histogram/exponential.rb +0 -19
- data/examples/histogram/gauss.rb +0 -16
- data/examples/histogram/gsl-histogram.rb +0 -40
- data/examples/histogram/histo2d.rb +0 -31
- data/examples/histogram/histo3d.rb +0 -34
- data/examples/histogram/histogram-pdf.rb +0 -27
- data/examples/histogram/histogram.rb +0 -26
- data/examples/histogram/integral.rb +0 -28
- data/examples/histogram/poisson.rb +0 -27
- data/examples/histogram/power.rb +0 -25
- data/examples/histogram/rebin.rb +0 -17
- data/examples/histogram/smp.dat +0 -5
- data/examples/histogram/xexp.rb +0 -21
- data/examples/integration/ahmed.rb +0 -21
- data/examples/integration/cosmology.rb +0 -75
- data/examples/integration/friedmann.gp +0 -16
- data/examples/integration/friedmann.rb +0 -35
- data/examples/integration/gamma-zeta.rb +0 -35
- data/examples/integration/integration.rb +0 -22
- data/examples/integration/qag.rb +0 -8
- data/examples/integration/qag2.rb +0 -14
- data/examples/integration/qag3.rb +0 -8
- data/examples/integration/qagi.rb +0 -28
- data/examples/integration/qagi2.rb +0 -49
- data/examples/integration/qagiu.rb +0 -29
- data/examples/integration/qagp.rb +0 -20
- data/examples/integration/qags.rb +0 -14
- data/examples/integration/qawc.rb +0 -18
- data/examples/integration/qawf.rb +0 -41
- data/examples/integration/qawo.rb +0 -29
- data/examples/integration/qaws.rb +0 -30
- data/examples/integration/qng.rb +0 -17
- data/examples/interp/demo.gp +0 -20
- data/examples/interp/demo.rb +0 -45
- data/examples/interp/interp.rb +0 -37
- data/examples/interp/points +0 -10
- data/examples/interp/spline.rb +0 -20
- data/examples/jacobi/deriv.rb +0 -40
- data/examples/jacobi/integrate.rb +0 -34
- data/examples/jacobi/interp.rb +0 -43
- data/examples/jacobi/jacobi.rb +0 -11
- data/examples/linalg/HH.rb +0 -15
- data/examples/linalg/HH_narray.rb +0 -13
- data/examples/linalg/LQ_solve.rb +0 -73
- data/examples/linalg/LU.rb +0 -84
- data/examples/linalg/LU2.rb +0 -31
- data/examples/linalg/LU_narray.rb +0 -24
- data/examples/linalg/PTLQ.rb +0 -47
- data/examples/linalg/QR.rb +0 -18
- data/examples/linalg/QRPT.rb +0 -47
- data/examples/linalg/QR_solve.rb +0 -78
- data/examples/linalg/QR_solve_narray.rb +0 -13
- data/examples/linalg/SV.rb +0 -16
- data/examples/linalg/SV_narray.rb +0 -12
- data/examples/linalg/SV_solve.rb +0 -49
- data/examples/linalg/chol.rb +0 -29
- data/examples/linalg/chol_narray.rb +0 -15
- data/examples/linalg/complex.rb +0 -57
- data/examples/linalg/invert_narray.rb +0 -10
- data/examples/math/const.rb +0 -67
- data/examples/math/elementary.rb +0 -35
- data/examples/math/functions.rb +0 -41
- data/examples/math/inf_nan.rb +0 -34
- data/examples/math/minmax.rb +0 -22
- data/examples/math/power.rb +0 -18
- data/examples/math/test.rb +0 -31
- data/examples/matrix/a.dat +0 -0
- data/examples/matrix/add.rb +0 -45
- data/examples/matrix/b.dat +0 -4
- data/examples/matrix/cat.rb +0 -31
- data/examples/matrix/colvectors.rb +0 -24
- data/examples/matrix/complex.rb +0 -41
- data/examples/matrix/det.rb +0 -29
- data/examples/matrix/diagonal.rb +0 -23
- data/examples/matrix/get_all.rb +0 -159
- data/examples/matrix/hilbert.rb +0 -31
- data/examples/matrix/iterator.rb +0 -19
- data/examples/matrix/matrix.rb +0 -57
- data/examples/matrix/minmax.rb +0 -53
- data/examples/matrix/mul.rb +0 -39
- data/examples/matrix/rand.rb +0 -20
- data/examples/matrix/read.rb +0 -29
- data/examples/matrix/rowcol.rb +0 -47
- data/examples/matrix/set.rb +0 -41
- data/examples/matrix/set_all.rb +0 -100
- data/examples/matrix/view.rb +0 -32
- data/examples/matrix/view_all.rb +0 -148
- data/examples/matrix/write.rb +0 -23
- data/examples/min.rb +0 -29
- data/examples/monte/miser.rb +0 -47
- data/examples/monte/monte.rb +0 -47
- data/examples/monte/plain.rb +0 -47
- data/examples/monte/vegas.rb +0 -46
- data/examples/multimin/bundle.rb +0 -66
- data/examples/multimin/cqp.rb +0 -109
- data/examples/multimin/fdfminimizer.rb +0 -40
- data/examples/multimin/fminimizer.rb +0 -41
- data/examples/multiroot/demo.rb +0 -36
- data/examples/multiroot/fdfsolver.rb +0 -50
- data/examples/multiroot/fsolver.rb +0 -33
- data/examples/multiroot/fsolver2.rb +0 -32
- data/examples/multiroot/fsolver3.rb +0 -26
- data/examples/narray/histogram.rb +0 -14
- data/examples/narray/mandel.rb +0 -27
- data/examples/narray/narray.rb +0 -28
- data/examples/narray/narray2.rb +0 -44
- data/examples/narray/sf.rb +0 -26
- data/examples/ntuple/create.rb +0 -17
- data/examples/ntuple/project.rb +0 -31
- data/examples/odeiv/binarysystem.gp +0 -23
- data/examples/odeiv/binarysystem.rb +0 -104
- data/examples/odeiv/demo.gp +0 -24
- data/examples/odeiv/demo.rb +0 -69
- data/examples/odeiv/demo2.gp +0 -26
- data/examples/odeiv/duffing.rb +0 -45
- data/examples/odeiv/frei1.rb +0 -109
- data/examples/odeiv/frei2.rb +0 -76
- data/examples/odeiv/legendre.rb +0 -52
- data/examples/odeiv/odeiv.rb +0 -32
- data/examples/odeiv/odeiv2.rb +0 -45
- data/examples/odeiv/oscillator.rb +0 -42
- data/examples/odeiv/sedov.rb +0 -97
- data/examples/odeiv/whitedwarf.gp +0 -40
- data/examples/odeiv/whitedwarf.rb +0 -158
- data/examples/ool/conmin.rb +0 -100
- data/examples/ool/gencan.rb +0 -99
- data/examples/ool/pgrad.rb +0 -100
- data/examples/ool/spg.rb +0 -100
- data/examples/pdf/bernoulli.rb +0 -5
- data/examples/pdf/beta.rb +0 -7
- data/examples/pdf/binomiral.rb +0 -10
- data/examples/pdf/cauchy.rb +0 -6
- data/examples/pdf/chisq.rb +0 -8
- data/examples/pdf/exponential.rb +0 -7
- data/examples/pdf/exppow.rb +0 -6
- data/examples/pdf/fdist.rb +0 -7
- data/examples/pdf/flat.rb +0 -7
- data/examples/pdf/gamma.rb +0 -8
- data/examples/pdf/gauss-tail.rb +0 -5
- data/examples/pdf/gauss.rb +0 -6
- data/examples/pdf/geometric.rb +0 -5
- data/examples/pdf/gumbel.rb +0 -6
- data/examples/pdf/hypergeometric.rb +0 -11
- data/examples/pdf/landau.rb +0 -5
- data/examples/pdf/laplace.rb +0 -7
- data/examples/pdf/logarithmic.rb +0 -5
- data/examples/pdf/logistic.rb +0 -6
- data/examples/pdf/lognormal.rb +0 -6
- data/examples/pdf/neg-binomiral.rb +0 -10
- data/examples/pdf/pareto.rb +0 -7
- data/examples/pdf/pascal.rb +0 -10
- data/examples/pdf/poisson.rb +0 -5
- data/examples/pdf/rayleigh-tail.rb +0 -6
- data/examples/pdf/rayleigh.rb +0 -6
- data/examples/pdf/tdist.rb +0 -6
- data/examples/pdf/weibull.rb +0 -8
- data/examples/permutation/ex1.rb +0 -22
- data/examples/permutation/permutation.rb +0 -16
- data/examples/poly/bell.rb +0 -6
- data/examples/poly/bessel.rb +0 -6
- data/examples/poly/cheb.rb +0 -6
- data/examples/poly/cheb_II.rb +0 -6
- data/examples/poly/cubic.rb +0 -9
- data/examples/poly/demo.rb +0 -20
- data/examples/poly/eval.rb +0 -28
- data/examples/poly/eval_derivs.rb +0 -14
- data/examples/poly/fit.rb +0 -21
- data/examples/poly/hermite.rb +0 -6
- data/examples/poly/poly.rb +0 -13
- data/examples/poly/quadratic.rb +0 -25
- data/examples/random/diffusion.rb +0 -34
- data/examples/random/gaussian.rb +0 -9
- data/examples/random/generator.rb +0 -27
- data/examples/random/hdsobol.rb +0 -21
- data/examples/random/poisson.rb +0 -9
- data/examples/random/qrng.rb +0 -19
- data/examples/random/randomwalk.rb +0 -37
- data/examples/random/randomwalk2d.rb +0 -19
- data/examples/random/rayleigh.rb +0 -36
- data/examples/random/rng.rb +0 -33
- data/examples/random/rngextra.rb +0 -14
- data/examples/roots/bisection.rb +0 -25
- data/examples/roots/brent.rb +0 -43
- data/examples/roots/demo.rb +0 -30
- data/examples/roots/newton.rb +0 -46
- data/examples/roots/recombination.gp +0 -11
- data/examples/roots/recombination.rb +0 -61
- data/examples/roots/steffenson.rb +0 -48
- data/examples/sf/ShiChi.rb +0 -6
- data/examples/sf/SiCi.rb +0 -6
- data/examples/sf/airy_Ai.rb +0 -8
- data/examples/sf/airy_Bi.rb +0 -8
- data/examples/sf/bessel_IK.rb +0 -12
- data/examples/sf/bessel_JY.rb +0 -13
- data/examples/sf/beta_inc.rb +0 -9
- data/examples/sf/clausen.rb +0 -6
- data/examples/sf/dawson.rb +0 -5
- data/examples/sf/debye.rb +0 -9
- data/examples/sf/dilog.rb +0 -6
- data/examples/sf/ellint.rb +0 -6
- data/examples/sf/expint.rb +0 -8
- data/examples/sf/fermi.rb +0 -10
- data/examples/sf/gamma_inc_P.rb +0 -9
- data/examples/sf/gegenbauer.rb +0 -8
- data/examples/sf/hyperg.rb +0 -7
- data/examples/sf/laguerre.rb +0 -19
- data/examples/sf/lambertW.rb +0 -5
- data/examples/sf/legendre_P.rb +0 -10
- data/examples/sf/lngamma.rb +0 -5
- data/examples/sf/psi.rb +0 -54
- data/examples/sf/sphbessel.gp +0 -27
- data/examples/sf/sphbessel.rb +0 -30
- data/examples/sf/synchrotron.rb +0 -5
- data/examples/sf/transport.rb +0 -10
- data/examples/sf/zetam1.rb +0 -5
- data/examples/siman.rb +0 -44
- data/examples/sort/heapsort.rb +0 -23
- data/examples/sort/heapsort_vector_complex.rb +0 -21
- data/examples/sort/sort.rb +0 -23
- data/examples/sort/sort2.rb +0 -16
- data/examples/stats/mean.rb +0 -17
- data/examples/stats/statistics.rb +0 -18
- data/examples/stats/test.rb +0 -9
- data/examples/sum.rb +0 -34
- data/examples/tamu_anova.rb +0 -18
- data/examples/vector/a.dat +0 -0
- data/examples/vector/add.rb +0 -56
- data/examples/vector/b.dat +0 -4
- data/examples/vector/c.dat +0 -3
- data/examples/vector/collect.rb +0 -26
- data/examples/vector/compare.rb +0 -28
- data/examples/vector/complex.rb +0 -51
- data/examples/vector/complex_get_all.rb +0 -85
- data/examples/vector/complex_set_all.rb +0 -131
- data/examples/vector/complex_view_all.rb +0 -77
- data/examples/vector/connect.rb +0 -22
- data/examples/vector/decimate.rb +0 -38
- data/examples/vector/diff.rb +0 -31
- data/examples/vector/filescan.rb +0 -17
- data/examples/vector/floor.rb +0 -23
- data/examples/vector/get_all.rb +0 -82
- data/examples/vector/gnuplot.rb +0 -38
- data/examples/vector/graph.rb +0 -28
- data/examples/vector/histogram.rb +0 -22
- data/examples/vector/linspace.rb +0 -24
- data/examples/vector/log.rb +0 -17
- data/examples/vector/logic.rb +0 -33
- data/examples/vector/logspace.rb +0 -25
- data/examples/vector/minmax.rb +0 -47
- data/examples/vector/mul.rb +0 -49
- data/examples/vector/narray.rb +0 -46
- data/examples/vector/read.rb +0 -29
- data/examples/vector/set.rb +0 -35
- data/examples/vector/set_all.rb +0 -121
- data/examples/vector/smpv.dat +0 -15
- data/examples/vector/test.rb +0 -43
- data/examples/vector/test_gslblock.rb +0 -58
- data/examples/vector/vector.rb +0 -110
- data/examples/vector/view.rb +0 -35
- data/examples/vector/view_all.rb +0 -73
- data/examples/vector/where.rb +0 -29
- data/examples/vector/write.rb +0 -24
- data/examples/vector/zip.rb +0 -34
- data/examples/wavelet/ecg.dat +0 -256
- data/examples/wavelet/wavelet1.rb +0 -50
- data/ext/gsl_native/alf.c +0 -206
- data/ext/gsl_native/array.c +0 -553
- data/ext/gsl_native/array_complex.c +0 -245
- data/ext/gsl_native/blas.c +0 -28
- data/ext/gsl_native/blas1.c +0 -733
- data/ext/gsl_native/blas2.c +0 -1088
- data/ext/gsl_native/blas3.c +0 -880
- data/ext/gsl_native/block.c +0 -40
- data/ext/gsl_native/block_source.h +0 -885
- data/ext/gsl_native/bspline.c +0 -122
- data/ext/gsl_native/bundle.c +0 -3
- data/ext/gsl_native/cdf.c +0 -740
- data/ext/gsl_native/cheb.c +0 -531
- data/ext/gsl_native/combination.c +0 -275
- data/ext/gsl_native/common.c +0 -293
- data/ext/gsl_native/complex.c +0 -1002
- data/ext/gsl_native/const.c +0 -331
- data/ext/gsl_native/const_additional.c +0 -99
- data/ext/gsl_native/cqp.c +0 -283
- data/ext/gsl_native/deriv.c +0 -187
- data/ext/gsl_native/dht.c +0 -353
- data/ext/gsl_native/diff.c +0 -164
- data/ext/gsl_native/dirac.c +0 -388
- data/ext/gsl_native/eigen.c +0 -2322
- data/ext/gsl_native/error.c +0 -193
- data/ext/gsl_native/extconf.rb +0 -118
- data/ext/gsl_native/fft.c +0 -1095
- data/ext/gsl_native/fit.c +0 -204
- data/ext/gsl_native/fresnel.c +0 -312
- data/ext/gsl_native/function.c +0 -518
- data/ext/gsl_native/geometry.c +0 -139
- data/ext/gsl_native/graph.c +0 -1590
- data/ext/gsl_native/gsl.c +0 -259
- data/ext/gsl_native/gsl_narray.c +0 -794
- data/ext/gsl_native/histogram.c +0 -1964
- data/ext/gsl_native/histogram2d.c +0 -1042
- data/ext/gsl_native/histogram3d.c +0 -884
- data/ext/gsl_native/histogram3d_source.c +0 -749
- data/ext/gsl_native/histogram_find.c +0 -99
- data/ext/gsl_native/histogram_oper.c +0 -150
- data/ext/gsl_native/ieee.c +0 -88
- data/ext/gsl_native/include/rb_gsl.h +0 -136
- data/ext/gsl_native/include/rb_gsl_array.h +0 -214
- data/ext/gsl_native/include/rb_gsl_cheb.h +0 -19
- data/ext/gsl_native/include/rb_gsl_common.h +0 -348
- data/ext/gsl_native/include/rb_gsl_complex.h +0 -25
- data/ext/gsl_native/include/rb_gsl_const.h +0 -23
- data/ext/gsl_native/include/rb_gsl_dirac.h +0 -6
- data/ext/gsl_native/include/rb_gsl_eigen.h +0 -17
- data/ext/gsl_native/include/rb_gsl_fft.h +0 -49
- data/ext/gsl_native/include/rb_gsl_fit.h +0 -23
- data/ext/gsl_native/include/rb_gsl_function.h +0 -23
- data/ext/gsl_native/include/rb_gsl_graph.h +0 -68
- data/ext/gsl_native/include/rb_gsl_histogram.h +0 -63
- data/ext/gsl_native/include/rb_gsl_histogram3d.h +0 -97
- data/ext/gsl_native/include/rb_gsl_integration.h +0 -17
- data/ext/gsl_native/include/rb_gsl_interp.h +0 -41
- data/ext/gsl_native/include/rb_gsl_linalg.h +0 -21
- data/ext/gsl_native/include/rb_gsl_math.h +0 -20
- data/ext/gsl_native/include/rb_gsl_odeiv.h +0 -18
- data/ext/gsl_native/include/rb_gsl_poly.h +0 -67
- data/ext/gsl_native/include/rb_gsl_rational.h +0 -30
- data/ext/gsl_native/include/rb_gsl_rng.h +0 -20
- data/ext/gsl_native/include/rb_gsl_root.h +0 -22
- data/ext/gsl_native/include/rb_gsl_sf.h +0 -110
- data/ext/gsl_native/include/rb_gsl_statistics.h +0 -17
- data/ext/gsl_native/include/rb_gsl_tensor.h +0 -43
- data/ext/gsl_native/include/rb_gsl_with_narray.h +0 -31
- data/ext/gsl_native/include/templates_off.h +0 -87
- data/ext/gsl_native/include/templates_on.h +0 -241
- data/ext/gsl_native/integration.c +0 -1154
- data/ext/gsl_native/interp.c +0 -499
- data/ext/gsl_native/jacobi.c +0 -733
- data/ext/gsl_native/linalg.c +0 -3915
- data/ext/gsl_native/linalg_complex.c +0 -726
- data/ext/gsl_native/math.c +0 -706
- data/ext/gsl_native/matrix.c +0 -36
- data/ext/gsl_native/matrix_complex.c +0 -1733
- data/ext/gsl_native/matrix_double.c +0 -557
- data/ext/gsl_native/matrix_int.c +0 -255
- data/ext/gsl_native/matrix_source.h +0 -2708
- data/ext/gsl_native/min.c +0 -219
- data/ext/gsl_native/monte.c +0 -978
- data/ext/gsl_native/multifit.c +0 -1862
- data/ext/gsl_native/multimin.c +0 -778
- data/ext/gsl_native/multimin_fsdf.c +0 -156
- data/ext/gsl_native/multiroots.c +0 -952
- data/ext/gsl_native/multiset.c +0 -210
- data/ext/gsl_native/ndlinear.c +0 -320
- data/ext/gsl_native/nmf.c +0 -171
- data/ext/gsl_native/nmf_wrap.c +0 -75
- data/ext/gsl_native/ntuple.c +0 -469
- data/ext/gsl_native/odeiv.c +0 -947
- data/ext/gsl_native/ool.c +0 -879
- data/ext/gsl_native/permutation.c +0 -598
- data/ext/gsl_native/poly.c +0 -39
- data/ext/gsl_native/poly2.c +0 -265
- data/ext/gsl_native/poly_source.h +0 -1871
- data/ext/gsl_native/qrng.c +0 -160
- data/ext/gsl_native/randist.c +0 -1848
- data/ext/gsl_native/rational.c +0 -480
- data/ext/gsl_native/rng.c +0 -595
- data/ext/gsl_native/root.c +0 -407
- data/ext/gsl_native/sf.c +0 -1446
- data/ext/gsl_native/sf_airy.c +0 -200
- data/ext/gsl_native/sf_bessel.c +0 -871
- data/ext/gsl_native/sf_clausen.c +0 -28
- data/ext/gsl_native/sf_coulomb.c +0 -206
- data/ext/gsl_native/sf_coupling.c +0 -121
- data/ext/gsl_native/sf_dawson.c +0 -29
- data/ext/gsl_native/sf_debye.c +0 -148
- data/ext/gsl_native/sf_dilog.c +0 -43
- data/ext/gsl_native/sf_elementary.c +0 -46
- data/ext/gsl_native/sf_ellint.c +0 -206
- data/ext/gsl_native/sf_elljac.c +0 -30
- data/ext/gsl_native/sf_erfc.c +0 -89
- data/ext/gsl_native/sf_exp.c +0 -169
- data/ext/gsl_native/sf_expint.c +0 -201
- data/ext/gsl_native/sf_fermi_dirac.c +0 -148
- data/ext/gsl_native/sf_gamma.c +0 -343
- data/ext/gsl_native/sf_gegenbauer.c +0 -97
- data/ext/gsl_native/sf_hyperg.c +0 -203
- data/ext/gsl_native/sf_laguerre.c +0 -113
- data/ext/gsl_native/sf_lambert.c +0 -47
- data/ext/gsl_native/sf_legendre.c +0 -368
- data/ext/gsl_native/sf_log.c +0 -105
- data/ext/gsl_native/sf_mathieu.c +0 -235
- data/ext/gsl_native/sf_power.c +0 -47
- data/ext/gsl_native/sf_psi.c +0 -89
- data/ext/gsl_native/sf_synchrotron.c +0 -48
- data/ext/gsl_native/sf_transport.c +0 -76
- data/ext/gsl_native/sf_trigonometric.c +0 -210
- data/ext/gsl_native/sf_zeta.c +0 -115
- data/ext/gsl_native/signal.c +0 -303
- data/ext/gsl_native/siman.c +0 -713
- data/ext/gsl_native/sort.c +0 -207
- data/ext/gsl_native/spline.c +0 -377
- data/ext/gsl_native/stats.c +0 -787
- data/ext/gsl_native/sum.c +0 -168
- data/ext/gsl_native/tamu_anova.c +0 -56
- data/ext/gsl_native/tensor.c +0 -35
- data/ext/gsl_native/tensor_source.h +0 -1122
- data/ext/gsl_native/vector.c +0 -35
- data/ext/gsl_native/vector_complex.c +0 -2241
- data/ext/gsl_native/vector_double.c +0 -1433
- data/ext/gsl_native/vector_int.c +0 -202
- data/ext/gsl_native/vector_source.h +0 -3321
- data/ext/gsl_native/wavelet.c +0 -923
- data/lib/gsl.rb +0 -8
- data/lib/gsl/gnuplot.rb +0 -41
- data/lib/gsl/oper.rb +0 -43
- data/lib/gsl/version.rb +0 -3
- data/lib/ool.rb +0 -22
- data/lib/ool/conmin.rb +0 -30
- data/lib/rbgsl.rb +0 -1
- data/rdoc/alf.rdoc +0 -77
- data/rdoc/blas.rdoc +0 -269
- data/rdoc/bspline.rdoc +0 -42
- data/rdoc/changes.rdoc +0 -159
- data/rdoc/cheb.rdoc +0 -99
- data/rdoc/cholesky_complex.rdoc +0 -46
- data/rdoc/combi.rdoc +0 -125
- data/rdoc/complex.rdoc +0 -210
- data/rdoc/const.rdoc +0 -546
- data/rdoc/dht.rdoc +0 -122
- data/rdoc/diff.rdoc +0 -133
- data/rdoc/ehandling.rdoc +0 -50
- data/rdoc/eigen.rdoc +0 -401
- data/rdoc/fft.rdoc +0 -535
- data/rdoc/fit.rdoc +0 -284
- data/rdoc/function.rdoc +0 -94
- data/rdoc/graph.rdoc +0 -137
- data/rdoc/hist.rdoc +0 -409
- data/rdoc/hist2d.rdoc +0 -279
- data/rdoc/hist3d.rdoc +0 -112
- data/rdoc/integration.rdoc +0 -398
- data/rdoc/interp.rdoc +0 -231
- data/rdoc/intro.rdoc +0 -27
- data/rdoc/linalg.rdoc +0 -681
- data/rdoc/linalg_complex.rdoc +0 -88
- data/rdoc/math.rdoc +0 -276
- data/rdoc/matrix.rdoc +0 -1093
- data/rdoc/min.rdoc +0 -189
- data/rdoc/monte.rdoc +0 -234
- data/rdoc/multimin.rdoc +0 -312
- data/rdoc/multiroot.rdoc +0 -293
- data/rdoc/narray.rdoc +0 -177
- data/rdoc/ndlinear.rdoc +0 -250
- data/rdoc/nonlinearfit.rdoc +0 -348
- data/rdoc/ntuple.rdoc +0 -88
- data/rdoc/odeiv.rdoc +0 -378
- data/rdoc/perm.rdoc +0 -221
- data/rdoc/poly.rdoc +0 -335
- data/rdoc/qrng.rdoc +0 -90
- data/rdoc/randist.rdoc +0 -233
- data/rdoc/ref.rdoc +0 -93
- data/rdoc/rng.rdoc +0 -203
- data/rdoc/roots.rdoc +0 -305
- data/rdoc/sf.rdoc +0 -1622
- data/rdoc/siman.rdoc +0 -89
- data/rdoc/sort.rdoc +0 -94
- data/rdoc/start.rdoc +0 -16
- data/rdoc/stats.rdoc +0 -219
- data/rdoc/sum.rdoc +0 -65
- data/rdoc/tensor.rdoc +0 -251
- data/rdoc/tut.rdoc +0 -5
- data/rdoc/use.rdoc +0 -177
- data/rdoc/vector.rdoc +0 -1243
- data/rdoc/vector_complex.rdoc +0 -347
- data/rdoc/wavelet.rdoc +0 -218
- data/test/gsl/blas_test.rb +0 -79
- data/test/gsl/bspline_test.rb +0 -63
- data/test/gsl/cdf_test.rb +0 -1512
- data/test/gsl/cheb_test.rb +0 -80
- data/test/gsl/combination_test.rb +0 -100
- data/test/gsl/complex_test.rb +0 -20
- data/test/gsl/const_test.rb +0 -29
- data/test/gsl/deriv_test.rb +0 -62
- data/test/gsl/dht_test.rb +0 -79
- data/test/gsl/diff_test.rb +0 -53
- data/test/gsl/eigen_test.rb +0 -563
- data/test/gsl/err_test.rb +0 -23
- data/test/gsl/fit_test.rb +0 -101
- data/test/gsl/histo_test.rb +0 -14
- data/test/gsl/index_test.rb +0 -61
- data/test/gsl/integration_test.rb +0 -274
- data/test/gsl/interp_test.rb +0 -27
- data/test/gsl/linalg_test.rb +0 -463
- data/test/gsl/matrix_nmf_test.rb +0 -37
- data/test/gsl/matrix_test.rb +0 -98
- data/test/gsl/min_test.rb +0 -89
- data/test/gsl/monte_test.rb +0 -77
- data/test/gsl/multifit_test.rb +0 -753
- data/test/gsl/multimin_test.rb +0 -157
- data/test/gsl/multiroot_test.rb +0 -135
- data/test/gsl/multiset_test.rb +0 -52
- data/test/gsl/odeiv_test.rb +0 -275
- data/test/gsl/oper_test.rb +0 -98
- data/test/gsl/poly_test.rb +0 -338
- data/test/gsl/qrng_test.rb +0 -94
- data/test/gsl/quartic_test.rb +0 -28
- data/test/gsl/randist_test.rb +0 -122
- data/test/gsl/rng_test.rb +0 -303
- data/test/gsl/roots_test.rb +0 -78
- data/test/gsl/sf_test.rb +0 -2079
- data/test/gsl/stats_test.rb +0 -122
- data/test/gsl/sum_test.rb +0 -69
- data/test/gsl/tensor_test.rb +0 -396
- data/test/gsl/vector_test.rb +0 -223
- data/test/gsl/wavelet_test.rb +0 -130
- data/test/gsl_test.rb +0 -321
- data/test/test_helper.rb +0 -42
- data/uncrustify.cfg +0 -1693
data/rdoc/multiroot.rdoc
DELETED
@@ -1,293 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# = Multidimensional Root-Finding
|
3
|
-
# This chapter describes functions for multidimensional root-finding
|
4
|
-
# (solving nonlinear systems with n equations in n unknowns).
|
5
|
-
# The library provides low level components for a variety of iterative solvers
|
6
|
-
# and convergence tests. These can be combined by the user to achieve the
|
7
|
-
# desired solution, with full access to the intermediate steps of the iteration.
|
8
|
-
# Each class of methods uses the same framework, so that you can switch between
|
9
|
-
# solvers at runtime without needing to recompile your program. Each instance of
|
10
|
-
# a solver keeps track of its own state, allowing the solvers to be used in
|
11
|
-
# multi-threaded programs.
|
12
|
-
#
|
13
|
-
# 1. {Overview}[link:rdoc/multiroot_rdoc.html#label-Overview]
|
14
|
-
# 1. {Initializing the Solver}[link:rdoc/multiroot_rdoc.html#label-Initializing+the+Solver]
|
15
|
-
# 1. {Providing the function to solve}[link:rdoc/multiroot_rdoc.html#label-Providing+the+function+to+solve]
|
16
|
-
# 1. {Iteration}[link:rdoc/multiroot_rdoc.html#label-Iteration]
|
17
|
-
# 1. {Search Stopping Parameters}[link:rdoc/multiroot_rdoc.html#label-Search+Stopping+Parameters]
|
18
|
-
# 1. {Higher Level Interface}[link:rdoc/multiroot_rdoc.html#label-Higher+Level+Interface]
|
19
|
-
# 1. {Examples}[link:rdoc/multiroot_rdoc.html#label-Example]
|
20
|
-
# 1. {FSolver}[link:rdoc/multiroot_rdoc.html#label-FSolver]
|
21
|
-
# 1. {FdfSolver}[link:rdoc/multiroot_rdoc.html#label-FdfSolver]
|
22
|
-
#
|
23
|
-
#
|
24
|
-
# == Overview
|
25
|
-
# The problem of multidimensional root finding requires the simultaneous
|
26
|
-
# solution of n equations, f_i, in n variables, x_i, In general there are no
|
27
|
-
# bracketing methods available for n dimensional systems, and no way of knowing
|
28
|
-
# whether any solutions exist. All algorithms proceed from an initial guess
|
29
|
-
# using a variant of the Newton iteration, where x, f are vector quantities and
|
30
|
-
# J is the Jacobian matrix J_{ij} = d f_i / d x_j. Additional strategies can be
|
31
|
-
# used to enlarge the region of convergence. These include requiring a decrease
|
32
|
-
# in the norm |f| on each step proposed by Newton's method, or taking
|
33
|
-
# steepest-descent steps in the direction of the negative gradient of |f|.
|
34
|
-
#
|
35
|
-
# Several root-finding algorithms are available within a single framework.
|
36
|
-
# The user provides a high-level driver for the algorithms, and the library
|
37
|
-
# provides the individual functions necessary for each of the steps. There are
|
38
|
-
# three main phases of the iteration. The steps are,
|
39
|
-
#
|
40
|
-
# * initialize solver state, <tt>s</tt>, for algorithm <tt>T</tt>
|
41
|
-
# * update <tt>s</tt> using the iteration <tt>T</tt>
|
42
|
-
# * test <tt>s</tt> for convergence, and repeat iteration if necessary
|
43
|
-
#
|
44
|
-
# The evaluation of the Jacobian matrix can be problematic, either because
|
45
|
-
# programming the derivatives is intractable or because computation of the n^2
|
46
|
-
# terms of the matrix becomes too expensive. For these reasons the algorithms
|
47
|
-
# provided by the library are divided into two classes according to whether
|
48
|
-
# the derivatives are available or not.
|
49
|
-
#
|
50
|
-
# The state for solvers with an analytic Jacobian matrix is held in a
|
51
|
-
# <tt>GSL::MultiRoot::FdfSolver</tt> object. The updating procedure requires both
|
52
|
-
# the function and its derivatives to be supplied by the user.
|
53
|
-
#
|
54
|
-
# The state for solvers which do not use an analytic Jacobian matrix is held in
|
55
|
-
# a <tt>GSL::MultiRoot::FSolver</tt> object. The updating procedure uses only
|
56
|
-
# function evaluations (not derivatives). The algorithms estimate the matrix J
|
57
|
-
# or J^{-1} by approximate methods.
|
58
|
-
#
|
59
|
-
#
|
60
|
-
# == Initializing the Solver
|
61
|
-
# Two types of solvers are available. The solver itself depends only on the
|
62
|
-
# dimension of the problem and the algorithm and can be reused for different problems.
|
63
|
-
# The <tt>FdfSolver</tt> requires derivatives of the function to solve.
|
64
|
-
#
|
65
|
-
# ---
|
66
|
-
# * GSL::MultiRoot::FSolver.alloc(T, n)
|
67
|
-
#
|
68
|
-
# This creates an instance of the <tt>FSolver</tt> class of type <tt>T</tt>
|
69
|
-
# for a system of <tt>n</tt> dimensions. The type is given by a constant or a string,
|
70
|
-
# * GSL::MultiRoot:FSolver::HYBRIDS, or "hybrids"
|
71
|
-
# * GSL::MultiRoot:FSolver::HYBRID, or "hybrid"
|
72
|
-
# * GSL::MultiRoot:FSolver::DNEWTON, or "dnewton"
|
73
|
-
# * GSL::MultiRoot:FSolver::BROYDEN, or "broyden"
|
74
|
-
#
|
75
|
-
# ---
|
76
|
-
# * GSL::MultiRoot::FdfSolver.alloc(T, n)
|
77
|
-
#
|
78
|
-
# This creates an instance of the <tt>FdfSolver</tt> class of type <tt>T</tt>
|
79
|
-
# for a system of <tt>n</tt> dimensions. The type is given by a constant,
|
80
|
-
# * GSL::MultiRoot:FdfSolver::HYBRIDSJ, or "hybridsj"
|
81
|
-
# * GSL::MultiRoot:FdfSolver::HYBRIDJ, or "hybridj",
|
82
|
-
# * GSL::MultiRoot:FdfSolver::NEWTON, or "newton",
|
83
|
-
# * GSL::MultiRoot:FdfSolver::GNEWTON, or "gnewton
|
84
|
-
#
|
85
|
-
# ---
|
86
|
-
# * GSL::MultiRoot::FSolver#set(func, x)
|
87
|
-
#
|
88
|
-
# This method sets, or resets, an existing solver <tt>self</tt>
|
89
|
-
# to use the function <tt>func</tt> and the initial guess <tt>x</tt>.
|
90
|
-
# Here <tt>x</tt> is a <tt>Vector</tt>, and <tt>func</tt>
|
91
|
-
# is a <tt>MultiRoot:Function</tt> object.
|
92
|
-
# ---
|
93
|
-
# * GSL::MultiRoot::FdfSolver#set(func_fdf, x)
|
94
|
-
#
|
95
|
-
# This method sets, or resets, an existing solver <tt>self</tt>
|
96
|
-
# to use the function <tt>func_fdf</tt> and the initial guess <tt>x</tt>.
|
97
|
-
# Here <tt>x</tt> is a <tt>Vector</tt>, and <tt>func_fdf</tt>
|
98
|
-
# is a <tt>MultiRoot:Function_fdf</tt> object.
|
99
|
-
#
|
100
|
-
# ---
|
101
|
-
# * GSL::MultiRoot::FSolver#name
|
102
|
-
# * GSL::MultiRoot::FdfSolver#name
|
103
|
-
#
|
104
|
-
#
|
105
|
-
# == Providing the function to solve
|
106
|
-
# ---
|
107
|
-
# * GSL::MultiRoot:Function.alloc(proc, dim, params)
|
108
|
-
#
|
109
|
-
# See example below:
|
110
|
-
#
|
111
|
-
# # x: vector, current guess
|
112
|
-
# # params: a scalar or an array
|
113
|
-
# # f: vector, function value
|
114
|
-
# proc = Proc.new { |x, params, f|
|
115
|
-
# a = params[0]; b = params[1]
|
116
|
-
# x0 = x[0]; x1 = x[1]
|
117
|
-
# f[0] = a*(1 - x0)
|
118
|
-
# f[1] = b*(x1 - x0*x0)
|
119
|
-
# }
|
120
|
-
#
|
121
|
-
# params = [1.0, 10.0]
|
122
|
-
# func = MultiRoot::Function.alloc(proc, 2, params)
|
123
|
-
# fsolver = MultiRoot::FSolver.alloc("broyden", 2)
|
124
|
-
# x = [-10, -5] # initial guess
|
125
|
-
# fsolver.set(func, x)
|
126
|
-
#
|
127
|
-
# ---
|
128
|
-
# * GSL::MultiRoot:Function_fdf.alloc(proc, dim, params)
|
129
|
-
#
|
130
|
-
# See the example below:
|
131
|
-
#
|
132
|
-
# procf = Proc.new { |x, params, f|
|
133
|
-
# a = params[0]; b = params[1]
|
134
|
-
# x0 = x[0]; x1 = x[1]
|
135
|
-
# f[0] = a*(1 - x0)
|
136
|
-
# f[1] = b*(x1 - x0*x0)
|
137
|
-
# }
|
138
|
-
#
|
139
|
-
# procdf = Proc.new { |x, params, jac|
|
140
|
-
# a = params[0]; b = params[1]
|
141
|
-
# jac.set(0, 0, -a)
|
142
|
-
# jac.set(0, 1, 0)
|
143
|
-
# jac.set(1, 0, -2*b*x[0])
|
144
|
-
# jac.set(1, 1, b)
|
145
|
-
# }
|
146
|
-
#
|
147
|
-
# params = [1.0, 10.0]
|
148
|
-
# func_fdf = MultiRoot::Function_fdf.alloc(procf, procdf, n, params)
|
149
|
-
#
|
150
|
-
# fdfsolver = MultiRoot::FdfSolver.alloc("gnewton", n)
|
151
|
-
# x = [-10.0, -5.0]
|
152
|
-
# fdfsolver.set(func_fdf, x)
|
153
|
-
#
|
154
|
-
# == Iteration
|
155
|
-
# ---
|
156
|
-
# * GSL::MultiRoot::FSolver#interate
|
157
|
-
# * GSL::MultiRoot::FdfSolver#interate
|
158
|
-
#
|
159
|
-
# These methods perform a single iteration of the solver <tt>self</tt>.
|
160
|
-
# If the iteration encounters an unexpected problem then an error code will
|
161
|
-
# be returned,
|
162
|
-
# * GSL_EBADFUNC: the iteration encountered a singular point where the function
|
163
|
-
# or its derivative evaluated to Inf or NaN.
|
164
|
-
# * GSL_ENOPROG: the iteration is not making any progress, preventing the
|
165
|
-
# algorithm from continuing.
|
166
|
-
# The solver maintains a current best estimate of the root at all times.
|
167
|
-
# This information can be accessed with the following auxiliary methods.
|
168
|
-
#
|
169
|
-
# ---
|
170
|
-
# * GSL::MultiRoot::FSolver#root
|
171
|
-
# * GSL::MultiRoot::FdfSolver#root
|
172
|
-
#
|
173
|
-
# These methods return the current estimate of the root (Vector) for the solver <tt>self</tt>.
|
174
|
-
#
|
175
|
-
# ---
|
176
|
-
# * GSL::MultiRoot::FSolver#f
|
177
|
-
# * GSL::MultiRoot::FdfSolver#f
|
178
|
-
#
|
179
|
-
# These methds return the function value <tt>f(x)</tt> (Vector) at the current estimate
|
180
|
-
# of the root for the solver <tt>self</tt>.
|
181
|
-
#
|
182
|
-
# ---
|
183
|
-
# * GSL::MultiRoot::FSolver#dx
|
184
|
-
# * GSL::MultiRoot::FdfSolver#dx
|
185
|
-
#
|
186
|
-
# These method return the last step <tt>dx</tt> (Vector) taken by the solver <tt>self</tt>.
|
187
|
-
#
|
188
|
-
# == Search Stopping Parameters
|
189
|
-
# ---
|
190
|
-
# * GSL::MultiRoot::FSolver#test_delta(epsabs, epsrel)
|
191
|
-
# * GSL::MultiRoot::FdfSolver#test_delta(epsabs, epsrel)
|
192
|
-
#
|
193
|
-
# This method tests for the convergence of the sequence by comparing the last step
|
194
|
-
# <tt>dx</tt> with the absolute error <tt>epsabs</tt> and relative error <tt>epsrel</tt>
|
195
|
-
# to the current position <tt>x</tt>.
|
196
|
-
# The test returns <tt>GSL::SUCCESS</tt> if the following condition is achieved,
|
197
|
-
# |dx_i| < epsabs + epsrel |x_i|
|
198
|
-
# for each component of <tt>x</tt> and returns <tt>GSL::CONTINUE</tt> otherwise.
|
199
|
-
#
|
200
|
-
# ---
|
201
|
-
# * GSL::MultiRoot::FSolver#test_residual(epsabs)
|
202
|
-
# * GSL::MultiRoot::FdfSolver#test_residual(epsabs)
|
203
|
-
#
|
204
|
-
# This method tests the residual value <tt>f</tt> against the absolute error
|
205
|
-
# bound <tt>epsabs</tt>. The test returns <tt>GSL::SUCCESS</tt> if the following
|
206
|
-
# condition is achieved,
|
207
|
-
# sum_i |f_i| < epsabs
|
208
|
-
# and returns <tt>GSL::CONTINUE</tt> otherwise. This criterion is suitable for
|
209
|
-
# situations where the precise location of the root, <tt>x</tt>, is unimportant
|
210
|
-
# provided a value can be found where the residual is small enough.
|
211
|
-
#
|
212
|
-
# == Higher Level Interface
|
213
|
-
# ---
|
214
|
-
# * GSL::MultiRoot::Function#solve(x0, max_iter = 1000, eps = 1e-7, type = "hybrids")
|
215
|
-
# * GSL::MultiRoot::FSolver#solve(max_iter = 1000, eps = 1e-7)
|
216
|
-
# * GSL::MultiRoot::FSolver.solve(fsolver, max_iter = 1000, eps = 1e-7)
|
217
|
-
#
|
218
|
-
# See sample script <tt>examples/multiroot/fsolver3.rb</tt>.
|
219
|
-
#
|
220
|
-
# == Example
|
221
|
-
#
|
222
|
-
# === FSolver
|
223
|
-
#
|
224
|
-
# proc = Proc.new { |x, params, f|
|
225
|
-
# a = params[0]; b = params[1]
|
226
|
-
# x0 = x[0]; x1 = x[1]
|
227
|
-
# f[0] = a*(1 - x0)
|
228
|
-
# f[1] = b*(x1 - x0*x0)
|
229
|
-
# }
|
230
|
-
#
|
231
|
-
# params = [1.0, 10.0]
|
232
|
-
# func = MultiRoot::Function.alloc(proc, 2, params)
|
233
|
-
#
|
234
|
-
# fsolver = MultiRoot::FSolver.alloc("hybrid", 2)
|
235
|
-
# x = [-10, -5]
|
236
|
-
# fsolver.set(func, x)
|
237
|
-
#
|
238
|
-
# iter = 0
|
239
|
-
# begin
|
240
|
-
# iter += 1
|
241
|
-
# status = fsolver.iterate
|
242
|
-
# root = fsolver.root
|
243
|
-
# f = fsolver.f
|
244
|
-
# printf("iter = %3u x = % .3f % .3f f(x) = % .3e % .3e\n",
|
245
|
-
# iter, root[0], root[1], f[0], f[1])
|
246
|
-
# status = fsolver.test_residual(1e-7)
|
247
|
-
# end while status == GSL::CONTINUE and iter < 1000
|
248
|
-
#
|
249
|
-
# === FdfSolver
|
250
|
-
# n = 2
|
251
|
-
#
|
252
|
-
# procf = Proc.new { |x, params, f|
|
253
|
-
# a = params[0]; b = params[1]
|
254
|
-
# x0 = x[0]; x1 = x[1]
|
255
|
-
# f[0] = a*(1 - x0)
|
256
|
-
# f[1] = b*(x1 - x0*x0)
|
257
|
-
# }
|
258
|
-
#
|
259
|
-
# procdf = Proc.new { |x, params, jac|
|
260
|
-
# a = params[0]; b = params[1]
|
261
|
-
# jac.set(0, 0, -a)
|
262
|
-
# jac.set(0, 1, 0)
|
263
|
-
# jac.set(1, 0, -2*b*x[0])
|
264
|
-
# jac.set(1, 1, b)
|
265
|
-
# }
|
266
|
-
#
|
267
|
-
# params = [1.0, 10.0]
|
268
|
-
# f = MultiRoot::Function_fdf.alloc(procf, procdf, n, params)
|
269
|
-
#
|
270
|
-
# fdfsolver = MultiRoot::FdfSolver.alloc("gnewton", n)
|
271
|
-
#
|
272
|
-
# x = [-10.0, -5.0]
|
273
|
-
#
|
274
|
-
# fdfsolver.set(f, x)
|
275
|
-
#
|
276
|
-
# iter = 0
|
277
|
-
# begin
|
278
|
-
# iter += 1
|
279
|
-
# status = fdfsolver.iterate
|
280
|
-
# root = fdfsolver.root
|
281
|
-
# f = fdfsolver.f
|
282
|
-
# printf("iter = %3u x = % .3f % .3f f(x) = % .3e % .3e\n",
|
283
|
-
# iter, root[0], root[1], f[0], f[1])
|
284
|
-
# status = fdfsolver.test_residual(1e-7)
|
285
|
-
# end while status == GSL::CONTINUE and iter < 1000
|
286
|
-
#
|
287
|
-
# {prev}[link:rdoc/min_rdoc.html]
|
288
|
-
# {next}[link:rdoc/multimin_rdoc.html]
|
289
|
-
#
|
290
|
-
# {Reference index}[link:rdoc/ref_rdoc.html]
|
291
|
-
# {top}[link:index.html]
|
292
|
-
#
|
293
|
-
#
|
data/rdoc/narray.rdoc
DELETED
@@ -1,177 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# = NArray compatibilities
|
3
|
-
# === Contents:
|
4
|
-
# 1. {Data type conversions}[link:rdoc/narray_rdoc.html#label-Data+type+conversions]
|
5
|
-
# 1. {Methods which accepts NArray}[link:rdoc/narray_rdoc.html#label-Methods+which+accepts+NArray]
|
6
|
-
#
|
7
|
-
# == Data type conversions
|
8
|
-
# === GSL to NArray
|
9
|
-
#
|
10
|
-
# ---
|
11
|
-
# * GSL::Vector#to_na
|
12
|
-
# * GSL::Vector#to_nvector
|
13
|
-
# * GSL::Vector::Complex#to_na
|
14
|
-
# * GSL::Vector::Complex#to_nvector
|
15
|
-
# * GSL::Matrix#to_na
|
16
|
-
# * GSL::Matrix#to_nmatrix
|
17
|
-
#
|
18
|
-
# Convert GSL objects to NArray. The data contained by the GSL objects
|
19
|
-
# are copied to a newly allocated memory block of the NArray objects created.
|
20
|
-
#
|
21
|
-
# ---
|
22
|
-
# * GSL::Vector#to_na_ref
|
23
|
-
# * GSL::Vector#to_nvector_ref
|
24
|
-
# * GSL::Vector::Complex#to_na_ref
|
25
|
-
# * GSL::Vector::Complex#to_nvector_ref
|
26
|
-
# * GSL::Matrix#to_na_ref
|
27
|
-
# * GSL::Matrix#to_nmatrix_ref
|
28
|
-
#
|
29
|
-
# Create NArray-ref objects from GSL data. The memory block of the GSL
|
30
|
-
# objects are shared with the NArray-ref objects.
|
31
|
-
#
|
32
|
-
# Example:
|
33
|
-
# >> v = Vector::Int[0..5]
|
34
|
-
# => GSL::Vector::Int
|
35
|
-
# [ 0 1 2 3 4 5 ]
|
36
|
-
# >> na = v.to_nvector_ref
|
37
|
-
# => NVector(ref).int(6):
|
38
|
-
# [ 0, 1, 2, 3, 4, 5 ]
|
39
|
-
# >> na[3] = 999
|
40
|
-
# => 999
|
41
|
-
# >> v
|
42
|
-
# => GSL::Vector::Int
|
43
|
-
# [ 0 1 2 999 4 5 ]
|
44
|
-
#
|
45
|
-
# === NArray to GSL
|
46
|
-
# ---
|
47
|
-
# * NArray#to_gv
|
48
|
-
# * NArray#to_gm
|
49
|
-
#
|
50
|
-
# <tt>NArray#to_gv</tt> converts NArray objects to <tt>GSL::Vector</tt> or
|
51
|
-
# <tt>GSL::Vector::Complex</tt>. <tt>NArray#to_gm</tt> converts NArray
|
52
|
-
# objects to <tt>GSL::Matrix</tt>. The data contained by the NArray objects
|
53
|
-
# are copied to a newly allocated memory block of the GSL objects created.
|
54
|
-
#
|
55
|
-
# ---
|
56
|
-
# * NArray#to_gv_view
|
57
|
-
# * NArray#to_gm_view
|
58
|
-
#
|
59
|
-
# Create <tt>GSL::Vector::View</tt> or <tt>GSL::Matrix::View</tt> objects from NArray.
|
60
|
-
# The memory block of the NArray objects are shared with the View objects.
|
61
|
-
#
|
62
|
-
# Example:
|
63
|
-
# >> na = NArray[0, 1, 2, 3, 4, 5]
|
64
|
-
# => NArray.int(6):
|
65
|
-
# [ 0, 1, 2, 3, 4, 5 ]
|
66
|
-
# >> b = na.to_gv_int_view
|
67
|
-
# => GSL::Vector::Int::View
|
68
|
-
# [ 0 1 2 3 4 5 ]
|
69
|
-
# >> b[2] = -99
|
70
|
-
# => -99
|
71
|
-
# >> na
|
72
|
-
# => NArray.int(6):
|
73
|
-
# [ 0, 1, -99, 3, 4, 5 ]
|
74
|
-
#
|
75
|
-
# == Methods which accepts NArray
|
76
|
-
# === <tt>GSL</tt> module
|
77
|
-
# ---
|
78
|
-
# * GSL::graph()
|
79
|
-
# * GSL::log1p(x)
|
80
|
-
# * GSL::expm1(x)
|
81
|
-
# * GSL::hypot(x, y)
|
82
|
-
# * GSL::acosh(x)
|
83
|
-
# * GSL::asinh(x)
|
84
|
-
# * GSL::atanh(x)
|
85
|
-
# * GSL::pow(x, a)
|
86
|
-
# * GSL::pow_int(x, n)
|
87
|
-
# * GSL::pow_2(x), ..., GSL::pow_9(x)
|
88
|
-
#
|
89
|
-
#
|
90
|
-
# === <tt>Sf</tt> module
|
91
|
-
# ---
|
92
|
-
# * {Any}[link:rdoc/sf_rdoc.html]
|
93
|
-
#
|
94
|
-
# === <tt>Linalg</tt> module
|
95
|
-
# ---
|
96
|
-
# * GSL::Linalg::LU.decomp(na)
|
97
|
-
# * GSL::Linalg::LU.solve(lu, b)
|
98
|
-
# * GSL::Linalg::LU.svx(lu, bx)
|
99
|
-
# * GSL::Linalg::LU.det(lu, sign)
|
100
|
-
# * GSL::Linalg::LU.lndet(lu)
|
101
|
-
# * GSL::Linalg::LU.invert(lu, perm)
|
102
|
-
# * GSL::Linalg::QR.decomp(m)
|
103
|
-
# * GSL::Linalg::QR.solve(qr, tau, b)
|
104
|
-
# * GSL::Linalg::QR.svx(qr, tau, bx)
|
105
|
-
# * GSL::Linalg::SV.decomp(m)
|
106
|
-
# * GSL::Linalg::SV.solve(u, v, s, b)
|
107
|
-
# * GSL::Linalg::SV.svx(u, v, s, bx)
|
108
|
-
# * GSL::Linalg::Cholesky.decomp(m)
|
109
|
-
# * GSL::Linalg::Cholesky.solve(u, v, s, b)
|
110
|
-
# * GSL::Linalg::Cholesky.svx(u, v, s, bx)
|
111
|
-
# * GSL::Linalg::HH.solve(m, b)
|
112
|
-
# * GSL::Linalg::HH.svx(m, bx)
|
113
|
-
#
|
114
|
-
#
|
115
|
-
# === <tt>Eigen</tt> module
|
116
|
-
# ---
|
117
|
-
# * GSL::Eigen::symm(na)
|
118
|
-
# * GSL::Eigen::symmv(na)
|
119
|
-
#
|
120
|
-
#
|
121
|
-
# === <tt>FFT</tt> module
|
122
|
-
# ---
|
123
|
-
# * {Many}[link:rdoc/fft_rdoc.html]
|
124
|
-
#
|
125
|
-
# === <tt>Function</tt> class
|
126
|
-
# ---
|
127
|
-
# * GSL::Function#eval
|
128
|
-
# * GSL::Function#deriv_central(x, h)
|
129
|
-
# * GSL::Function#deriv_forward(x, h)
|
130
|
-
# * GSL::Function#deriv_backward(x, h)
|
131
|
-
# * GSL::Function#diff_central(x, h)
|
132
|
-
# * GSL::Function#diff_forward(x, h)
|
133
|
-
# * GSL::Function#diff_backward(x, h)
|
134
|
-
#
|
135
|
-
#
|
136
|
-
# === <tt>Ran</tt> and <tt>Cdf</tt> module
|
137
|
-
# ---
|
138
|
-
# * {Many}[link:rdoc/randist_rdoc.html]
|
139
|
-
#
|
140
|
-
# === <tt>Stats</tt> module
|
141
|
-
# ---
|
142
|
-
# * {Any}[link:rdoc/stats_rdoc.html]
|
143
|
-
#
|
144
|
-
# === <tt>Interp</tt> and <tt>Spline</tt> class
|
145
|
-
# ---
|
146
|
-
# * GSL::Interp#init
|
147
|
-
# * GSL::Interp#eval
|
148
|
-
# * GSL::Spline#init
|
149
|
-
# * GSL::Spline#eval
|
150
|
-
#
|
151
|
-
#
|
152
|
-
# === <tt>Deriv</tt> and <tt>Diff</tt> module
|
153
|
-
# ---
|
154
|
-
# * GSL::Deriv.central(f, x, h)
|
155
|
-
# * GSL::Deriv.forward(f, x, h)
|
156
|
-
# * GSL::Deriv.backward(f, x, h)
|
157
|
-
# * GSL::Diff.central(f, x, h)
|
158
|
-
# * GSL::Diff.forward(f, x, h)
|
159
|
-
# * GSL::Diff.backward(f, x, h)
|
160
|
-
#
|
161
|
-
#
|
162
|
-
# === <tt>Cheb</tt> class
|
163
|
-
# ---
|
164
|
-
# * GSL::Cheb#eval(x)
|
165
|
-
# * GSL::Cheb#eval_n(n, x)
|
166
|
-
#
|
167
|
-
#
|
168
|
-
# === <tt>Wavelet</tt> class
|
169
|
-
# ---
|
170
|
-
# * {Many}[link:rdoc/wavelet_rdoc.html]
|
171
|
-
#
|
172
|
-
# {prev}[link:rdoc/tensor_rdoc.html]
|
173
|
-
#
|
174
|
-
# {Reference index}[link:rdoc/ref_rdoc.html]
|
175
|
-
# {top}[link:index.html]
|
176
|
-
#
|
177
|
-
#
|