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.
Files changed (612) hide show
  1. checksums.yaml +4 -4
  2. data/rb-gsl.gemspec +5 -10
  3. metadata +10 -713
  4. data/.gitignore +0 -12
  5. data/.travis.yml +0 -24
  6. data/AUTHORS +0 -12
  7. data/COPYING +0 -341
  8. data/ChangeLog +0 -621
  9. data/Gemfile +0 -4
  10. data/README.md +0 -77
  11. data/Rakefile +0 -20
  12. data/THANKS +0 -17
  13. data/examples/alf/alf.gp +0 -15
  14. data/examples/alf/alf.rb +0 -32
  15. data/examples/blas/blas.rb +0 -13
  16. data/examples/blas/dnrm2.rb +0 -16
  17. data/examples/blas/level1.rb +0 -81
  18. data/examples/blas/level2.rb +0 -11
  19. data/examples/blas/level3.rb +0 -12
  20. data/examples/bspline.rb +0 -57
  21. data/examples/cdf.rb +0 -16
  22. data/examples/cheb.rb +0 -21
  23. data/examples/combination.rb +0 -23
  24. data/examples/complex/RC-lpf.rb +0 -47
  25. data/examples/complex/add.rb +0 -36
  26. data/examples/complex/coerce.rb +0 -14
  27. data/examples/complex/complex.rb +0 -25
  28. data/examples/complex/fpmi.rb +0 -70
  29. data/examples/complex/functions.rb +0 -77
  30. data/examples/complex/michelson.rb +0 -36
  31. data/examples/complex/mul.rb +0 -28
  32. data/examples/complex/oscillator.rb +0 -17
  33. data/examples/complex/set.rb +0 -37
  34. data/examples/const/physconst.rb +0 -151
  35. data/examples/const/travel.rb +0 -45
  36. data/examples/deriv/demo.rb +0 -13
  37. data/examples/deriv/deriv.rb +0 -36
  38. data/examples/deriv/diff.rb +0 -35
  39. data/examples/dht.rb +0 -42
  40. data/examples/dirac.rb +0 -56
  41. data/examples/eigen/eigen.rb +0 -34
  42. data/examples/eigen/herm.rb +0 -22
  43. data/examples/eigen/narray.rb +0 -9
  44. data/examples/eigen/nonsymm.rb +0 -37
  45. data/examples/eigen/nonsymmv.rb +0 -43
  46. data/examples/eigen/qhoscillator.gp +0 -35
  47. data/examples/eigen/qhoscillator.rb +0 -90
  48. data/examples/eigen/vander.rb +0 -41
  49. data/examples/fft/fft.rb +0 -17
  50. data/examples/fft/fft2.rb +0 -17
  51. data/examples/fft/forward.rb +0 -25
  52. data/examples/fft/forward2.rb +0 -26
  53. data/examples/fft/radix2.rb +0 -18
  54. data/examples/fft/real-halfcomplex.rb +0 -33
  55. data/examples/fft/real-halfcomplex2.rb +0 -30
  56. data/examples/fft/realradix2.rb +0 -19
  57. data/examples/fft/sunspot.dat +0 -256
  58. data/examples/fft/sunspot.rb +0 -16
  59. data/examples/fit/expdata.dat +0 -20
  60. data/examples/fit/expfit.rb +0 -31
  61. data/examples/fit/gaussfit.rb +0 -29
  62. data/examples/fit/gaussian_2peaks.rb +0 -34
  63. data/examples/fit/hillfit.rb +0 -40
  64. data/examples/fit/lognormal.rb +0 -26
  65. data/examples/fit/lorentzfit.rb +0 -22
  66. data/examples/fit/multifit.rb +0 -72
  67. data/examples/fit/ndlinear.rb +0 -133
  68. data/examples/fit/nonlinearfit.rb +0 -89
  69. data/examples/fit/plot.gp +0 -36
  70. data/examples/fit/polyfit.rb +0 -9
  71. data/examples/fit/powerfit.rb +0 -21
  72. data/examples/fit/sigmoidfit.rb +0 -40
  73. data/examples/fit/sinfit.rb +0 -22
  74. data/examples/fit/wlinear.rb +0 -46
  75. data/examples/fresnel.rb +0 -11
  76. data/examples/function/function.rb +0 -36
  77. data/examples/function/log.rb +0 -7
  78. data/examples/function/min.rb +0 -33
  79. data/examples/function/sin.rb +0 -10
  80. data/examples/function/synchrotron.rb +0 -18
  81. data/examples/gallery/butterfly.rb +0 -7
  82. data/examples/gallery/cayley.rb +0 -12
  83. data/examples/gallery/cornu.rb +0 -23
  84. data/examples/gallery/eight.rb +0 -11
  85. data/examples/gallery/koch.rb +0 -40
  86. data/examples/gallery/lemniscate.rb +0 -11
  87. data/examples/gallery/polar.rb +0 -11
  88. data/examples/gallery/rgplot/cossin.rb +0 -35
  89. data/examples/gallery/rgplot/rgplot.replaced +0 -0
  90. data/examples/gallery/rgplot/roesller.rb +0 -55
  91. data/examples/gallery/roesller.rb +0 -39
  92. data/examples/gallery/scarabaeus.rb +0 -14
  93. data/examples/histogram/cauchy.rb +0 -27
  94. data/examples/histogram/cauchy.sh +0 -2
  95. data/examples/histogram/exponential.rb +0 -19
  96. data/examples/histogram/gauss.rb +0 -16
  97. data/examples/histogram/gsl-histogram.rb +0 -40
  98. data/examples/histogram/histo2d.rb +0 -31
  99. data/examples/histogram/histo3d.rb +0 -34
  100. data/examples/histogram/histogram-pdf.rb +0 -27
  101. data/examples/histogram/histogram.rb +0 -26
  102. data/examples/histogram/integral.rb +0 -28
  103. data/examples/histogram/poisson.rb +0 -27
  104. data/examples/histogram/power.rb +0 -25
  105. data/examples/histogram/rebin.rb +0 -17
  106. data/examples/histogram/smp.dat +0 -5
  107. data/examples/histogram/xexp.rb +0 -21
  108. data/examples/integration/ahmed.rb +0 -21
  109. data/examples/integration/cosmology.rb +0 -75
  110. data/examples/integration/friedmann.gp +0 -16
  111. data/examples/integration/friedmann.rb +0 -35
  112. data/examples/integration/gamma-zeta.rb +0 -35
  113. data/examples/integration/integration.rb +0 -22
  114. data/examples/integration/qag.rb +0 -8
  115. data/examples/integration/qag2.rb +0 -14
  116. data/examples/integration/qag3.rb +0 -8
  117. data/examples/integration/qagi.rb +0 -28
  118. data/examples/integration/qagi2.rb +0 -49
  119. data/examples/integration/qagiu.rb +0 -29
  120. data/examples/integration/qagp.rb +0 -20
  121. data/examples/integration/qags.rb +0 -14
  122. data/examples/integration/qawc.rb +0 -18
  123. data/examples/integration/qawf.rb +0 -41
  124. data/examples/integration/qawo.rb +0 -29
  125. data/examples/integration/qaws.rb +0 -30
  126. data/examples/integration/qng.rb +0 -17
  127. data/examples/interp/demo.gp +0 -20
  128. data/examples/interp/demo.rb +0 -45
  129. data/examples/interp/interp.rb +0 -37
  130. data/examples/interp/points +0 -10
  131. data/examples/interp/spline.rb +0 -20
  132. data/examples/jacobi/deriv.rb +0 -40
  133. data/examples/jacobi/integrate.rb +0 -34
  134. data/examples/jacobi/interp.rb +0 -43
  135. data/examples/jacobi/jacobi.rb +0 -11
  136. data/examples/linalg/HH.rb +0 -15
  137. data/examples/linalg/HH_narray.rb +0 -13
  138. data/examples/linalg/LQ_solve.rb +0 -73
  139. data/examples/linalg/LU.rb +0 -84
  140. data/examples/linalg/LU2.rb +0 -31
  141. data/examples/linalg/LU_narray.rb +0 -24
  142. data/examples/linalg/PTLQ.rb +0 -47
  143. data/examples/linalg/QR.rb +0 -18
  144. data/examples/linalg/QRPT.rb +0 -47
  145. data/examples/linalg/QR_solve.rb +0 -78
  146. data/examples/linalg/QR_solve_narray.rb +0 -13
  147. data/examples/linalg/SV.rb +0 -16
  148. data/examples/linalg/SV_narray.rb +0 -12
  149. data/examples/linalg/SV_solve.rb +0 -49
  150. data/examples/linalg/chol.rb +0 -29
  151. data/examples/linalg/chol_narray.rb +0 -15
  152. data/examples/linalg/complex.rb +0 -57
  153. data/examples/linalg/invert_narray.rb +0 -10
  154. data/examples/math/const.rb +0 -67
  155. data/examples/math/elementary.rb +0 -35
  156. data/examples/math/functions.rb +0 -41
  157. data/examples/math/inf_nan.rb +0 -34
  158. data/examples/math/minmax.rb +0 -22
  159. data/examples/math/power.rb +0 -18
  160. data/examples/math/test.rb +0 -31
  161. data/examples/matrix/a.dat +0 -0
  162. data/examples/matrix/add.rb +0 -45
  163. data/examples/matrix/b.dat +0 -4
  164. data/examples/matrix/cat.rb +0 -31
  165. data/examples/matrix/colvectors.rb +0 -24
  166. data/examples/matrix/complex.rb +0 -41
  167. data/examples/matrix/det.rb +0 -29
  168. data/examples/matrix/diagonal.rb +0 -23
  169. data/examples/matrix/get_all.rb +0 -159
  170. data/examples/matrix/hilbert.rb +0 -31
  171. data/examples/matrix/iterator.rb +0 -19
  172. data/examples/matrix/matrix.rb +0 -57
  173. data/examples/matrix/minmax.rb +0 -53
  174. data/examples/matrix/mul.rb +0 -39
  175. data/examples/matrix/rand.rb +0 -20
  176. data/examples/matrix/read.rb +0 -29
  177. data/examples/matrix/rowcol.rb +0 -47
  178. data/examples/matrix/set.rb +0 -41
  179. data/examples/matrix/set_all.rb +0 -100
  180. data/examples/matrix/view.rb +0 -32
  181. data/examples/matrix/view_all.rb +0 -148
  182. data/examples/matrix/write.rb +0 -23
  183. data/examples/min.rb +0 -29
  184. data/examples/monte/miser.rb +0 -47
  185. data/examples/monte/monte.rb +0 -47
  186. data/examples/monte/plain.rb +0 -47
  187. data/examples/monte/vegas.rb +0 -46
  188. data/examples/multimin/bundle.rb +0 -66
  189. data/examples/multimin/cqp.rb +0 -109
  190. data/examples/multimin/fdfminimizer.rb +0 -40
  191. data/examples/multimin/fminimizer.rb +0 -41
  192. data/examples/multiroot/demo.rb +0 -36
  193. data/examples/multiroot/fdfsolver.rb +0 -50
  194. data/examples/multiroot/fsolver.rb +0 -33
  195. data/examples/multiroot/fsolver2.rb +0 -32
  196. data/examples/multiroot/fsolver3.rb +0 -26
  197. data/examples/narray/histogram.rb +0 -14
  198. data/examples/narray/mandel.rb +0 -27
  199. data/examples/narray/narray.rb +0 -28
  200. data/examples/narray/narray2.rb +0 -44
  201. data/examples/narray/sf.rb +0 -26
  202. data/examples/ntuple/create.rb +0 -17
  203. data/examples/ntuple/project.rb +0 -31
  204. data/examples/odeiv/binarysystem.gp +0 -23
  205. data/examples/odeiv/binarysystem.rb +0 -104
  206. data/examples/odeiv/demo.gp +0 -24
  207. data/examples/odeiv/demo.rb +0 -69
  208. data/examples/odeiv/demo2.gp +0 -26
  209. data/examples/odeiv/duffing.rb +0 -45
  210. data/examples/odeiv/frei1.rb +0 -109
  211. data/examples/odeiv/frei2.rb +0 -76
  212. data/examples/odeiv/legendre.rb +0 -52
  213. data/examples/odeiv/odeiv.rb +0 -32
  214. data/examples/odeiv/odeiv2.rb +0 -45
  215. data/examples/odeiv/oscillator.rb +0 -42
  216. data/examples/odeiv/sedov.rb +0 -97
  217. data/examples/odeiv/whitedwarf.gp +0 -40
  218. data/examples/odeiv/whitedwarf.rb +0 -158
  219. data/examples/ool/conmin.rb +0 -100
  220. data/examples/ool/gencan.rb +0 -99
  221. data/examples/ool/pgrad.rb +0 -100
  222. data/examples/ool/spg.rb +0 -100
  223. data/examples/pdf/bernoulli.rb +0 -5
  224. data/examples/pdf/beta.rb +0 -7
  225. data/examples/pdf/binomiral.rb +0 -10
  226. data/examples/pdf/cauchy.rb +0 -6
  227. data/examples/pdf/chisq.rb +0 -8
  228. data/examples/pdf/exponential.rb +0 -7
  229. data/examples/pdf/exppow.rb +0 -6
  230. data/examples/pdf/fdist.rb +0 -7
  231. data/examples/pdf/flat.rb +0 -7
  232. data/examples/pdf/gamma.rb +0 -8
  233. data/examples/pdf/gauss-tail.rb +0 -5
  234. data/examples/pdf/gauss.rb +0 -6
  235. data/examples/pdf/geometric.rb +0 -5
  236. data/examples/pdf/gumbel.rb +0 -6
  237. data/examples/pdf/hypergeometric.rb +0 -11
  238. data/examples/pdf/landau.rb +0 -5
  239. data/examples/pdf/laplace.rb +0 -7
  240. data/examples/pdf/logarithmic.rb +0 -5
  241. data/examples/pdf/logistic.rb +0 -6
  242. data/examples/pdf/lognormal.rb +0 -6
  243. data/examples/pdf/neg-binomiral.rb +0 -10
  244. data/examples/pdf/pareto.rb +0 -7
  245. data/examples/pdf/pascal.rb +0 -10
  246. data/examples/pdf/poisson.rb +0 -5
  247. data/examples/pdf/rayleigh-tail.rb +0 -6
  248. data/examples/pdf/rayleigh.rb +0 -6
  249. data/examples/pdf/tdist.rb +0 -6
  250. data/examples/pdf/weibull.rb +0 -8
  251. data/examples/permutation/ex1.rb +0 -22
  252. data/examples/permutation/permutation.rb +0 -16
  253. data/examples/poly/bell.rb +0 -6
  254. data/examples/poly/bessel.rb +0 -6
  255. data/examples/poly/cheb.rb +0 -6
  256. data/examples/poly/cheb_II.rb +0 -6
  257. data/examples/poly/cubic.rb +0 -9
  258. data/examples/poly/demo.rb +0 -20
  259. data/examples/poly/eval.rb +0 -28
  260. data/examples/poly/eval_derivs.rb +0 -14
  261. data/examples/poly/fit.rb +0 -21
  262. data/examples/poly/hermite.rb +0 -6
  263. data/examples/poly/poly.rb +0 -13
  264. data/examples/poly/quadratic.rb +0 -25
  265. data/examples/random/diffusion.rb +0 -34
  266. data/examples/random/gaussian.rb +0 -9
  267. data/examples/random/generator.rb +0 -27
  268. data/examples/random/hdsobol.rb +0 -21
  269. data/examples/random/poisson.rb +0 -9
  270. data/examples/random/qrng.rb +0 -19
  271. data/examples/random/randomwalk.rb +0 -37
  272. data/examples/random/randomwalk2d.rb +0 -19
  273. data/examples/random/rayleigh.rb +0 -36
  274. data/examples/random/rng.rb +0 -33
  275. data/examples/random/rngextra.rb +0 -14
  276. data/examples/roots/bisection.rb +0 -25
  277. data/examples/roots/brent.rb +0 -43
  278. data/examples/roots/demo.rb +0 -30
  279. data/examples/roots/newton.rb +0 -46
  280. data/examples/roots/recombination.gp +0 -11
  281. data/examples/roots/recombination.rb +0 -61
  282. data/examples/roots/steffenson.rb +0 -48
  283. data/examples/sf/ShiChi.rb +0 -6
  284. data/examples/sf/SiCi.rb +0 -6
  285. data/examples/sf/airy_Ai.rb +0 -8
  286. data/examples/sf/airy_Bi.rb +0 -8
  287. data/examples/sf/bessel_IK.rb +0 -12
  288. data/examples/sf/bessel_JY.rb +0 -13
  289. data/examples/sf/beta_inc.rb +0 -9
  290. data/examples/sf/clausen.rb +0 -6
  291. data/examples/sf/dawson.rb +0 -5
  292. data/examples/sf/debye.rb +0 -9
  293. data/examples/sf/dilog.rb +0 -6
  294. data/examples/sf/ellint.rb +0 -6
  295. data/examples/sf/expint.rb +0 -8
  296. data/examples/sf/fermi.rb +0 -10
  297. data/examples/sf/gamma_inc_P.rb +0 -9
  298. data/examples/sf/gegenbauer.rb +0 -8
  299. data/examples/sf/hyperg.rb +0 -7
  300. data/examples/sf/laguerre.rb +0 -19
  301. data/examples/sf/lambertW.rb +0 -5
  302. data/examples/sf/legendre_P.rb +0 -10
  303. data/examples/sf/lngamma.rb +0 -5
  304. data/examples/sf/psi.rb +0 -54
  305. data/examples/sf/sphbessel.gp +0 -27
  306. data/examples/sf/sphbessel.rb +0 -30
  307. data/examples/sf/synchrotron.rb +0 -5
  308. data/examples/sf/transport.rb +0 -10
  309. data/examples/sf/zetam1.rb +0 -5
  310. data/examples/siman.rb +0 -44
  311. data/examples/sort/heapsort.rb +0 -23
  312. data/examples/sort/heapsort_vector_complex.rb +0 -21
  313. data/examples/sort/sort.rb +0 -23
  314. data/examples/sort/sort2.rb +0 -16
  315. data/examples/stats/mean.rb +0 -17
  316. data/examples/stats/statistics.rb +0 -18
  317. data/examples/stats/test.rb +0 -9
  318. data/examples/sum.rb +0 -34
  319. data/examples/tamu_anova.rb +0 -18
  320. data/examples/vector/a.dat +0 -0
  321. data/examples/vector/add.rb +0 -56
  322. data/examples/vector/b.dat +0 -4
  323. data/examples/vector/c.dat +0 -3
  324. data/examples/vector/collect.rb +0 -26
  325. data/examples/vector/compare.rb +0 -28
  326. data/examples/vector/complex.rb +0 -51
  327. data/examples/vector/complex_get_all.rb +0 -85
  328. data/examples/vector/complex_set_all.rb +0 -131
  329. data/examples/vector/complex_view_all.rb +0 -77
  330. data/examples/vector/connect.rb +0 -22
  331. data/examples/vector/decimate.rb +0 -38
  332. data/examples/vector/diff.rb +0 -31
  333. data/examples/vector/filescan.rb +0 -17
  334. data/examples/vector/floor.rb +0 -23
  335. data/examples/vector/get_all.rb +0 -82
  336. data/examples/vector/gnuplot.rb +0 -38
  337. data/examples/vector/graph.rb +0 -28
  338. data/examples/vector/histogram.rb +0 -22
  339. data/examples/vector/linspace.rb +0 -24
  340. data/examples/vector/log.rb +0 -17
  341. data/examples/vector/logic.rb +0 -33
  342. data/examples/vector/logspace.rb +0 -25
  343. data/examples/vector/minmax.rb +0 -47
  344. data/examples/vector/mul.rb +0 -49
  345. data/examples/vector/narray.rb +0 -46
  346. data/examples/vector/read.rb +0 -29
  347. data/examples/vector/set.rb +0 -35
  348. data/examples/vector/set_all.rb +0 -121
  349. data/examples/vector/smpv.dat +0 -15
  350. data/examples/vector/test.rb +0 -43
  351. data/examples/vector/test_gslblock.rb +0 -58
  352. data/examples/vector/vector.rb +0 -110
  353. data/examples/vector/view.rb +0 -35
  354. data/examples/vector/view_all.rb +0 -73
  355. data/examples/vector/where.rb +0 -29
  356. data/examples/vector/write.rb +0 -24
  357. data/examples/vector/zip.rb +0 -34
  358. data/examples/wavelet/ecg.dat +0 -256
  359. data/examples/wavelet/wavelet1.rb +0 -50
  360. data/ext/gsl_native/alf.c +0 -206
  361. data/ext/gsl_native/array.c +0 -553
  362. data/ext/gsl_native/array_complex.c +0 -245
  363. data/ext/gsl_native/blas.c +0 -28
  364. data/ext/gsl_native/blas1.c +0 -733
  365. data/ext/gsl_native/blas2.c +0 -1088
  366. data/ext/gsl_native/blas3.c +0 -880
  367. data/ext/gsl_native/block.c +0 -40
  368. data/ext/gsl_native/block_source.h +0 -885
  369. data/ext/gsl_native/bspline.c +0 -122
  370. data/ext/gsl_native/bundle.c +0 -3
  371. data/ext/gsl_native/cdf.c +0 -740
  372. data/ext/gsl_native/cheb.c +0 -531
  373. data/ext/gsl_native/combination.c +0 -275
  374. data/ext/gsl_native/common.c +0 -293
  375. data/ext/gsl_native/complex.c +0 -1002
  376. data/ext/gsl_native/const.c +0 -331
  377. data/ext/gsl_native/const_additional.c +0 -99
  378. data/ext/gsl_native/cqp.c +0 -283
  379. data/ext/gsl_native/deriv.c +0 -187
  380. data/ext/gsl_native/dht.c +0 -353
  381. data/ext/gsl_native/diff.c +0 -164
  382. data/ext/gsl_native/dirac.c +0 -388
  383. data/ext/gsl_native/eigen.c +0 -2322
  384. data/ext/gsl_native/error.c +0 -193
  385. data/ext/gsl_native/extconf.rb +0 -118
  386. data/ext/gsl_native/fft.c +0 -1095
  387. data/ext/gsl_native/fit.c +0 -204
  388. data/ext/gsl_native/fresnel.c +0 -312
  389. data/ext/gsl_native/function.c +0 -518
  390. data/ext/gsl_native/geometry.c +0 -139
  391. data/ext/gsl_native/graph.c +0 -1590
  392. data/ext/gsl_native/gsl.c +0 -259
  393. data/ext/gsl_native/gsl_narray.c +0 -794
  394. data/ext/gsl_native/histogram.c +0 -1964
  395. data/ext/gsl_native/histogram2d.c +0 -1042
  396. data/ext/gsl_native/histogram3d.c +0 -884
  397. data/ext/gsl_native/histogram3d_source.c +0 -749
  398. data/ext/gsl_native/histogram_find.c +0 -99
  399. data/ext/gsl_native/histogram_oper.c +0 -150
  400. data/ext/gsl_native/ieee.c +0 -88
  401. data/ext/gsl_native/include/rb_gsl.h +0 -136
  402. data/ext/gsl_native/include/rb_gsl_array.h +0 -214
  403. data/ext/gsl_native/include/rb_gsl_cheb.h +0 -19
  404. data/ext/gsl_native/include/rb_gsl_common.h +0 -348
  405. data/ext/gsl_native/include/rb_gsl_complex.h +0 -25
  406. data/ext/gsl_native/include/rb_gsl_const.h +0 -23
  407. data/ext/gsl_native/include/rb_gsl_dirac.h +0 -6
  408. data/ext/gsl_native/include/rb_gsl_eigen.h +0 -17
  409. data/ext/gsl_native/include/rb_gsl_fft.h +0 -49
  410. data/ext/gsl_native/include/rb_gsl_fit.h +0 -23
  411. data/ext/gsl_native/include/rb_gsl_function.h +0 -23
  412. data/ext/gsl_native/include/rb_gsl_graph.h +0 -68
  413. data/ext/gsl_native/include/rb_gsl_histogram.h +0 -63
  414. data/ext/gsl_native/include/rb_gsl_histogram3d.h +0 -97
  415. data/ext/gsl_native/include/rb_gsl_integration.h +0 -17
  416. data/ext/gsl_native/include/rb_gsl_interp.h +0 -41
  417. data/ext/gsl_native/include/rb_gsl_linalg.h +0 -21
  418. data/ext/gsl_native/include/rb_gsl_math.h +0 -20
  419. data/ext/gsl_native/include/rb_gsl_odeiv.h +0 -18
  420. data/ext/gsl_native/include/rb_gsl_poly.h +0 -67
  421. data/ext/gsl_native/include/rb_gsl_rational.h +0 -30
  422. data/ext/gsl_native/include/rb_gsl_rng.h +0 -20
  423. data/ext/gsl_native/include/rb_gsl_root.h +0 -22
  424. data/ext/gsl_native/include/rb_gsl_sf.h +0 -110
  425. data/ext/gsl_native/include/rb_gsl_statistics.h +0 -17
  426. data/ext/gsl_native/include/rb_gsl_tensor.h +0 -43
  427. data/ext/gsl_native/include/rb_gsl_with_narray.h +0 -31
  428. data/ext/gsl_native/include/templates_off.h +0 -87
  429. data/ext/gsl_native/include/templates_on.h +0 -241
  430. data/ext/gsl_native/integration.c +0 -1154
  431. data/ext/gsl_native/interp.c +0 -499
  432. data/ext/gsl_native/jacobi.c +0 -733
  433. data/ext/gsl_native/linalg.c +0 -3915
  434. data/ext/gsl_native/linalg_complex.c +0 -726
  435. data/ext/gsl_native/math.c +0 -706
  436. data/ext/gsl_native/matrix.c +0 -36
  437. data/ext/gsl_native/matrix_complex.c +0 -1733
  438. data/ext/gsl_native/matrix_double.c +0 -557
  439. data/ext/gsl_native/matrix_int.c +0 -255
  440. data/ext/gsl_native/matrix_source.h +0 -2708
  441. data/ext/gsl_native/min.c +0 -219
  442. data/ext/gsl_native/monte.c +0 -978
  443. data/ext/gsl_native/multifit.c +0 -1862
  444. data/ext/gsl_native/multimin.c +0 -778
  445. data/ext/gsl_native/multimin_fsdf.c +0 -156
  446. data/ext/gsl_native/multiroots.c +0 -952
  447. data/ext/gsl_native/multiset.c +0 -210
  448. data/ext/gsl_native/ndlinear.c +0 -320
  449. data/ext/gsl_native/nmf.c +0 -171
  450. data/ext/gsl_native/nmf_wrap.c +0 -75
  451. data/ext/gsl_native/ntuple.c +0 -469
  452. data/ext/gsl_native/odeiv.c +0 -947
  453. data/ext/gsl_native/ool.c +0 -879
  454. data/ext/gsl_native/permutation.c +0 -598
  455. data/ext/gsl_native/poly.c +0 -39
  456. data/ext/gsl_native/poly2.c +0 -265
  457. data/ext/gsl_native/poly_source.h +0 -1871
  458. data/ext/gsl_native/qrng.c +0 -160
  459. data/ext/gsl_native/randist.c +0 -1848
  460. data/ext/gsl_native/rational.c +0 -480
  461. data/ext/gsl_native/rng.c +0 -595
  462. data/ext/gsl_native/root.c +0 -407
  463. data/ext/gsl_native/sf.c +0 -1446
  464. data/ext/gsl_native/sf_airy.c +0 -200
  465. data/ext/gsl_native/sf_bessel.c +0 -871
  466. data/ext/gsl_native/sf_clausen.c +0 -28
  467. data/ext/gsl_native/sf_coulomb.c +0 -206
  468. data/ext/gsl_native/sf_coupling.c +0 -121
  469. data/ext/gsl_native/sf_dawson.c +0 -29
  470. data/ext/gsl_native/sf_debye.c +0 -148
  471. data/ext/gsl_native/sf_dilog.c +0 -43
  472. data/ext/gsl_native/sf_elementary.c +0 -46
  473. data/ext/gsl_native/sf_ellint.c +0 -206
  474. data/ext/gsl_native/sf_elljac.c +0 -30
  475. data/ext/gsl_native/sf_erfc.c +0 -89
  476. data/ext/gsl_native/sf_exp.c +0 -169
  477. data/ext/gsl_native/sf_expint.c +0 -201
  478. data/ext/gsl_native/sf_fermi_dirac.c +0 -148
  479. data/ext/gsl_native/sf_gamma.c +0 -343
  480. data/ext/gsl_native/sf_gegenbauer.c +0 -97
  481. data/ext/gsl_native/sf_hyperg.c +0 -203
  482. data/ext/gsl_native/sf_laguerre.c +0 -113
  483. data/ext/gsl_native/sf_lambert.c +0 -47
  484. data/ext/gsl_native/sf_legendre.c +0 -368
  485. data/ext/gsl_native/sf_log.c +0 -105
  486. data/ext/gsl_native/sf_mathieu.c +0 -235
  487. data/ext/gsl_native/sf_power.c +0 -47
  488. data/ext/gsl_native/sf_psi.c +0 -89
  489. data/ext/gsl_native/sf_synchrotron.c +0 -48
  490. data/ext/gsl_native/sf_transport.c +0 -76
  491. data/ext/gsl_native/sf_trigonometric.c +0 -210
  492. data/ext/gsl_native/sf_zeta.c +0 -115
  493. data/ext/gsl_native/signal.c +0 -303
  494. data/ext/gsl_native/siman.c +0 -713
  495. data/ext/gsl_native/sort.c +0 -207
  496. data/ext/gsl_native/spline.c +0 -377
  497. data/ext/gsl_native/stats.c +0 -787
  498. data/ext/gsl_native/sum.c +0 -168
  499. data/ext/gsl_native/tamu_anova.c +0 -56
  500. data/ext/gsl_native/tensor.c +0 -35
  501. data/ext/gsl_native/tensor_source.h +0 -1122
  502. data/ext/gsl_native/vector.c +0 -35
  503. data/ext/gsl_native/vector_complex.c +0 -2241
  504. data/ext/gsl_native/vector_double.c +0 -1433
  505. data/ext/gsl_native/vector_int.c +0 -202
  506. data/ext/gsl_native/vector_source.h +0 -3321
  507. data/ext/gsl_native/wavelet.c +0 -923
  508. data/lib/gsl.rb +0 -8
  509. data/lib/gsl/gnuplot.rb +0 -41
  510. data/lib/gsl/oper.rb +0 -43
  511. data/lib/gsl/version.rb +0 -3
  512. data/lib/ool.rb +0 -22
  513. data/lib/ool/conmin.rb +0 -30
  514. data/lib/rbgsl.rb +0 -1
  515. data/rdoc/alf.rdoc +0 -77
  516. data/rdoc/blas.rdoc +0 -269
  517. data/rdoc/bspline.rdoc +0 -42
  518. data/rdoc/changes.rdoc +0 -159
  519. data/rdoc/cheb.rdoc +0 -99
  520. data/rdoc/cholesky_complex.rdoc +0 -46
  521. data/rdoc/combi.rdoc +0 -125
  522. data/rdoc/complex.rdoc +0 -210
  523. data/rdoc/const.rdoc +0 -546
  524. data/rdoc/dht.rdoc +0 -122
  525. data/rdoc/diff.rdoc +0 -133
  526. data/rdoc/ehandling.rdoc +0 -50
  527. data/rdoc/eigen.rdoc +0 -401
  528. data/rdoc/fft.rdoc +0 -535
  529. data/rdoc/fit.rdoc +0 -284
  530. data/rdoc/function.rdoc +0 -94
  531. data/rdoc/graph.rdoc +0 -137
  532. data/rdoc/hist.rdoc +0 -409
  533. data/rdoc/hist2d.rdoc +0 -279
  534. data/rdoc/hist3d.rdoc +0 -112
  535. data/rdoc/integration.rdoc +0 -398
  536. data/rdoc/interp.rdoc +0 -231
  537. data/rdoc/intro.rdoc +0 -27
  538. data/rdoc/linalg.rdoc +0 -681
  539. data/rdoc/linalg_complex.rdoc +0 -88
  540. data/rdoc/math.rdoc +0 -276
  541. data/rdoc/matrix.rdoc +0 -1093
  542. data/rdoc/min.rdoc +0 -189
  543. data/rdoc/monte.rdoc +0 -234
  544. data/rdoc/multimin.rdoc +0 -312
  545. data/rdoc/multiroot.rdoc +0 -293
  546. data/rdoc/narray.rdoc +0 -177
  547. data/rdoc/ndlinear.rdoc +0 -250
  548. data/rdoc/nonlinearfit.rdoc +0 -348
  549. data/rdoc/ntuple.rdoc +0 -88
  550. data/rdoc/odeiv.rdoc +0 -378
  551. data/rdoc/perm.rdoc +0 -221
  552. data/rdoc/poly.rdoc +0 -335
  553. data/rdoc/qrng.rdoc +0 -90
  554. data/rdoc/randist.rdoc +0 -233
  555. data/rdoc/ref.rdoc +0 -93
  556. data/rdoc/rng.rdoc +0 -203
  557. data/rdoc/roots.rdoc +0 -305
  558. data/rdoc/sf.rdoc +0 -1622
  559. data/rdoc/siman.rdoc +0 -89
  560. data/rdoc/sort.rdoc +0 -94
  561. data/rdoc/start.rdoc +0 -16
  562. data/rdoc/stats.rdoc +0 -219
  563. data/rdoc/sum.rdoc +0 -65
  564. data/rdoc/tensor.rdoc +0 -251
  565. data/rdoc/tut.rdoc +0 -5
  566. data/rdoc/use.rdoc +0 -177
  567. data/rdoc/vector.rdoc +0 -1243
  568. data/rdoc/vector_complex.rdoc +0 -347
  569. data/rdoc/wavelet.rdoc +0 -218
  570. data/test/gsl/blas_test.rb +0 -79
  571. data/test/gsl/bspline_test.rb +0 -63
  572. data/test/gsl/cdf_test.rb +0 -1512
  573. data/test/gsl/cheb_test.rb +0 -80
  574. data/test/gsl/combination_test.rb +0 -100
  575. data/test/gsl/complex_test.rb +0 -20
  576. data/test/gsl/const_test.rb +0 -29
  577. data/test/gsl/deriv_test.rb +0 -62
  578. data/test/gsl/dht_test.rb +0 -79
  579. data/test/gsl/diff_test.rb +0 -53
  580. data/test/gsl/eigen_test.rb +0 -563
  581. data/test/gsl/err_test.rb +0 -23
  582. data/test/gsl/fit_test.rb +0 -101
  583. data/test/gsl/histo_test.rb +0 -14
  584. data/test/gsl/index_test.rb +0 -61
  585. data/test/gsl/integration_test.rb +0 -274
  586. data/test/gsl/interp_test.rb +0 -27
  587. data/test/gsl/linalg_test.rb +0 -463
  588. data/test/gsl/matrix_nmf_test.rb +0 -37
  589. data/test/gsl/matrix_test.rb +0 -98
  590. data/test/gsl/min_test.rb +0 -89
  591. data/test/gsl/monte_test.rb +0 -77
  592. data/test/gsl/multifit_test.rb +0 -753
  593. data/test/gsl/multimin_test.rb +0 -157
  594. data/test/gsl/multiroot_test.rb +0 -135
  595. data/test/gsl/multiset_test.rb +0 -52
  596. data/test/gsl/odeiv_test.rb +0 -275
  597. data/test/gsl/oper_test.rb +0 -98
  598. data/test/gsl/poly_test.rb +0 -338
  599. data/test/gsl/qrng_test.rb +0 -94
  600. data/test/gsl/quartic_test.rb +0 -28
  601. data/test/gsl/randist_test.rb +0 -122
  602. data/test/gsl/rng_test.rb +0 -303
  603. data/test/gsl/roots_test.rb +0 -78
  604. data/test/gsl/sf_test.rb +0 -2079
  605. data/test/gsl/stats_test.rb +0 -122
  606. data/test/gsl/sum_test.rb +0 -69
  607. data/test/gsl/tensor_test.rb +0 -396
  608. data/test/gsl/vector_test.rb +0 -223
  609. data/test/gsl/wavelet_test.rb +0 -130
  610. data/test/gsl_test.rb +0 -321
  611. data/test/test_helper.rb +0 -42
  612. data/uncrustify.cfg +0 -1693
@@ -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
- #
@@ -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
- #
@@ -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
- #