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/fit.rdoc
DELETED
@@ -1,284 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# = Least-Squares Fitting
|
3
|
-
# This chapter describes routines for performing least squares fits to
|
4
|
-
# experimental data using linear combinations of functions. The data may be
|
5
|
-
# weighted or unweighted, i.e. with known or unknown errors. For weighted data
|
6
|
-
# the functions compute the best fit parameters and their associated covariance
|
7
|
-
# matrix. For unweighted data the covariance matrix is estimated from the
|
8
|
-
# scatter of the points, giving a variance-covariance matrix.
|
9
|
-
#
|
10
|
-
# The functions are divided into separate versions for simple one- or
|
11
|
-
# two-parameter regression and multiple-parameter fits.
|
12
|
-
#
|
13
|
-
# Contents:
|
14
|
-
# 1. {Overview}[link:rdoc/fit_rdoc.html#label-Overview]
|
15
|
-
# 1. {Linear regression}[link:rdoc/fit_rdoc.html#label-Linear+regression]
|
16
|
-
# 1. {Module functions for linear regression}[link:rdoc/fit_rdoc.html#label-Module+functions+for+linear+regression]
|
17
|
-
# 1. {Linear fitting without a constant term}[link:rdoc/fit_rdoc.html#label-Linear+fitting+without+a+constant+term]
|
18
|
-
# 1. {Multi-parameter fitting}[link:rdoc/fit_rdoc.html#label-Multi-parameter+fitting]
|
19
|
-
# 1. {GSL::MultiFit::Workspace class}[link:rdoc/fit_rdoc.html#label-Workspace+class]
|
20
|
-
# 1. {Module functions}[link:rdoc/fit_rdoc.html#label-Module+functions]
|
21
|
-
# 1. {Higer level interface}[link:rdoc/fit_rdoc.html#label-Higer+level+interface]
|
22
|
-
# 1. {NDLINEAR: multi-linear, multi-parameter least squares fitting}[link:rdoc/ndlinear_rdoc.html] (GSL extension)
|
23
|
-
# 1. {Examples}[link:rdoc/fit_rdoc.html#label-Examples]
|
24
|
-
# 1. {Linear regression}[link:rdoc/fit_rdoc.html#label-Linear+regression]
|
25
|
-
# 1. {Exponential fitting}[link:rdoc/fit_rdoc.html#label-Exponential+fitting]
|
26
|
-
# 1. {Multi-parameter fitting}[link:rdoc/fit_rdoc.html#label-Multi-parameter+fitting]
|
27
|
-
#
|
28
|
-
# == Overview
|
29
|
-
# Least-squares fits are found by minimizing \chi^2 (chi-squared), the weighted
|
30
|
-
# sum of squared residuals over n experimental datapoints (x_i, y_i) for the
|
31
|
-
# model Y(c,x), The p parameters of the model are c = {c_0, c_1, ...}. The
|
32
|
-
# weight factors w_i are given by w_i = 1/\sigma_i^2, where \sigma_i is the
|
33
|
-
# experimental error on the data-point y_i. The errors are assumed to be
|
34
|
-
# gaussian and uncorrelated. For unweighted data the chi-squared sum is
|
35
|
-
# computed without any weight factors.
|
36
|
-
#
|
37
|
-
# The fitting routines return the best-fit parameters c and their p \times p
|
38
|
-
# covariance matrix. The covariance matrix measures the statistical errors on
|
39
|
-
# the best-fit parameters resulting from the errors on the data, \sigma_i, and
|
40
|
-
# is defined as C_{ab} = <\delta c_a \delta c_b> where < > denotes an average
|
41
|
-
# over the gaussian error distributions of the underlying datapoints.
|
42
|
-
#
|
43
|
-
# The covariance matrix is calculated by error propagation from the data errors
|
44
|
-
# \sigma_i. The change in a fitted parameter \delta c_a caused by a small change
|
45
|
-
# in the data \delta y_i is given by allowing the covariance matrix to be written
|
46
|
-
# in terms of the errors on the data, For uncorrelated data the fluctuations of
|
47
|
-
# the underlying datapoints satisfy
|
48
|
-
# <\delta y_i \delta y_j> = \sigma_i^2 \delta_{ij}, giving a corresponding
|
49
|
-
# parameter covariance matrix of When computing the covariance matrix for
|
50
|
-
# unweighted data, i.e. data with unknown errors, the weight factors w_i in this
|
51
|
-
# sum are replaced by the single estimate w = 1/\sigma^2, where \sigma^2 is the
|
52
|
-
# computed variance of the residuals about the
|
53
|
-
# best-fit model, \sigma^2 = \sum (y_i - Y(c,x_i))^2 / (n-p).
|
54
|
-
# This is referred to as the variance-covariance matrix.
|
55
|
-
#
|
56
|
-
# The standard deviations of the best-fit parameters are given by the square
|
57
|
-
# root of the corresponding diagonal elements of the covariance matrix,
|
58
|
-
# \sigma_{c_a} = \sqrt{C_{aa}}. The correlation coefficient of the fit
|
59
|
-
# parameters c_a and c_b is given by \rho_{ab} = C_{ab} / \sqrt{C_{aa} C_{bb}}.
|
60
|
-
#
|
61
|
-
#
|
62
|
-
# == Linear regression
|
63
|
-
# The functions described in this section can be used to perform least-squares
|
64
|
-
# fits to a straight line model, Y = c_0 + c_1 X. For weighted data the best-fit
|
65
|
-
# is found by minimizing the weighted sum of squared residuals, chi^2,
|
66
|
-
#
|
67
|
-
# chi^2 = sum_i w_i (y_i - (c0 + c1 x_i))^2
|
68
|
-
#
|
69
|
-
# for the parameters <tt>c0, c1</tt>. For unweighted data the sum is computed with
|
70
|
-
# <tt>w_i = 1</tt>.
|
71
|
-
#
|
72
|
-
# === Module functions for linear regression
|
73
|
-
# ---
|
74
|
-
# * GSL::Fit::linear(x, y)
|
75
|
-
#
|
76
|
-
# This function computes the best-fit linear regression coefficients (c0,c1)
|
77
|
-
# of the model Y = c0 + c1 X for the datasets <tt>(x, y)</tt>, two vectors of
|
78
|
-
# equal length with stride 1. This returns an array of 7 elements,
|
79
|
-
# <tt>[c0, c1, cov00, cov01, cov11, chisq, status]</tt>, where <tt>c0, c1</tt> are the
|
80
|
-
# estimated parameters, <tt>cov00, cov01, cov11</tt> are the variance-covariance
|
81
|
-
# matrix elements, <tt>chisq</tt> is the sum of squares of the residuals, and
|
82
|
-
# <tt>status</tt> is the return code from the GSL function <tt>gsl_fit_linear()</tt>.
|
83
|
-
#
|
84
|
-
# ---
|
85
|
-
# * GSL::Fit::wlinear(x, w, y)
|
86
|
-
#
|
87
|
-
# This function computes the best-fit linear regression coefficients (c0,c1)
|
88
|
-
# of the model Y = c_0 + c_1 X for the weighted datasets <tt>(x, y)</tt>.
|
89
|
-
# The vector <tt>w</tt>, specifies the weight of each datapoint, which is the
|
90
|
-
# reciprocal of the variance for each datapoint in <tt>y</tt>. This returns an
|
91
|
-
# array of 7 elements, same as the method <tt>linear</tt>.
|
92
|
-
#
|
93
|
-
# ---
|
94
|
-
# * GSL::Fit::linear_est(x, c0, c1, c00, c01, c11)
|
95
|
-
# * GSL::Fit::linear_est(x, [c0, c1, c00, c01, c11])
|
96
|
-
#
|
97
|
-
# This function uses the best-fit linear regression coefficients <tt>c0,c1</tt> and
|
98
|
-
# their estimated covariance <tt>cov00,cov01,cov11</tt> to compute the fitted function
|
99
|
-
# and its standard deviation for the model Y = c_0 + c_1 X at the point <tt>x</tt>.
|
100
|
-
# The returned value is an array of <tt>[y, yerr]</tt>.
|
101
|
-
#
|
102
|
-
# == Linear fitting without a constant term
|
103
|
-
# ---
|
104
|
-
# * GSL::Fit::mul(x, y)
|
105
|
-
#
|
106
|
-
# This function computes the best-fit linear regression coefficient <tt>c1</tt>
|
107
|
-
# of the model Y = c1 X for the datasets <tt>(x, y)</tt>, two vectors of
|
108
|
-
# equal length with stride 1. This returns an array of 4 elements,
|
109
|
-
# <tt>[c1, cov11, chisq, status]</tt>.
|
110
|
-
#
|
111
|
-
# ---
|
112
|
-
# * GSL::Fit::wmul(x, w, y)
|
113
|
-
#
|
114
|
-
# This function computes the best-fit linear regression coefficient <tt>c1</tt>
|
115
|
-
# of the model Y = c_1 X for the weighted datasets <tt>(x, y)</tt>. The vector
|
116
|
-
# <tt>w</tt> specifies the weight of each datapoint. The weight is the reciprocal
|
117
|
-
# of the variance for each datapoint in <tt>y</tt>.
|
118
|
-
#
|
119
|
-
# ---
|
120
|
-
# * GSL::Fit::mul_est(x, c1, c11)
|
121
|
-
# * GSL::Fit::mul_est(x, [c1, c11])
|
122
|
-
#
|
123
|
-
# This function uses the best-fit linear regression coefficient <tt>c1</tt>
|
124
|
-
# and its estimated covariance <tt>cov11</tt> to compute the fitted function
|
125
|
-
# <tt>y</tt> and its standard deviation <tt>y_err</tt>
|
126
|
-
# for the model Y = c_1 X at the point <tt>x</tt>.
|
127
|
-
# The returned value is an array of <tt>[y, yerr]</tt>.
|
128
|
-
#
|
129
|
-
# == Multi-parameter fitting
|
130
|
-
# === Workspace class
|
131
|
-
# ---
|
132
|
-
# * GSL::MultiFit::Workspace.alloc(n, p)
|
133
|
-
#
|
134
|
-
# This creates a workspace for fitting a model to <tt>n</tt>
|
135
|
-
# observations using <tt>p</tt> parameters.
|
136
|
-
#
|
137
|
-
# === Module functions
|
138
|
-
# ---
|
139
|
-
# * GSL::MultiFit::linear(X, y, work)
|
140
|
-
# * GSL::MultiFit::linear(X, y)
|
141
|
-
#
|
142
|
-
# This function computes the best-fit parameters <tt>c</tt> of the model <tt>y = X c</tt>
|
143
|
-
# for the observations <tt>y</tt> and the matrix of predictor variables <tt>X</tt>.
|
144
|
-
# The variance-covariance matrix of the model parameters <tt>cov</tt> is estimated
|
145
|
-
# from the scatter of the observations about the best-fit. The sum of squares
|
146
|
-
# of the residuals from the best-fit is also calculated. The returned value is
|
147
|
-
# an array of 4 elements, <tt>[c, cov, chisq, status]</tt>, where <tt>c</tt> is a
|
148
|
-
# {GSL::Vector}[link:rdoc/vector_rdoc.html] object which contains the best-fit parameters,
|
149
|
-
# and <tt>cov</tt> is the variance-covariance matrix as a
|
150
|
-
# {GSL::Matrix}[link:rdoc/matrix_rdoc.html] object.
|
151
|
-
#
|
152
|
-
# The best-fit is found by singular value decomposition of the matrix <tt>X</tt>
|
153
|
-
# using the workspace provided in <tt>work</tt> (optional, if not given, it is allocated
|
154
|
-
# internally).
|
155
|
-
# The modified Golub-Reinsch SVD algorithm is used, with column scaling to improve
|
156
|
-
# the accuracy of the singular values. Any components which have zero singular
|
157
|
-
# value (to machine precision) are discarded from the fit.
|
158
|
-
#
|
159
|
-
# ---
|
160
|
-
# * GSL::MultiFit::wlinear(X, w, y, work)
|
161
|
-
# * GSL::MultiFit::wlinear(X, w, y)
|
162
|
-
#
|
163
|
-
# This function computes the best-fit parameters <tt>c</tt> of the model
|
164
|
-
# <tt>y = X c</tt> for the observations <tt>y</tt> and the matrix of predictor
|
165
|
-
# variables <tt>X</tt>. The covariance matrix of the model parameters
|
166
|
-
# <tt>cov</tt> is estimated from the weighted data. The weighted sum of
|
167
|
-
# squares of the residuals from the best-fit is also calculated.
|
168
|
-
# The returned value is an array of 4 elements,
|
169
|
-
# <tt>[c: Vector, cov: Matrix, chisq: Float, status: Fixnum]</tt>.
|
170
|
-
# The best-fit is found by singular value decomposition of the matrix <tt>X</tt>
|
171
|
-
# using the workspace provided in <tt>work</tt> (optional). Any components
|
172
|
-
# which have
|
173
|
-
# zero singular value (to machine precision) are discarded from the fit.
|
174
|
-
#
|
175
|
-
# ---
|
176
|
-
# * GSL::MultiFit::linear_est(x, c, cov)
|
177
|
-
#
|
178
|
-
# (GSL-1.8 or later) This method uses the best-fit multilinear regression coefficients <tt>c</tt> and their covariance matrix <tt>cov</tt> to compute the fitted function value <tt>y</tt> and its standard deviation <tt>y_err</tt> for the model <tt>y = x.c</tt> at the point <tt>x</tt>. This returns an array [<tt>y, y_err</tt>].
|
179
|
-
# ---
|
180
|
-
# * GSL::MultiFit::linear_residuals(X, y, c[, r])
|
181
|
-
#
|
182
|
-
# (GSL-1.11 or later) This method computes the vector of residuals <tt>r = y - X c</tt> for the observations <tt>y</tt>, coefficients <tt>c</tt> and matrix of predictor variables <tt>X</tt>, and returns <tt>r</tt>.
|
183
|
-
#
|
184
|
-
# === Higer level interface
|
185
|
-
#
|
186
|
-
# ---
|
187
|
-
# * GSL::MultiFit::polyfit(x, y, order)
|
188
|
-
#
|
189
|
-
# Finds the coefficient of a polynomial of order <tt>order</tt>
|
190
|
-
# that fits the vector data (<tt>x, y</tt>) in a least-square sense.
|
191
|
-
#
|
192
|
-
# Example:
|
193
|
-
# #!/usr/bin/env ruby
|
194
|
-
# require("gsl")
|
195
|
-
#
|
196
|
-
# x = Vector[1, 2, 3, 4, 5]
|
197
|
-
# y = Vector[5.5, 43.1, 128, 290.7, 498.4]
|
198
|
-
# # The results are stored in a polynomial "coef"
|
199
|
-
# coef, err, chisq, status = MultiFit.polyfit(x, y, 3)
|
200
|
-
#
|
201
|
-
# x2 = Vector.linspace(1, 5, 20)
|
202
|
-
# graph([x, y], [x2, coef.eval(x2)], "-C -g 3 -S 4")
|
203
|
-
#
|
204
|
-
# == Examples
|
205
|
-
# === Linear regression
|
206
|
-
# #!/usr/bin/env ruby
|
207
|
-
# require("gsl")
|
208
|
-
# include GSL::Fit
|
209
|
-
#
|
210
|
-
# n = 4
|
211
|
-
# x = Vector.alloc(1970, 1980, 1990, 2000)
|
212
|
-
# y = Vector.alloc(12, 11, 14, 13)
|
213
|
-
# w = Vector.alloc(0.1, 0.2, 0.3, 0.4)
|
214
|
-
#
|
215
|
-
# #for i in 0...n do
|
216
|
-
# # printf("%e %e %e\n", x[i], y[i], 1.0/Math::sqrt(w[i]))
|
217
|
-
# #end
|
218
|
-
#
|
219
|
-
# c0, c1, cov00, cov01, cov11, chisq = wlinear(x, w, y)
|
220
|
-
#
|
221
|
-
# printf("# best fit: Y = %g + %g X\n", c0, c1);
|
222
|
-
# printf("# covariance matrix:\n");
|
223
|
-
# printf("# [ %g, %g\n# %g, %g]\n",
|
224
|
-
# cov00, cov01, cov01, cov11);
|
225
|
-
# printf("# chisq = %g\n", chisq);
|
226
|
-
#
|
227
|
-
# === Exponential fitting
|
228
|
-
# #!/usr/bin/env ruby
|
229
|
-
# require("gsl")
|
230
|
-
#
|
231
|
-
# # Create data
|
232
|
-
# r = Rng.alloc("knuthran")
|
233
|
-
# a = 2.0
|
234
|
-
# b = -1.0
|
235
|
-
# sigma = 0.01
|
236
|
-
# N = 10
|
237
|
-
# x = Vector.linspace(0, 5, N)
|
238
|
-
# y = a*Sf::exp(b*x) + sigma*r.gaussian
|
239
|
-
#
|
240
|
-
# # Fitting
|
241
|
-
# a2, b2, = Fit.linear(x, Sf::log(y))
|
242
|
-
# x2 = Vector.linspace(0, 5, 20)
|
243
|
-
# A = Sf::exp(a2)
|
244
|
-
# printf("Expect: a = %f, b = %f\n", a, b)
|
245
|
-
# printf("Result: a = %f, b = %f\n", A, b2)
|
246
|
-
# graph([x, y], [x2, A*Sf::exp(b2*x2)], "-C -g 3 -S 4")
|
247
|
-
#
|
248
|
-
# === Multi-parameter fitting
|
249
|
-
# #!/usr/bin/env ruby
|
250
|
-
# require("gsl")
|
251
|
-
# include GSL::MultiFit
|
252
|
-
#
|
253
|
-
# Rng.env_setup()
|
254
|
-
#
|
255
|
-
# r = GSL::Rng.alloc(Rng::DEFAULT)
|
256
|
-
# n = 19
|
257
|
-
# dim = 3
|
258
|
-
# X = Matrix.alloc(n, dim)
|
259
|
-
# y = Vector.alloc(n)
|
260
|
-
# w = Vector.alloc(n)
|
261
|
-
#
|
262
|
-
# a = 0.1
|
263
|
-
# for i in 0...n
|
264
|
-
# y0 = Math::exp(a)
|
265
|
-
# sigma = 0.1*y0
|
266
|
-
# val = r.gaussian(sigma)
|
267
|
-
# X.set(i, 0, 1.0)
|
268
|
-
# X.set(i, 1, a)
|
269
|
-
# X.set(i, 2, a*a)
|
270
|
-
# y[i] = y0 + val
|
271
|
-
# w[i] = 1.0/(sigma*sigma)
|
272
|
-
# #printf("%g %g %g\n", a, y[i], sigma)
|
273
|
-
# a += 0.1
|
274
|
-
# end
|
275
|
-
#
|
276
|
-
# c, cov, chisq, status = MultiFit.wlinear(X, w, y)
|
277
|
-
#
|
278
|
-
# {prev}[link:rdoc/multimin_rdoc.html]
|
279
|
-
# {next}[link:rdoc/nonlinearfit_rdoc.html]
|
280
|
-
#
|
281
|
-
# {Reference index}[link:rdoc/ref_rdoc.html]
|
282
|
-
# {top}[link:index.html]
|
283
|
-
#
|
284
|
-
#
|
data/rdoc/function.rdoc
DELETED
@@ -1,94 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# = GSL::Function class
|
3
|
-
#
|
4
|
-
# == Class Methods
|
5
|
-
#
|
6
|
-
# ---
|
7
|
-
# * GSL::Function.alloc
|
8
|
-
#
|
9
|
-
# Constructor.
|
10
|
-
#
|
11
|
-
# * ex:
|
12
|
-
# require("gsl")
|
13
|
-
# f = GSL::Function.alloc { |x| sin(x) }
|
14
|
-
#
|
15
|
-
# The value of the function is calculated by the method <tt>Function#eval</tt>, as
|
16
|
-
#
|
17
|
-
# p f.eval(x)
|
18
|
-
#
|
19
|
-
# The function can have parameters of arbitrary numbers. Here is an
|
20
|
-
# example in case of exponential function <tt>f(x; a, b) = a*exp(-b*x)</tt>.
|
21
|
-
#
|
22
|
-
# f = GSL::Function.alloc { |x, params| # x: a scalar, params: an array
|
23
|
-
# a = params[0]; b = params[1]
|
24
|
-
# a*exp(-b*x)
|
25
|
-
# }
|
26
|
-
# To evaluate the function <tt>f(x) = 2*exp(-3*x)</tt>,
|
27
|
-
# f.set_params([2, 3])
|
28
|
-
# f.eval(x)
|
29
|
-
#
|
30
|
-
# == Methods
|
31
|
-
#
|
32
|
-
# ---
|
33
|
-
# * GSL::Function#eval(x)
|
34
|
-
# * GSL::Function#call(x)
|
35
|
-
# * GSL::Function#at(x)
|
36
|
-
# * \GSL::Function#[x]
|
37
|
-
#
|
38
|
-
# These methods return a value of the function at <tt>x</tt>.
|
39
|
-
# p f.eval(2.5)
|
40
|
-
# p f.call(2.5)
|
41
|
-
# p f[2.5]
|
42
|
-
# The argument <tt>x</tt> can be a scalar, a Vector, Matrix, Array or Range.
|
43
|
-
#
|
44
|
-
# ---
|
45
|
-
# * GSL::Function#set { |x| ... }
|
46
|
-
# * GSL::Function#set(proc, params)
|
47
|
-
#
|
48
|
-
# This method sets or resets the procedure of <tt>self</tt>, as
|
49
|
-
#
|
50
|
-
# f = GSL::Function.alloc { |x| sin(x) }
|
51
|
-
# p f.eval(1.0) <- sin(1.0)
|
52
|
-
# f.set { |x| cos(x) }
|
53
|
-
# p f.eval(1.0) <- cos(1.0)
|
54
|
-
#
|
55
|
-
# ---
|
56
|
-
# * GSL::Function#set_params(params)
|
57
|
-
#
|
58
|
-
# This set the constant parameters of the function.
|
59
|
-
#
|
60
|
-
# == Graph
|
61
|
-
# ---
|
62
|
-
# * GSL::Function#graph(x[, options])
|
63
|
-
#
|
64
|
-
# This method uses <tt>GNU graph</tt> to plot the function <tt>self</tt>.
|
65
|
-
# The argument <tt>x</tt> is given by a <tt>GSL::Vector</tt> or an <tt>Array</tt>.
|
66
|
-
#
|
67
|
-
# Ex: Plot sin(x)
|
68
|
-
# f = Function.alloc { |x| Math::sin(x) }
|
69
|
-
# x = Vector.linspace(0, 2*M_PI, 50)
|
70
|
-
# f.graph(x, "-T X -g 3 -C -L 'sin(x)'")
|
71
|
-
#
|
72
|
-
#
|
73
|
-
# == Example
|
74
|
-
# A quadratic function, f(x) = x^2 + 2x + 3.
|
75
|
-
#
|
76
|
-
# >> require("gsl")
|
77
|
-
# => true
|
78
|
-
# >> f = Function.alloc { |x, param| x*x + param[0]*x + param[1] }
|
79
|
-
# => #<GSL::Function:0x6e8eb0>
|
80
|
-
# >> f.set_params(2, 3)
|
81
|
-
# => #<GSL::Function:0x6e8eb0>
|
82
|
-
# >> f.eval(2) <--- Scalar
|
83
|
-
# => 11
|
84
|
-
# >> f.eval(1..4) <--- Range
|
85
|
-
# => [6.0, 11.0, 18.0, 27.0]
|
86
|
-
# >> f.eval([1, 2, 3]) <--- Array
|
87
|
-
# => [6.0, 11.0, 18.0]
|
88
|
-
# >> f.eval(Matrix.alloc([1, 2], [3, 4])) <--- GSL::Matrix
|
89
|
-
# [ 6.000e+00 1.100e+01
|
90
|
-
# 1.800e+01 2.700e+01 ]
|
91
|
-
# => #<GSL::Matrix:0x6dd1b4>
|
92
|
-
#
|
93
|
-
# {back}[link:index.html]
|
94
|
-
#
|
data/rdoc/graph.rdoc
DELETED
@@ -1,137 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# = Graphics
|
3
|
-
#
|
4
|
-
# The GSL library itself does not include any utilities to visualize computation results.
|
5
|
-
# Some examples found in the GSL manual use
|
6
|
-
# {GNU graph}[https://gnu.org/software/plotutils/plotutils.html]
|
7
|
-
# to show the results: the data are stored in data files, and then
|
8
|
-
# displayed by using <tt>GNU graph</tt>.
|
9
|
-
# Ruby/GSL provides simple interfaces to <tt>GNU graph</tt>
|
10
|
-
# to plot vectors or histograms directly without storing them in data files.
|
11
|
-
# Although the methods described below do not cover all the functionalities
|
12
|
-
# of <tt>GNU graph</tt>, these are useful to check calculations and get some
|
13
|
-
# speculations on the data.
|
14
|
-
#
|
15
|
-
#
|
16
|
-
# == Plotting vectors
|
17
|
-
# ---
|
18
|
-
# * Vector.graph(y[, options])
|
19
|
-
# * Vector.graph(nil, y[, y2, y3, ..., options])
|
20
|
-
# * Vector.graph(x, y1, y2, ...., options)
|
21
|
-
# * Vector.graph([x1, y1], [x2, y2], ...., options)
|
22
|
-
# * GSL::graph(y[, options])
|
23
|
-
# * GSL::graph(nil, y[, y2, y3, ..., options])
|
24
|
-
# * GSL::graph(x, y1, y2, ...., options)
|
25
|
-
# * GSL::graph([x1, y1], [x2, y2], ...., options)
|
26
|
-
#
|
27
|
-
# These methods use the <tt>GNU graph</tt> utility to plot vectors.
|
28
|
-
# The options <tt>options</tt> given by a <tt>String</tt>. If <tt>nil</tt> is
|
29
|
-
# given for <tt>ARGV[0]</tt>, auto-generated abscissa are used.
|
30
|
-
#
|
31
|
-
# Ex:
|
32
|
-
# >> require("gsl")
|
33
|
-
# >> x = Vector.linspace(0, 2.0*M_PI, 20)
|
34
|
-
# >> c = Sf::cos(x)
|
35
|
-
# >> s = Sf::sin(x)
|
36
|
-
# >> Vector.graph(x, c, s, "-T X -C -L 'cos(x), sin(x)'")
|
37
|
-
#
|
38
|
-
# This is equivalent to <tt>Vector.graph([x, c], [x, s], "-T X -C -L 'cos(x), sin(x)'")</tt>.
|
39
|
-
#
|
40
|
-
# To create a PNG file,
|
41
|
-
# >> Vector.graph(x, c, s, "-T png -C -L 'cos(x), sin(x)' > fig.png")
|
42
|
-
#
|
43
|
-
# ---
|
44
|
-
# * GSL::Vector#graph(options)
|
45
|
-
# * GSL::Vector#graph(x[, options])
|
46
|
-
#
|
47
|
-
# These methods plot the vector using the GNU <tt>graph</tt>
|
48
|
-
# command. The options for the <tt>graph</tt> command are given by a <tt>String</tt>.
|
49
|
-
#
|
50
|
-
# Ex1:
|
51
|
-
# >> x = Vector[1..5]
|
52
|
-
# [ 1.000e+00 2.000e+00 3.000e+00 4.000e+00 5.000e+00 ]
|
53
|
-
# >> x.graph("-m 2") # dotted line
|
54
|
-
# >> x.graph("-C -l x") # color, x log scale
|
55
|
-
# >> x.graph("-X \"X axis\"") # with an axis label
|
56
|
-
#
|
57
|
-
# Ex2: x-y plot
|
58
|
-
# >> require("gsl")
|
59
|
-
# >> x = Vector.linspace(0, 2.0*M_PI, 20)
|
60
|
-
# >> c = Sf::cos(x)
|
61
|
-
# >> c.graph(x, "-T X -C -g 3 -L 'cos(x)'")
|
62
|
-
#
|
63
|
-
# == Drawing histogram
|
64
|
-
# ---
|
65
|
-
# * GSL::Histogram#graph(options)
|
66
|
-
#
|
67
|
-
# This method uses the GNU plotutils <tt>graph</tt> to draw a histogram.
|
68
|
-
#
|
69
|
-
# == Plotting Functions
|
70
|
-
# ---
|
71
|
-
# * GSL::Function#graph(x[, options])
|
72
|
-
#
|
73
|
-
# This method uses <tt>GNU graph</tt> to plot the function <tt>self</tt>.
|
74
|
-
# The argument <tt>x</tt> is given by a <tt>GSL::Vector</tt> or an <tt>Array</tt>.
|
75
|
-
#
|
76
|
-
# Ex: Plot sin(x)
|
77
|
-
# f = Function.alloc { |x| Math::sin(x) }
|
78
|
-
# x = Vector.linspace(0, 2*M_PI, 50)
|
79
|
-
# f.graph(x, "-T X -g 3 -C -L 'sin(x)'")
|
80
|
-
#
|
81
|
-
# == Other way
|
82
|
-
# The code below uses <tt>GNUPLOT</tt> directly to plot vectors.
|
83
|
-
#
|
84
|
-
# #!/usr/bin/env ruby
|
85
|
-
# require("gsl")
|
86
|
-
# x = Vector.linspace(0, 2*M_PI, 50)
|
87
|
-
# y = Sf::sin(x)
|
88
|
-
# IO.popen("gnuplot -persist", "w") do |io|
|
89
|
-
# io.print("plot '-'\n")
|
90
|
-
# x.each_index do |i|
|
91
|
-
# io.printf("%e %e\n", x[i], y[i])
|
92
|
-
# end
|
93
|
-
# io.print("e\n")
|
94
|
-
# io.flush
|
95
|
-
# end
|
96
|
-
#
|
97
|
-
# It is also possible to use the Ruby Gnuplot library.
|
98
|
-
# require("gnuplot")
|
99
|
-
# require("gsl")
|
100
|
-
# require("gsl/gnuplot");
|
101
|
-
#
|
102
|
-
# Gnuplot.open do |gp|
|
103
|
-
# Gnuplot::Plot.new( gp ) do |plot|
|
104
|
-
#
|
105
|
-
# plot.xrange "[0:10]"
|
106
|
-
# plot.yrange "[-1.5:1.5]"
|
107
|
-
# plot.title "Sin Wave Example"
|
108
|
-
# plot.xlabel "x"
|
109
|
-
# plot.ylabel "sin(x)"
|
110
|
-
# plot.pointsize 3
|
111
|
-
# plot.grid
|
112
|
-
#
|
113
|
-
# x = GSL::Vector[0..10]
|
114
|
-
# y = GSL::Sf::sin(x)
|
115
|
-
#
|
116
|
-
# plot.data = [
|
117
|
-
# Gnuplot::DataSet.new( "sin(x)" ) { |ds|
|
118
|
-
# ds.with = "lines"
|
119
|
-
# ds.title = "String function"
|
120
|
-
# ds.linewidth = 4
|
121
|
-
# },
|
122
|
-
#
|
123
|
-
# Gnuplot::DataSet.new( [x, y] ) { |ds|
|
124
|
-
# ds.with = "linespoints"
|
125
|
-
# ds.title = "Array data"
|
126
|
-
# }
|
127
|
-
# ]
|
128
|
-
#
|
129
|
-
# end
|
130
|
-
# end
|
131
|
-
#
|
132
|
-
# {prev}[link:rdoc/const_rdoc.html]
|
133
|
-
#
|
134
|
-
# {Reference index}[link:rdoc/ref_rdoc.html]
|
135
|
-
# {top}[link:index.html]
|
136
|
-
#
|
137
|
-
#
|