gsl 1.15.3 → 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 (446) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +12 -0
  3. data/.travis.yml +24 -0
  4. data/AUTHORS +10 -2
  5. data/COPYING +341 -339
  6. data/ChangeLog +612 -554
  7. data/Gemfile +4 -0
  8. data/README.md +77 -0
  9. data/Rakefile +14 -93
  10. data/THANKS +1 -1
  11. data/examples/blas/blas.rb +1 -1
  12. data/examples/bspline.rb +3 -3
  13. data/examples/complex/functions.rb +4 -4
  14. data/examples/complex/mul.rb +1 -1
  15. data/examples/const/physconst.rb +4 -4
  16. data/examples/const/travel.rb +4 -4
  17. data/examples/eigen/nonsymmv.rb +1 -1
  18. data/examples/eigen/qhoscillator.rb +3 -3
  19. data/examples/fft/radix2.rb +1 -1
  20. data/examples/fft/real-halfcomplex.rb +3 -3
  21. data/examples/fft/real-halfcomplex2.rb +3 -3
  22. data/examples/fit/expfit.rb +1 -1
  23. data/examples/fit/multifit.rb +1 -1
  24. data/examples/fit/ndlinear.rb +44 -44
  25. data/examples/fit/nonlinearfit.rb +1 -1
  26. data/examples/fit/wlinear.rb +3 -3
  27. data/examples/function/function.rb +1 -1
  28. data/examples/function/min.rb +1 -1
  29. data/examples/function/synchrotron.rb +2 -2
  30. data/examples/gallery/koch.rb +1 -1
  31. data/examples/histogram/cauchy.rb +2 -2
  32. data/examples/histogram/exponential.rb +1 -1
  33. data/examples/histogram/histo3d.rb +1 -1
  34. data/examples/histogram/histogram-pdf.rb +2 -2
  35. data/examples/histogram/xexp.rb +1 -1
  36. data/examples/integration/ahmed.rb +2 -2
  37. data/examples/integration/cosmology.rb +7 -7
  38. data/examples/integration/friedmann.rb +4 -4
  39. data/examples/integration/qng.rb +1 -1
  40. data/examples/interp/demo.rb +2 -2
  41. data/examples/linalg/LQ_solve.rb +1 -1
  42. data/examples/linalg/LU.rb +1 -1
  43. data/examples/linalg/LU2.rb +1 -1
  44. data/examples/linalg/LU_narray.rb +1 -1
  45. data/examples/linalg/PTLQ.rb +1 -1
  46. data/examples/linalg/QRPT.rb +1 -1
  47. data/examples/linalg/chol.rb +1 -1
  48. data/examples/linalg/chol_narray.rb +1 -1
  49. data/examples/linalg/complex.rb +1 -1
  50. data/examples/math/elementary.rb +1 -1
  51. data/examples/math/functions.rb +1 -1
  52. data/examples/math/inf_nan.rb +1 -1
  53. data/examples/math/minmax.rb +1 -1
  54. data/examples/math/power.rb +1 -1
  55. data/examples/math/test.rb +1 -1
  56. data/examples/min.rb +1 -1
  57. data/examples/multimin/bundle.rb +1 -1
  58. data/examples/multimin/cqp.rb +17 -17
  59. data/examples/multiroot/fsolver3.rb +1 -1
  60. data/examples/odeiv/binarysystem.rb +12 -12
  61. data/examples/odeiv/demo.rb +3 -3
  62. data/examples/odeiv/frei1.rb +7 -7
  63. data/examples/odeiv/frei2.rb +4 -4
  64. data/examples/odeiv/oscillator.rb +1 -1
  65. data/examples/odeiv/sedov.rb +3 -3
  66. data/examples/odeiv/whitedwarf.rb +11 -11
  67. data/examples/permutation/ex1.rb +2 -2
  68. data/examples/permutation/permutation.rb +1 -1
  69. data/examples/poly/demo.rb +1 -1
  70. data/examples/random/diffusion.rb +1 -1
  71. data/examples/random/generator.rb +2 -2
  72. data/examples/random/randomwalk.rb +3 -3
  73. data/examples/random/rng.rb +1 -1
  74. data/examples/roots/bisection.rb +1 -1
  75. data/examples/roots/brent.rb +1 -1
  76. data/examples/roots/demo.rb +1 -1
  77. data/examples/roots/newton.rb +2 -2
  78. data/examples/roots/recombination.gp +0 -1
  79. data/examples/sf/hyperg.rb +1 -1
  80. data/examples/sf/sphbessel.rb +1 -1
  81. data/examples/sort/sort.rb +1 -1
  82. data/examples/tamu_anova.rb +4 -4
  83. data/examples/vector/add.rb +1 -1
  84. data/examples/vector/decimate.rb +1 -1
  85. data/examples/vector/gnuplot.rb +8 -8
  86. data/examples/vector/vector.rb +2 -2
  87. data/examples/wavelet/wavelet1.rb +1 -1
  88. data/ext/{alf.c → gsl_native/alf.c} +10 -10
  89. data/ext/{array.c → gsl_native/array.c} +70 -159
  90. data/ext/{array_complex.c → gsl_native/array_complex.c} +63 -66
  91. data/ext/{blas.c → gsl_native/blas.c} +2 -3
  92. data/ext/{blas1.c → gsl_native/blas1.c} +35 -36
  93. data/ext/{blas2.c → gsl_native/blas2.c} +57 -62
  94. data/ext/{blas3.c → gsl_native/blas3.c} +57 -58
  95. data/ext/{block.c → gsl_native/block.c} +14 -18
  96. data/ext/{block_source.c → gsl_native/block_source.h} +110 -112
  97. data/ext/gsl_native/bspline.c +122 -0
  98. data/ext/{bundle.c → gsl_native/bundle.c} +0 -0
  99. data/ext/{cdf.c → gsl_native/cdf.c} +79 -93
  100. data/ext/{cheb.c → gsl_native/cheb.c} +78 -89
  101. data/ext/{combination.c → gsl_native/combination.c} +11 -19
  102. data/ext/{common.c → gsl_native/common.c} +9 -41
  103. data/ext/{complex.c → gsl_native/complex.c} +116 -118
  104. data/ext/gsl_native/const.c +331 -0
  105. data/ext/{const_additional.c → gsl_native/const_additional.c} +13 -34
  106. data/ext/gsl_native/cqp.c +283 -0
  107. data/ext/{deriv.c → gsl_native/deriv.c} +25 -33
  108. data/ext/{dht.c → gsl_native/dht.c} +23 -31
  109. data/ext/{diff.c → gsl_native/diff.c} +26 -28
  110. data/ext/{dirac.c → gsl_native/dirac.c} +45 -46
  111. data/ext/{eigen.c → gsl_native/eigen.c} +1044 -1095
  112. data/ext/{error.c → gsl_native/error.c} +18 -18
  113. data/ext/gsl_native/extconf.rb +118 -0
  114. data/ext/{fft.c → gsl_native/fft.c} +197 -204
  115. data/ext/{fit.c → gsl_native/fit.c} +17 -18
  116. data/ext/gsl_native/fresnel.c +312 -0
  117. data/ext/{function.c → gsl_native/function.c} +37 -43
  118. data/ext/{geometry.c → gsl_native/geometry.c} +16 -16
  119. data/ext/{graph.c → gsl_native/graph.c} +39 -89
  120. data/ext/{gsl.c → gsl_native/gsl.c} +12 -33
  121. data/ext/{gsl_narray.c → gsl_native/gsl_narray.c} +20 -30
  122. data/ext/{histogram.c → gsl_native/histogram.c} +133 -160
  123. data/ext/{histogram2d.c → gsl_native/histogram2d.c} +78 -104
  124. data/ext/{histogram3d.c → gsl_native/histogram3d.c} +76 -76
  125. data/ext/{histogram3d_source.c → gsl_native/histogram3d_source.c} +196 -197
  126. data/ext/{histogram_find.c → gsl_native/histogram_find.c} +32 -34
  127. data/ext/{histogram_oper.c → gsl_native/histogram_oper.c} +43 -52
  128. data/ext/{ieee.c → gsl_native/ieee.c} +9 -21
  129. data/{include → ext/gsl_native/include}/rb_gsl.h +4 -26
  130. data/{include → ext/gsl_native/include}/rb_gsl_array.h +15 -39
  131. data/{include → ext/gsl_native/include}/rb_gsl_cheb.h +0 -2
  132. data/{include → ext/gsl_native/include}/rb_gsl_common.h +61 -61
  133. data/{include → ext/gsl_native/include}/rb_gsl_complex.h +1 -1
  134. data/{include → ext/gsl_native/include}/rb_gsl_const.h +0 -6
  135. data/ext/gsl_native/include/rb_gsl_dirac.h +6 -0
  136. data/{include → ext/gsl_native/include}/rb_gsl_eigen.h +1 -1
  137. data/{include → ext/gsl_native/include}/rb_gsl_fft.h +0 -13
  138. data/{include → ext/gsl_native/include}/rb_gsl_fit.h +0 -2
  139. data/{include → ext/gsl_native/include}/rb_gsl_function.h +0 -4
  140. data/{include → ext/gsl_native/include}/rb_gsl_graph.h +2 -4
  141. data/{include → ext/gsl_native/include}/rb_gsl_histogram.h +8 -8
  142. data/{include → ext/gsl_native/include}/rb_gsl_histogram3d.h +50 -50
  143. data/{include → ext/gsl_native/include}/rb_gsl_integration.h +1 -1
  144. data/{include → ext/gsl_native/include}/rb_gsl_interp.h +0 -5
  145. data/{include → ext/gsl_native/include}/rb_gsl_linalg.h +2 -6
  146. data/{include → ext/gsl_native/include}/rb_gsl_math.h +0 -6
  147. data/{include → ext/gsl_native/include}/rb_gsl_odeiv.h +0 -3
  148. data/{include → ext/gsl_native/include}/rb_gsl_poly.h +3 -7
  149. data/{include → ext/gsl_native/include}/rb_gsl_rational.h +1 -8
  150. data/{include → ext/gsl_native/include}/rb_gsl_rng.h +0 -1
  151. data/{include → ext/gsl_native/include}/rb_gsl_root.h +1 -1
  152. data/{include → ext/gsl_native/include}/rb_gsl_sf.h +39 -48
  153. data/{include → ext/gsl_native/include}/rb_gsl_statistics.h +1 -1
  154. data/{include → ext/gsl_native/include}/rb_gsl_tensor.h +0 -2
  155. data/{include → ext/gsl_native/include}/rb_gsl_with_narray.h +3 -1
  156. data/{include → ext/gsl_native/include}/templates_off.h +0 -0
  157. data/{include → ext/gsl_native/include}/templates_on.h +1 -1
  158. data/ext/{integration.c → gsl_native/integration.c} +164 -189
  159. data/ext/{interp.c → gsl_native/interp.c} +25 -38
  160. data/ext/gsl_native/jacobi.c +733 -0
  161. data/ext/{linalg.c → gsl_native/linalg.c} +462 -589
  162. data/ext/{linalg_complex.c → gsl_native/linalg_complex.c} +93 -106
  163. data/ext/{math.c → gsl_native/math.c} +48 -67
  164. data/ext/{matrix.c → gsl_native/matrix.c} +13 -16
  165. data/ext/{matrix_complex.c → gsl_native/matrix_complex.c} +119 -123
  166. data/ext/{matrix_double.c → gsl_native/matrix_double.c} +79 -82
  167. data/ext/{matrix_int.c → gsl_native/matrix_int.c} +53 -54
  168. data/ext/{matrix_source.c → gsl_native/matrix_source.h} +292 -318
  169. data/ext/{min.c → gsl_native/min.c} +45 -76
  170. data/ext/{monte.c → gsl_native/monte.c} +50 -64
  171. data/ext/{multifit.c → gsl_native/multifit.c} +142 -151
  172. data/ext/{multimin.c → gsl_native/multimin.c} +64 -92
  173. data/ext/{multimin_fsdf.c → gsl_native/multimin_fsdf.c} +16 -16
  174. data/ext/{multiroots.c → gsl_native/multiroots.c} +73 -76
  175. data/ext/{multiset.c → gsl_native/multiset.c} +4 -8
  176. data/ext/{ndlinear.c → gsl_native/ndlinear.c} +320 -321
  177. data/ext/{nmf.c → gsl_native/nmf.c} +11 -11
  178. data/ext/{nmf_wrap.c → gsl_native/nmf_wrap.c} +1 -1
  179. data/ext/{ntuple.c → gsl_native/ntuple.c} +23 -23
  180. data/ext/{odeiv.c → gsl_native/odeiv.c} +101 -116
  181. data/ext/gsl_native/ool.c +879 -0
  182. data/ext/{permutation.c → gsl_native/permutation.c} +39 -37
  183. data/ext/{poly.c → gsl_native/poly.c} +10 -13
  184. data/ext/{poly2.c → gsl_native/poly2.c} +16 -16
  185. data/ext/{poly_source.c → gsl_native/poly_source.h} +249 -293
  186. data/ext/{qrng.c → gsl_native/qrng.c} +9 -20
  187. data/ext/{randist.c → gsl_native/randist.c} +222 -247
  188. data/ext/{rational.c → gsl_native/rational.c} +12 -12
  189. data/ext/{rng.c → gsl_native/rng.c} +30 -47
  190. data/ext/{root.c → gsl_native/root.c} +47 -48
  191. data/ext/{sf.c → gsl_native/sf.c} +196 -244
  192. data/ext/{sf_airy.c → gsl_native/sf_airy.c} +2 -2
  193. data/ext/{sf_bessel.c → gsl_native/sf_bessel.c} +7 -7
  194. data/ext/{sf_clausen.c → gsl_native/sf_clausen.c} +1 -1
  195. data/ext/{sf_coulomb.c → gsl_native/sf_coulomb.c} +40 -40
  196. data/ext/{sf_coupling.c → gsl_native/sf_coupling.c} +30 -30
  197. data/ext/{sf_dawson.c → gsl_native/sf_dawson.c} +1 -1
  198. data/ext/{sf_debye.c → gsl_native/sf_debye.c} +1 -10
  199. data/ext/{sf_dilog.c → gsl_native/sf_dilog.c} +1 -1
  200. data/ext/{sf_elementary.c → gsl_native/sf_elementary.c} +3 -3
  201. data/ext/{sf_ellint.c → gsl_native/sf_ellint.c} +43 -43
  202. data/ext/{sf_elljac.c → gsl_native/sf_elljac.c} +3 -3
  203. data/ext/{sf_erfc.c → gsl_native/sf_erfc.c} +1 -5
  204. data/ext/{sf_exp.c → gsl_native/sf_exp.c} +3 -3
  205. data/ext/{sf_expint.c → gsl_native/sf_expint.c} +2 -12
  206. data/ext/{sf_fermi_dirac.c → gsl_native/sf_fermi_dirac.c} +1 -1
  207. data/ext/{sf_gamma.c → gsl_native/sf_gamma.c} +2 -6
  208. data/ext/{sf_gegenbauer.c → gsl_native/sf_gegenbauer.c} +1 -1
  209. data/ext/{sf_hyperg.c → gsl_native/sf_hyperg.c} +1 -1
  210. data/ext/{sf_laguerre.c → gsl_native/sf_laguerre.c} +4 -4
  211. data/ext/{sf_lambert.c → gsl_native/sf_lambert.c} +1 -1
  212. data/ext/{sf_legendre.c → gsl_native/sf_legendre.c} +1 -1
  213. data/ext/{sf_log.c → gsl_native/sf_log.c} +4 -4
  214. data/ext/gsl_native/sf_mathieu.c +235 -0
  215. data/ext/{sf_power.c → gsl_native/sf_power.c} +1 -1
  216. data/ext/{sf_psi.c → gsl_native/sf_psi.c} +3 -12
  217. data/ext/{sf_synchrotron.c → gsl_native/sf_synchrotron.c} +1 -1
  218. data/ext/{sf_transport.c → gsl_native/sf_transport.c} +1 -1
  219. data/ext/{sf_trigonometric.c → gsl_native/sf_trigonometric.c} +4 -4
  220. data/ext/{sf_zeta.c → gsl_native/sf_zeta.c} +1 -5
  221. data/ext/{signal.c → gsl_native/signal.c} +63 -68
  222. data/ext/{siman.c → gsl_native/siman.c} +45 -49
  223. data/ext/{sort.c → gsl_native/sort.c} +6 -7
  224. data/ext/{spline.c → gsl_native/spline.c} +28 -46
  225. data/ext/{stats.c → gsl_native/stats.c} +105 -118
  226. data/ext/{sum.c → gsl_native/sum.c} +34 -34
  227. data/ext/{tamu_anova.c → gsl_native/tamu_anova.c} +1 -1
  228. data/ext/{tensor.c → gsl_native/tensor.c} +8 -11
  229. data/ext/{tensor_source.c → gsl_native/tensor_source.h} +147 -148
  230. data/ext/{vector.c → gsl_native/vector.c} +11 -14
  231. data/ext/{vector_complex.c → gsl_native/vector_complex.c} +179 -184
  232. data/ext/{vector_double.c → gsl_native/vector_double.c} +178 -183
  233. data/ext/{vector_int.c → gsl_native/vector_int.c} +27 -29
  234. data/ext/{vector_source.c → gsl_native/vector_source.h} +428 -443
  235. data/ext/{wavelet.c → gsl_native/wavelet.c} +224 -246
  236. data/gsl.gemspec +29 -0
  237. data/lib/gsl.rb +8 -3
  238. data/lib/gsl/gnuplot.rb +3 -3
  239. data/lib/gsl/oper.rb +35 -60
  240. data/lib/gsl/version.rb +3 -0
  241. data/lib/rbgsl.rb +1 -3
  242. data/rdoc/alf.rdoc +5 -5
  243. data/rdoc/blas.rdoc +9 -9
  244. data/rdoc/bspline.rdoc +17 -17
  245. data/rdoc/changes.rdoc +4 -9
  246. data/rdoc/cheb.rdoc +25 -25
  247. data/rdoc/cholesky_complex.rdoc +21 -21
  248. data/rdoc/combi.rdoc +37 -37
  249. data/rdoc/complex.rdoc +22 -22
  250. data/rdoc/const.rdoc +47 -47
  251. data/rdoc/dht.rdoc +49 -49
  252. data/rdoc/diff.rdoc +42 -42
  253. data/rdoc/ehandling.rdoc +6 -6
  254. data/rdoc/eigen.rdoc +153 -153
  255. data/rdoc/fft.rdoc +146 -146
  256. data/rdoc/fit.rdoc +109 -109
  257. data/rdoc/function.rdoc +11 -11
  258. data/rdoc/graph.rdoc +17 -17
  259. data/rdoc/hist.rdoc +103 -103
  260. data/rdoc/hist2d.rdoc +42 -42
  261. data/rdoc/hist3d.rdoc +9 -9
  262. data/rdoc/integration.rdoc +110 -110
  263. data/rdoc/interp.rdoc +71 -71
  264. data/rdoc/intro.rdoc +8 -8
  265. data/rdoc/linalg.rdoc +188 -188
  266. data/rdoc/linalg_complex.rdoc +1 -1
  267. data/rdoc/math.rdoc +58 -58
  268. data/rdoc/matrix.rdoc +275 -275
  269. data/rdoc/min.rdoc +57 -57
  270. data/rdoc/monte.rdoc +22 -22
  271. data/rdoc/multimin.rdoc +95 -95
  272. data/rdoc/multiroot.rdoc +80 -80
  273. data/rdoc/narray.rdoc +32 -32
  274. data/rdoc/ndlinear.rdoc +54 -54
  275. data/rdoc/nonlinearfit.rdoc +100 -100
  276. data/rdoc/ntuple.rdoc +31 -31
  277. data/rdoc/odeiv.rdoc +88 -88
  278. data/rdoc/perm.rdoc +90 -90
  279. data/rdoc/poly.rdoc +66 -66
  280. data/rdoc/qrng.rdoc +21 -21
  281. data/rdoc/randist.rdoc +82 -82
  282. data/rdoc/ref.rdoc +57 -57
  283. data/rdoc/rng.rdoc +85 -85
  284. data/rdoc/roots.rdoc +57 -57
  285. data/rdoc/sf.rdoc +428 -428
  286. data/rdoc/siman.rdoc +19 -19
  287. data/rdoc/sort.rdoc +30 -30
  288. data/rdoc/start.rdoc +8 -8
  289. data/rdoc/stats.rdoc +52 -52
  290. data/rdoc/sum.rdoc +12 -12
  291. data/rdoc/tensor.rdoc +31 -31
  292. data/rdoc/tut.rdoc +1 -1
  293. data/rdoc/use.rdoc +39 -39
  294. data/rdoc/vector.rdoc +188 -188
  295. data/rdoc/vector_complex.rdoc +24 -24
  296. data/rdoc/wavelet.rdoc +46 -46
  297. data/test/gsl/blas_test.rb +79 -0
  298. data/test/gsl/bspline_test.rb +63 -0
  299. data/test/gsl/cdf_test.rb +1512 -0
  300. data/test/gsl/cheb_test.rb +80 -0
  301. data/test/gsl/combination_test.rb +100 -0
  302. data/test/gsl/complex_test.rb +20 -0
  303. data/test/gsl/const_test.rb +29 -0
  304. data/test/gsl/deriv_test.rb +62 -0
  305. data/test/gsl/dht_test.rb +79 -0
  306. data/test/gsl/diff_test.rb +53 -0
  307. data/test/gsl/eigen_test.rb +563 -0
  308. data/test/gsl/err_test.rb +23 -0
  309. data/test/gsl/fit_test.rb +101 -0
  310. data/test/gsl/histo_test.rb +14 -0
  311. data/test/gsl/index_test.rb +61 -0
  312. data/test/gsl/integration_test.rb +274 -0
  313. data/test/gsl/interp_test.rb +27 -0
  314. data/test/gsl/linalg_test.rb +463 -0
  315. data/test/gsl/matrix_nmf_test.rb +37 -0
  316. data/test/gsl/matrix_test.rb +98 -0
  317. data/test/gsl/min_test.rb +89 -0
  318. data/test/gsl/monte_test.rb +77 -0
  319. data/test/gsl/multifit_test.rb +753 -0
  320. data/test/gsl/multimin_test.rb +157 -0
  321. data/test/gsl/multiroot_test.rb +135 -0
  322. data/test/gsl/multiset_test.rb +52 -0
  323. data/test/gsl/odeiv_test.rb +275 -0
  324. data/test/gsl/oper_test.rb +98 -0
  325. data/test/gsl/poly_test.rb +338 -0
  326. data/test/gsl/qrng_test.rb +94 -0
  327. data/test/gsl/quartic_test.rb +28 -0
  328. data/test/gsl/randist_test.rb +122 -0
  329. data/test/gsl/rng_test.rb +303 -0
  330. data/test/gsl/roots_test.rb +78 -0
  331. data/test/gsl/sf_test.rb +2079 -0
  332. data/test/gsl/stats_test.rb +122 -0
  333. data/test/gsl/sum_test.rb +69 -0
  334. data/test/gsl/tensor_test.rb +396 -0
  335. data/test/gsl/vector_test.rb +223 -0
  336. data/test/gsl/wavelet_test.rb +130 -0
  337. data/test/gsl_test.rb +321 -0
  338. data/test/test_helper.rb +42 -0
  339. data/uncrustify.cfg +1693 -0
  340. metadata +337 -378
  341. data/README +0 -32
  342. data/VERSION +0 -1
  343. data/ext/bspline.c +0 -130
  344. data/ext/const.c +0 -673
  345. data/ext/cqp.c +0 -283
  346. data/ext/extconf.rb +0 -295
  347. data/ext/fcmp.c +0 -66
  348. data/ext/fresnel.c +0 -312
  349. data/ext/jacobi.c +0 -739
  350. data/ext/ool.c +0 -879
  351. data/ext/oper_complex_source.c +0 -253
  352. data/ext/sf_mathieu.c +0 -238
  353. data/include/rb_gsl_config.h +0 -62
  354. data/include/rb_gsl_dirac.h +0 -13
  355. data/rdoc/index.rdoc +0 -62
  356. data/rdoc/rngextra.rdoc +0 -11
  357. data/rdoc/screenshot.rdoc +0 -40
  358. data/setup.rb +0 -1585
  359. data/tests/blas/amax.rb +0 -14
  360. data/tests/blas/asum.rb +0 -16
  361. data/tests/blas/axpy.rb +0 -25
  362. data/tests/blas/copy.rb +0 -23
  363. data/tests/blas/dot.rb +0 -23
  364. data/tests/bspline.rb +0 -53
  365. data/tests/cdf.rb +0 -1388
  366. data/tests/cheb.rb +0 -112
  367. data/tests/combination.rb +0 -123
  368. data/tests/complex.rb +0 -17
  369. data/tests/const.rb +0 -24
  370. data/tests/deriv.rb +0 -85
  371. data/tests/dht/dht1.rb +0 -17
  372. data/tests/dht/dht2.rb +0 -23
  373. data/tests/dht/dht3.rb +0 -23
  374. data/tests/dht/dht4.rb +0 -23
  375. data/tests/diff.rb +0 -78
  376. data/tests/eigen/eigen.rb +0 -220
  377. data/tests/eigen/gen.rb +0 -105
  378. data/tests/eigen/genherm.rb +0 -66
  379. data/tests/eigen/gensymm.rb +0 -68
  380. data/tests/eigen/nonsymm.rb +0 -53
  381. data/tests/eigen/nonsymmv.rb +0 -53
  382. data/tests/eigen/symm-herm.rb +0 -74
  383. data/tests/err.rb +0 -58
  384. data/tests/fit.rb +0 -124
  385. data/tests/gsl_test.rb +0 -118
  386. data/tests/gsl_test2.rb +0 -110
  387. data/tests/histo.rb +0 -12
  388. data/tests/integration/integration1.rb +0 -72
  389. data/tests/integration/integration2.rb +0 -71
  390. data/tests/integration/integration3.rb +0 -71
  391. data/tests/integration/integration4.rb +0 -71
  392. data/tests/interp.rb +0 -45
  393. data/tests/linalg/HH.rb +0 -64
  394. data/tests/linalg/LU.rb +0 -47
  395. data/tests/linalg/QR.rb +0 -77
  396. data/tests/linalg/SV.rb +0 -24
  397. data/tests/linalg/TDN.rb +0 -116
  398. data/tests/linalg/TDS.rb +0 -122
  399. data/tests/linalg/bidiag.rb +0 -73
  400. data/tests/linalg/cholesky.rb +0 -20
  401. data/tests/linalg/linalg.rb +0 -158
  402. data/tests/matrix/matrix_complex_test.rb +0 -36
  403. data/tests/matrix/matrix_nmf_test.rb +0 -39
  404. data/tests/matrix/matrix_test.rb +0 -48
  405. data/tests/min.rb +0 -99
  406. data/tests/monte/miser.rb +0 -31
  407. data/tests/monte/vegas.rb +0 -45
  408. data/tests/multifit/test_2dgauss.rb +0 -112
  409. data/tests/multifit/test_brown.rb +0 -90
  410. data/tests/multifit/test_enso.rb +0 -246
  411. data/tests/multifit/test_filip.rb +0 -155
  412. data/tests/multifit/test_gauss.rb +0 -97
  413. data/tests/multifit/test_longley.rb +0 -110
  414. data/tests/multifit/test_multifit.rb +0 -52
  415. data/tests/multimin.rb +0 -139
  416. data/tests/multiroot.rb +0 -131
  417. data/tests/multiset.rb +0 -52
  418. data/tests/narray/blas_dnrm2.rb +0 -20
  419. data/tests/odeiv.rb +0 -353
  420. data/tests/poly/poly.rb +0 -290
  421. data/tests/poly/special.rb +0 -65
  422. data/tests/qrng.rb +0 -131
  423. data/tests/quartic.rb +0 -29
  424. data/tests/randist.rb +0 -134
  425. data/tests/rng.rb +0 -305
  426. data/tests/roots.rb +0 -76
  427. data/tests/run-test.sh +0 -17
  428. data/tests/sf/gsl_test_sf.rb +0 -249
  429. data/tests/sf/test_airy.rb +0 -83
  430. data/tests/sf/test_bessel.rb +0 -306
  431. data/tests/sf/test_coulomb.rb +0 -17
  432. data/tests/sf/test_dilog.rb +0 -25
  433. data/tests/sf/test_gamma.rb +0 -209
  434. data/tests/sf/test_hyperg.rb +0 -356
  435. data/tests/sf/test_legendre.rb +0 -227
  436. data/tests/sf/test_mathieu.rb +0 -59
  437. data/tests/sf/test_mode.rb +0 -19
  438. data/tests/sf/test_sf.rb +0 -839
  439. data/tests/stats.rb +0 -174
  440. data/tests/stats_mt.rb +0 -16
  441. data/tests/sum.rb +0 -98
  442. data/tests/sys.rb +0 -323
  443. data/tests/tensor.rb +0 -419
  444. data/tests/vector/vector_complex_test.rb +0 -101
  445. data/tests/vector/vector_test.rb +0 -141
  446. data/tests/wavelet.rb +0 -142
@@ -9,16 +9,14 @@
9
9
  WITHOUT ANY WARRANTY.
10
10
  */
11
11
 
12
- #include "rb_gsl_config.h"
13
- #include "rb_gsl_histogram.h"
14
- #include "rb_gsl_common.h"
15
- #include "rb_gsl_array.h"
12
+ #include "include/rb_gsl_histogram.h"
13
+ #include "include/rb_gsl_common.h"
14
+ #include "include/rb_gsl_array.h"
16
15
 
17
16
  VALUE cgsl_histogram2d;
18
17
  VALUE cgsl_histogram2d_view;
19
18
  static VALUE cgsl_histogram2d_integ;
20
19
 
21
- #ifdef GSL_0_9_4_LATER
22
20
  static VALUE rb_gsl_histogram2d_alloc_uniform(int argc, VALUE *argv, VALUE klass);
23
21
  static VALUE rb_gsl_histogram2d_alloc(int argc, VALUE *argv, VALUE klass)
24
22
  {
@@ -79,7 +77,7 @@ static VALUE rb_gsl_histogram2d_alloc_uniform(int argc, VALUE *argv, VALUE klass
79
77
  double xmin, xmax, ymin, ymax;
80
78
  switch (argc) {
81
79
  case 4:
82
- CHECK_FIXNUM(argv[0]); CHECK_FIXNUM(argv[2]);
80
+ CHECK_FIXNUM(argv[0]); CHECK_FIXNUM(argv[2]);
83
81
  Check_Type(argv[1], T_ARRAY); Check_Type(argv[3], T_ARRAY);
84
82
  // if (RARRAY(argv[1])->len != 2 || RARRAY(argv[3])->len != 2)
85
83
  if (RARRAY_LEN(argv[1]) != 2 || RARRAY_LEN(argv[3]) != 2)
@@ -93,13 +91,13 @@ static VALUE rb_gsl_histogram2d_alloc_uniform(int argc, VALUE *argv, VALUE klass
93
91
  return Data_Wrap_Struct(klass, 0, gsl_histogram2d_free, h);
94
92
  break;
95
93
  case 6:
96
- CHECK_FIXNUM(argv[0]);
94
+ CHECK_FIXNUM(argv[0]);
97
95
  Need_Float(argv[1]); Need_Float(argv[2]);
98
96
  CHECK_FIXNUM(argv[3]);
99
97
  Need_Float(argv[4]); Need_Float(argv[5]);
100
98
  h = gsl_histogram2d_alloc(FIX2INT(argv[0]), FIX2INT(argv[3]));
101
99
  gsl_histogram2d_set_ranges_uniform(h, NUM2DBL(argv[1]), NUM2DBL(argv[2]),
102
- NUM2DBL(argv[4]), NUM2DBL(argv[5]));
100
+ NUM2DBL(argv[4]), NUM2DBL(argv[5]));
103
101
  return Data_Wrap_Struct(klass, 0, gsl_histogram2d_free, h);
104
102
  break;
105
103
  default:
@@ -108,7 +106,6 @@ static VALUE rb_gsl_histogram2d_alloc_uniform(int argc, VALUE *argv, VALUE klass
108
106
  }
109
107
  return Qnil; /* never reach here */
110
108
  }
111
- #endif
112
109
 
113
110
  static VALUE rb_gsl_histogram2d_set_ranges(int argc, VALUE *argv, VALUE obj)
114
111
  {
@@ -206,7 +203,7 @@ static VALUE rb_gsl_histogram2d_accumulate(int argc, VALUE *argv, VALUE obj)
206
203
  n = (size_t) GSL_MIN_INT((int) vx->size, (int) vy->size);
207
204
  for (i = 0; i < n; i++)
208
205
  gsl_histogram2d_accumulate(h, gsl_vector_get(vx, i), gsl_vector_get(vy, i),
209
- weight);
206
+ weight);
210
207
  } else {
211
208
  gsl_histogram2d_accumulate(h, NUM2DBL(argv[0]), NUM2DBL(argv[1]), weight);
212
209
  }
@@ -216,14 +213,14 @@ static VALUE rb_gsl_histogram2d_accumulate(int argc, VALUE *argv, VALUE obj)
216
213
  static VALUE rb_gsl_histogram2d_accumulate2(int argc, VALUE *argv, VALUE obj)
217
214
  {
218
215
  gsl_histogram2d *h = NULL;
219
- double x, y, weight=1;
216
+ double x, y, weight = 1;
220
217
  switch (argc) {
221
218
  case 3:
222
219
  Need_Float(argv[2]);
223
220
  weight = NUM2DBL(argv[2]);
224
- /* no break */
221
+ /* no break */
225
222
  case 2:
226
- Need_Float(argv[0]); Need_Float(argv[1]);
223
+ Need_Float(argv[0]); Need_Float(argv[1]);
227
224
  x = NUM2DBL(argv[0]); y = NUM2DBL(argv[1]);
228
225
  break;
229
226
  default:
@@ -255,13 +252,13 @@ static VALUE rb_gsl_histogram2d_get(int argc, VALUE *argv, VALUE obj)
255
252
  switch (TYPE(argv[0])) {
256
253
  case T_ARRAY:
257
254
  return rb_float_new(gsl_histogram2d_get(h2, FIX2INT(rb_ary_entry(argv[0], 0)),
258
- FIX2INT(rb_ary_entry(argv[0], 1))));
255
+ FIX2INT(rb_ary_entry(argv[0], 1))));
259
256
  break;
260
257
  case T_FIXNUM:
261
- CHECK_FIXNUM(argv[0]);
258
+ CHECK_FIXNUM(argv[0]);
262
259
  i = (size_t) FIX2INT(argv[0]);
263
260
  if (i >= h2->ny)
264
- rb_raise(rb_eIndexError, "wrong index");
261
+ rb_raise(rb_eIndexError, "wrong index");
265
262
  h1 = ALLOC(mygsl_histogram2d_view);
266
263
  h1->h.n = h2->ny;
267
264
  h1->h.range = h2->yrange;
@@ -270,7 +267,7 @@ static VALUE rb_gsl_histogram2d_get(int argc, VALUE *argv, VALUE obj)
270
267
  break;
271
268
  default:
272
269
  rb_raise(rb_eTypeError, "wrong argument type %s (Array or Fixnum expected)",
273
- rb_class2name(CLASS_OF(argv[0])));
270
+ rb_class2name(CLASS_OF(argv[0])));
274
271
  break;
275
272
  }
276
273
  break;
@@ -346,7 +343,7 @@ static VALUE rb_gsl_histogram2d_find(VALUE obj, VALUE x, VALUE y)
346
343
  {
347
344
  gsl_histogram2d *h = NULL;
348
345
  size_t i, j;
349
- Need_Float(x);Need_Float(y);
346
+ Need_Float(x); Need_Float(y);
350
347
  Data_Get_Struct(obj, gsl_histogram2d, h);
351
348
  gsl_histogram2d_find(h, NUM2DBL(x), NUM2DBL(y), &i, &j);
352
349
  return rb_ary_new3(2, INT2FIX(i), INT2FIX(j));
@@ -384,7 +381,6 @@ static VALUE rb_gsl_histogram2d_min_bin(VALUE obj)
384
381
  return rb_ary_new3(2, INT2FIX(i), INT2FIX(j));
385
382
  }
386
383
 
387
- #ifdef GSL_1_1_LATER
388
384
  static VALUE rb_gsl_histogram2d_xmean(VALUE obj)
389
385
  {
390
386
  gsl_histogram2d *h = NULL;
@@ -426,7 +422,6 @@ static VALUE rb_gsl_histogram2d_sum(VALUE obj)
426
422
  Data_Get_Struct(obj, gsl_histogram2d, h);
427
423
  return rb_float_new(gsl_histogram2d_sum(h));
428
424
  }
429
- #endif
430
425
 
431
426
  /* singleton */
432
427
  static VALUE rb_gsl_histogram2d_equal_bins_p(VALUE obj, VALUE hh1, VALUE hh2)
@@ -612,7 +607,6 @@ static VALUE rb_gsl_histogram2d_reset(VALUE obj)
612
607
  return obj;
613
608
  }
614
609
 
615
- #ifdef GSL_0_9_4_LATER
616
610
  static VALUE rb_gsl_histogram2d_pdf_alloc(VALUE klass, VALUE nx, VALUE ny)
617
611
  {
618
612
  gsl_histogram2d_pdf *h = NULL;
@@ -631,17 +625,6 @@ static VALUE rb_gsl_histogram2d_pdf_init(VALUE obj, VALUE hh)
631
625
  gsl_histogram2d_pdf_init(pdf, h);
632
626
  return obj;
633
627
  }
634
- #else
635
- static VALUE rb_gsl_histogram2d_pdf_alloc(VALUE klass, VALUE hhh)
636
- {
637
- gsl_histogram2d_pdf *h = NULL;
638
- gsl_histogram2d *hh;
639
- Data_Get_Struct(hhh, gsl_histogram2d, hh);
640
- h = gsl_histogram2d_pdf_alloc(hh);
641
- return Data_Wrap_Struct(klass, 0, gsl_histogram2d_pdf_free, h);
642
- }
643
-
644
- #endif
645
628
 
646
629
  static VALUE rb_gsl_histogram2d_pdf_sample(VALUE obj, VALUE r1, VALUE r2)
647
630
  {
@@ -690,7 +673,7 @@ static VALUE rb_gsl_histogram2d_bin(VALUE obj)
690
673
  }
691
674
 
692
675
  void mygsl_histogram2d_yproject(const gsl_histogram2d *h2, size_t istart,
693
- size_t iend, gsl_histogram *h)
676
+ size_t iend, gsl_histogram *h)
694
677
  {
695
678
  size_t i, j;
696
679
  double sum;
@@ -705,7 +688,7 @@ void mygsl_histogram2d_yproject(const gsl_histogram2d *h2, size_t istart,
705
688
  }
706
689
 
707
690
  gsl_histogram* mygsl_histogram2d_calloc_yproject(const gsl_histogram2d *h2,
708
- size_t istart, size_t iend)
691
+ size_t istart, size_t iend)
709
692
  {
710
693
  gsl_histogram *h;
711
694
  h = gsl_histogram_calloc_range(h2->ny, h2->yrange);
@@ -714,7 +697,7 @@ gsl_histogram* mygsl_histogram2d_calloc_yproject(const gsl_histogram2d *h2,
714
697
  }
715
698
 
716
699
  void mygsl_histogram2d_xproject(const gsl_histogram2d *h2, size_t jstart,
717
- size_t jend, gsl_histogram *h)
700
+ size_t jend, gsl_histogram *h)
718
701
  {
719
702
  size_t i, j;
720
703
  double sum;
@@ -729,7 +712,7 @@ void mygsl_histogram2d_xproject(const gsl_histogram2d *h2, size_t jstart,
729
712
  }
730
713
 
731
714
  gsl_histogram* mygsl_histogram2d_calloc_xproject(const gsl_histogram2d *h2,
732
- size_t jstart, size_t jend)
715
+ size_t jstart, size_t jend)
733
716
  {
734
717
  gsl_histogram *h;
735
718
  h = gsl_histogram_calloc_range(h2->nx, h2->xrange);
@@ -790,35 +773,35 @@ static VALUE rb_gsl_histogram2d_yproject(int argc, VALUE *argv, VALUE obj)
790
773
  }
791
774
 
792
775
  static int mygsl_histogram2d_fread2(FILE * stream, gsl_histogram2d * h)
793
- {
776
+ {
794
777
  double xmin, xmax, ymin, ymax;
795
778
  int status;
796
779
  status = gsl_block_raw_fread(stream, &xmin, 1, 1);
797
- if (status) return status;
780
+ if (status) return status;
798
781
  status = gsl_block_raw_fread(stream, &xmax, 1, 1);
799
- if (status) return status;
782
+ if (status) return status;
800
783
  status = gsl_block_raw_fread(stream, &ymin, 1, 1);
801
- if (status) return status;
784
+ if (status) return status;
802
785
  status = gsl_block_raw_fread(stream, &ymax, 1, 1);
803
- if (status) return status;
786
+ if (status) return status;
804
787
  gsl_histogram2d_set_ranges_uniform(h, xmin, xmax, ymin, ymax);
805
- status = gsl_block_raw_fread (stream, h->bin, h->nx*h->ny, 1);
806
- if (status) return status;
788
+ status = gsl_block_raw_fread (stream, h->bin, h->nx*h->ny, 1);
789
+ if (status) return status;
807
790
  return status;
808
791
  }
809
792
 
810
793
  static int mygsl_histogram2d_fwrite2(FILE * stream, const gsl_histogram2d * h)
811
- {
794
+ {
812
795
  int status;
813
796
  status = gsl_block_raw_fwrite (stream, h->xrange, 1, 1);
814
- if (status) return status;
797
+ if (status) return status;
815
798
  status = gsl_block_raw_fwrite (stream, h->xrange+h->nx, 1, 1);
816
- if (status) return status;
799
+ if (status) return status;
817
800
  status = gsl_block_raw_fwrite (stream, h->yrange, 1, 1);
818
- if (status) return status;
801
+ if (status) return status;
819
802
  status = gsl_block_raw_fwrite (stream, h->yrange+h->ny, 1, 1);
820
- if (status) return status;
821
- status = gsl_block_raw_fwrite (stream, h->bin, h->nx*h->ny, 1);
803
+ if (status) return status;
804
+ status = gsl_block_raw_fwrite (stream, h->bin, h->nx*h->ny, 1);
822
805
  return status;
823
806
  }
824
807
 
@@ -847,7 +830,7 @@ static VALUE rb_gsl_histogram2d_fread2(VALUE obj, VALUE io)
847
830
  }
848
831
 
849
832
  static gsl_histogram2d* mygsl_histogram2d_calloc_integrate(const gsl_histogram2d *h,
850
- int flag)
833
+ int flag)
851
834
  {
852
835
  gsl_histogram2d *hi;
853
836
  size_t i, j, k;
@@ -857,37 +840,37 @@ static gsl_histogram2d* mygsl_histogram2d_calloc_integrate(const gsl_histogram2d
857
840
  if (flag == -1) {
858
841
  hi->bin[n-1] = h->bin[n-1];
859
842
  i = nx - 1;
860
- for (j = ny-2, k = 0; j >= 0; j--, k++) {
843
+ for (j = ny-2, k = 0;; j--, k++) {
861
844
  hi->bin[n-1-k] = gsl_histogram2d_get(hi, i, j+1) + gsl_histogram2d_get(h, i, j);
862
845
  if (j == 0) break;
863
846
  }
864
847
  j = ny - 1;
865
- for (i = nx-2; i >= 0; i--) {
848
+ for (i = nx-2;; i--) {
866
849
  hi->bin[i*ny + j] = gsl_histogram2d_get(hi, i+1, j) + gsl_histogram2d_get(h, i, j);
867
850
  if (i == 0) break;
868
851
  }
869
- for (i = nx-2; i >= 0; i--) {
870
- for (j = ny-2; j >= 0; j--) {
871
- hi->bin[i*ny+j] = ((gsl_histogram2d_get(hi, i+1, j)
872
- + gsl_histogram2d_get(hi, i, j+1))
873
- - gsl_histogram2d_get(hi, i+1, j+1))
874
- + gsl_histogram2d_get(h, i, j);
875
- if (j == 0) break;
852
+ for (i = nx-2;; i--) {
853
+ for (j = ny-2;; j--) {
854
+ hi->bin[i*ny+j] = ((gsl_histogram2d_get(hi, i+1, j)
855
+ + gsl_histogram2d_get(hi, i, j+1))
856
+ - gsl_histogram2d_get(hi, i+1, j+1))
857
+ + gsl_histogram2d_get(h, i, j);
858
+ if (j == 0) break;
876
859
  }
877
860
  if (i == 0) break;
878
861
  }
879
862
  } else {
880
863
  hi->bin[0] = h->bin[0];
881
- for (j = 1; j < ny; j++) hi->bin[j] = gsl_histogram2d_get(hi, 0, j-1)
882
- + gsl_histogram2d_get(h, 0, j);
864
+ for (j = 1; j < ny; j++) hi->bin[j] = gsl_histogram2d_get(hi, 0, j-1)
865
+ + gsl_histogram2d_get(h, 0, j);
883
866
  for (i = 1; i < nx; i++) hi->bin[i*ny] = gsl_histogram2d_get(hi, i-1, 0)
884
- + gsl_histogram2d_get(h, i, 0);
867
+ + gsl_histogram2d_get(h, i, 0);
885
868
  for (i = 1; i < nx; i++) {
886
869
  for (j = 1; j < ny; j++) {
887
- hi->bin[i*ny+j] = ((gsl_histogram2d_get(hi, i-1, j)
888
- + gsl_histogram2d_get(hi, i, j-1))
889
- - gsl_histogram2d_get(hi, i-1, j-1))
890
- + gsl_histogram2d_get(h, i, j);
870
+ hi->bin[i*ny+j] = ((gsl_histogram2d_get(hi, i-1, j)
871
+ + gsl_histogram2d_get(hi, i, j-1))
872
+ - gsl_histogram2d_get(hi, i-1, j-1))
873
+ + gsl_histogram2d_get(h, i, j);
891
874
  }
892
875
  }
893
876
  }
@@ -941,40 +924,39 @@ void Init_gsl_histogram2d(VALUE module)
941
924
 
942
925
  cgsl_histogram2d = rb_define_class_under(module, "Histogram2d", cGSL_Object);
943
926
  cgsl_histogram2d_view = rb_define_class_under(cgsl_histogram2d, "View",
944
- cgsl_histogram);
927
+ cgsl_histogram);
928
+
929
+ cgsl_histogram2d_integ = rb_define_class_under(cgsl_histogram2d, "Integral",
930
+ cgsl_histogram2d);
945
931
 
946
- cgsl_histogram2d_integ = rb_define_class_under(cgsl_histogram2d, "Integral",
947
- cgsl_histogram2d);
948
- #ifdef GSL_0_9_4_LATER
949
932
  /* rb_define_singleton_method(cgsl_histogram2d, "new", rb_gsl_histogram2d_alloc, -1);*/
950
933
  rb_define_singleton_method(cgsl_histogram2d, "alloc", rb_gsl_histogram2d_alloc, -1);
951
- rb_define_singleton_method(cgsl_histogram2d, "new_uniform",
952
- rb_gsl_histogram2d_alloc_uniform, -1);
953
- rb_define_singleton_method(cgsl_histogram2d, "alloc_uniform",
954
- rb_gsl_histogram2d_alloc_uniform, -1);
955
- #endif
956
-
957
- rb_define_singleton_method(cgsl_histogram2d, "equal_bins_p",
958
- rb_gsl_histogram2d_equal_bins_p, 2);
959
- rb_define_singleton_method(cgsl_histogram2d, "equal_bins_p?",
960
- rb_gsl_histogram2d_equal_bins_p2, 2);
961
-
962
- rb_define_method(cgsl_histogram2d, "set_ranges",
963
- rb_gsl_histogram2d_set_ranges, -1);
964
- rb_define_method(cgsl_histogram2d, "set_ranges_uniform",
965
- rb_gsl_histogram2d_set_ranges_uniform, -1);
966
-
967
- rb_define_singleton_method(cgsl_histogram2d, "memcpy",
968
- rb_gsl_histogram2d_memcpy, 2);
934
+ rb_define_singleton_method(cgsl_histogram2d, "new_uniform",
935
+ rb_gsl_histogram2d_alloc_uniform, -1);
936
+ rb_define_singleton_method(cgsl_histogram2d, "alloc_uniform",
937
+ rb_gsl_histogram2d_alloc_uniform, -1);
938
+
939
+ rb_define_singleton_method(cgsl_histogram2d, "equal_bins_p",
940
+ rb_gsl_histogram2d_equal_bins_p, 2);
941
+ rb_define_singleton_method(cgsl_histogram2d, "equal_bins_p?",
942
+ rb_gsl_histogram2d_equal_bins_p2, 2);
943
+
944
+ rb_define_method(cgsl_histogram2d, "set_ranges",
945
+ rb_gsl_histogram2d_set_ranges, -1);
946
+ rb_define_method(cgsl_histogram2d, "set_ranges_uniform",
947
+ rb_gsl_histogram2d_set_ranges_uniform, -1);
948
+
949
+ rb_define_singleton_method(cgsl_histogram2d, "memcpy",
950
+ rb_gsl_histogram2d_memcpy, 2);
969
951
  rb_define_method(cgsl_histogram2d, "clone", rb_gsl_histogram2d_clone, 0);
970
952
  rb_define_alias(cgsl_histogram2d, "duplicate", "clone");
971
- rb_define_method(cgsl_histogram2d, "increment",
972
- rb_gsl_histogram2d_accumulate, -1);
953
+ rb_define_method(cgsl_histogram2d, "increment",
954
+ rb_gsl_histogram2d_accumulate, -1);
973
955
  rb_define_alias(cgsl_histogram2d, "fill", "increment");
974
956
  rb_define_alias(cgsl_histogram2d, "accumulate", "increment");
975
957
 
976
- rb_define_method(cgsl_histogram2d, "increment2",
977
- rb_gsl_histogram2d_accumulate2, -1);
958
+ rb_define_method(cgsl_histogram2d, "increment2",
959
+ rb_gsl_histogram2d_accumulate2, -1);
978
960
  rb_define_alias(cgsl_histogram2d, "accumulate2", "increment2");
979
961
  rb_define_alias(cgsl_histogram2d, "fill2", "increment2");
980
962
 
@@ -997,7 +979,6 @@ void Init_gsl_histogram2d(VALUE module)
997
979
  rb_define_method(cgsl_histogram2d, "min_val", rb_gsl_histogram2d_min_val, 0);
998
980
  rb_define_method(cgsl_histogram2d, "min_bin", rb_gsl_histogram2d_min_bin, 0);
999
981
 
1000
- #ifdef GSL_1_1_LATER
1001
982
  rb_define_method(cgsl_histogram2d, "xmean", rb_gsl_histogram2d_xmean, 0);
1002
983
  rb_define_method(cgsl_histogram2d, "ymean", rb_gsl_histogram2d_ymean, 0);
1003
984
  rb_define_method(cgsl_histogram2d, "xsigma", rb_gsl_histogram2d_xsigma, 0);
@@ -1005,7 +986,6 @@ void Init_gsl_histogram2d(VALUE module)
1005
986
  rb_define_method(cgsl_histogram2d, "cov", rb_gsl_histogram2d_cov, 0);
1006
987
  rb_define_method(cgsl_histogram2d, "sum", rb_gsl_histogram2d_sum, 0);
1007
988
  rb_define_alias(cgsl_histogram2d, "integral", "sum");
1008
- #endif
1009
989
 
1010
990
  rb_define_method(cgsl_histogram2d, "add", rb_gsl_histogram2d_add, 1);
1011
991
  rb_define_alias(cgsl_histogram2d, "+", "add");
@@ -1029,18 +1009,12 @@ void Init_gsl_histogram2d(VALUE module)
1029
1009
  rb_define_method(cgsl_histogram2d, "fscanf", rb_gsl_histogram2d_fscanf, 3);
1030
1010
 
1031
1011
  cgsl_histogram2d_pdf = rb_define_class_under(cgsl_histogram2d, "Pdf", cGSL_Object);
1032
- #ifdef GSL_0_9_4_LATER
1033
- /* rb_define_singleton_method(cgsl_histogram2d_pdf, "new",
1012
+
1013
+ /* rb_define_singleton_method(cgsl_histogram2d_pdf, "new",
1034
1014
  rb_gsl_histogram2d_pdf_alloc, 2);*/
1035
- rb_define_singleton_method(cgsl_histogram2d_pdf, "alloc",
1036
- rb_gsl_histogram2d_pdf_alloc, 2);
1015
+ rb_define_singleton_method(cgsl_histogram2d_pdf, "alloc",
1016
+ rb_gsl_histogram2d_pdf_alloc, 2);
1037
1017
  rb_define_method(cgsl_histogram2d_pdf, "init", rb_gsl_histogram2d_pdf_init, 1);
1038
- #else
1039
- /* rb_define_singleton_method(cgsl_histogram2d_pdf, "new",
1040
- rb_gsl_histogram2d_pdf_alloc, 1);*/
1041
- rb_define_singleton_method(cgsl_histogram2d_pdf, "alloc",
1042
- rb_gsl_histogram2d_pdf_alloc, 1);
1043
- #endif
1044
1018
 
1045
1019
  rb_define_method(cgsl_histogram2d_pdf, "sample", rb_gsl_histogram2d_pdf_sample, 2);
1046
1020
 
@@ -8,10 +8,10 @@
8
8
  This library is distributed in the hope that it will be useful, but
9
9
  WITHOUT ANY WARRANTY.
10
10
  */
11
- #include "rb_gsl_config.h"
12
- #include "rb_gsl_histogram.h"
13
- #include "rb_gsl_common.h"
14
- #include "rb_gsl_array.h"
11
+
12
+ #include "include/rb_gsl_histogram.h"
13
+ #include "include/rb_gsl_common.h"
14
+ #include "include/rb_gsl_array.h"
15
15
 
16
16
  static VALUE cgsl_histogram3d;
17
17
  static VALUE cgsl_histogram3d_view;
@@ -24,27 +24,27 @@ static VALUE rb_gsl_histogram3d_new(int argc, VALUE *argv, VALUE klass)
24
24
  size_t nx, ny, nz;
25
25
  switch (argc) {
26
26
  case 3:
27
- if (TYPE(argv[0]) == T_FIXNUM
28
- && TYPE(argv[1]) == T_FIXNUM && TYPE(argv[2]) == T_FIXNUM) {
29
- h = mygsl_histogram3d_alloc(FIX2INT(argv[0]),
30
- FIX2INT(argv[1]), FIX2INT(argv[2]));
27
+ if (TYPE(argv[0]) == T_FIXNUM
28
+ && TYPE(argv[1]) == T_FIXNUM && TYPE(argv[2]) == T_FIXNUM) {
29
+ h = mygsl_histogram3d_alloc(FIX2INT(argv[0]),
30
+ FIX2INT(argv[1]), FIX2INT(argv[2]));
31
31
  } else if (VECTOR_P(argv[0]) && VECTOR_P(argv[1]) && VECTOR_P(argv[2])) {
32
32
  Data_Get_Struct(argv[0], gsl_vector, xrange);
33
33
  Data_Get_Struct(argv[1], gsl_vector, yrange);
34
34
  Data_Get_Struct(argv[2], gsl_vector, zrange);
35
35
  h = mygsl_histogram3d_alloc(xrange->size-1, yrange->size-1, zrange->size-1);
36
36
  mygsl_histogram3d_set_ranges(h, xrange->data, xrange->size,
37
- yrange->data, yrange->size,
38
- zrange->data, zrange->size);
39
- } else if (TYPE(argv[0]) == T_ARRAY
40
- && TYPE(argv[1]) == T_ARRAY && TYPE(argv[2]) == T_ARRAY) {
37
+ yrange->data, yrange->size,
38
+ zrange->data, zrange->size);
39
+ } else if (TYPE(argv[0]) == T_ARRAY
40
+ && TYPE(argv[1]) == T_ARRAY && TYPE(argv[2]) == T_ARRAY) {
41
41
  xrange = make_cvector_from_rarray(argv[0]);
42
42
  yrange = make_cvector_from_rarray(argv[1]);
43
43
  zrange = make_cvector_from_rarray(argv[2]);
44
44
  h = mygsl_histogram3d_alloc(xrange->size-1, yrange->size-1, zrange->size-1);
45
45
  mygsl_histogram3d_set_ranges(h, xrange->data, xrange->size,
46
- yrange->data, yrange->size,
47
- zrange->data, zrange->size);
46
+ yrange->data, yrange->size,
47
+ zrange->data, zrange->size);
48
48
  gsl_vector_free(zrange);
49
49
  gsl_vector_free(yrange);
50
50
  gsl_vector_free(xrange);
@@ -54,7 +54,7 @@ static VALUE rb_gsl_histogram3d_new(int argc, VALUE *argv, VALUE klass)
54
54
  break;
55
55
  case 6:
56
56
  CHECK_FIXNUM(argv[0]); CHECK_FIXNUM(argv[2]); CHECK_FIXNUM(argv[4]);
57
- Check_Type(argv[1], T_ARRAY); Check_Type(argv[3], T_ARRAY);
57
+ Check_Type(argv[1], T_ARRAY); Check_Type(argv[3], T_ARRAY);
58
58
  Check_Type(argv[5], T_ARRAY);
59
59
  nx = FIX2INT(argv[0]); ny = FIX2INT(argv[2]); nz = FIX2INT(argv[4]);
60
60
  xmin = NUM2DBL(rb_ary_entry(argv[1], 0));
@@ -64,7 +64,7 @@ static VALUE rb_gsl_histogram3d_new(int argc, VALUE *argv, VALUE klass)
64
64
  zmin = NUM2DBL(rb_ary_entry(argv[5], 0));
65
65
  zmax = NUM2DBL(rb_ary_entry(argv[5], 1));
66
66
  h = mygsl_histogram3d_calloc_uniform(nx, ny, nz, xmin, xmax, ymin, ymax,
67
- zmin, zmax);
67
+ zmin, zmax);
68
68
  break;
69
69
  case 9:
70
70
  CHECK_FIXNUM(argv[0]); CHECK_FIXNUM(argv[3]); CHECK_FIXNUM(argv[6]);
@@ -73,7 +73,7 @@ static VALUE rb_gsl_histogram3d_new(int argc, VALUE *argv, VALUE klass)
73
73
  ymin = NUM2DBL(argv[4]); ymax = NUM2DBL(argv[5]);
74
74
  zmin = NUM2DBL(argv[7]); zmax = NUM2DBL(argv[8]);
75
75
  h = mygsl_histogram3d_calloc_uniform(nx, ny, nz, xmin, xmax, ymin, ymax,
76
- zmin, zmax);
76
+ zmin, zmax);
77
77
  break;
78
78
  default:
79
79
  break;
@@ -189,37 +189,37 @@ static VALUE rb_gsl_histogram3d_get(int argc, VALUE *argv, VALUE obj)
189
189
  // switch (RARRAY(argv[0])->len) {
190
190
  switch (RARRAY_LEN(argv[0])) {
191
191
  case 1:
192
- i = FIX2INT(rb_ary_entry(argv[0], 0));
193
- h2 = ALLOC(mygsl_histogram3d_view);
194
- h2->h.nx = h->ny;
195
- h2->h.ny = h->nz;
196
- h2->h.xrange = h->yrange;
197
- h2->h.yrange = h->zrange;
198
- h2->h.bin = h->bin + i*h->ny*h->nz;
199
- return Data_Wrap_Struct(cgsl_histogram3d_view, 0, free, h2);
200
- break;
192
+ i = FIX2INT(rb_ary_entry(argv[0], 0));
193
+ h2 = ALLOC(mygsl_histogram3d_view);
194
+ h2->h.nx = h->ny;
195
+ h2->h.ny = h->nz;
196
+ h2->h.xrange = h->yrange;
197
+ h2->h.yrange = h->zrange;
198
+ h2->h.bin = h->bin + i*h->ny*h->nz;
199
+ return Data_Wrap_Struct(cgsl_histogram3d_view, 0, free, h2);
200
+ break;
201
201
  case 2:
202
- i = FIX2INT(rb_ary_entry(argv[0], 0));
203
- j = FIX2INT(rb_ary_entry(argv[0], 1));
204
- h1 = ALLOC(mygsl_histogram2d_view);
205
- h1->h.n = h->nz;
206
- h1->h.range = h->zrange;
207
- h1->h.bin = h->bin + i*h->ny*h->nz + j*h->nz;
208
- return Data_Wrap_Struct(cgsl_histogram2d_view, 0, free, h1);
209
- break;
202
+ i = FIX2INT(rb_ary_entry(argv[0], 0));
203
+ j = FIX2INT(rb_ary_entry(argv[0], 1));
204
+ h1 = ALLOC(mygsl_histogram2d_view);
205
+ h1->h.n = h->nz;
206
+ h1->h.range = h->zrange;
207
+ h1->h.bin = h->bin + i*h->ny*h->nz + j*h->nz;
208
+ return Data_Wrap_Struct(cgsl_histogram2d_view, 0, free, h1);
209
+ break;
210
210
  case 3:
211
- i = FIX2INT(rb_ary_entry(argv[0], 0));
212
- j = FIX2INT(rb_ary_entry(argv[0], 1));
213
- k = FIX2INT(rb_ary_entry(argv[0], 2));
214
- /* do the last line of this function */
215
- break;
211
+ i = FIX2INT(rb_ary_entry(argv[0], 0));
212
+ j = FIX2INT(rb_ary_entry(argv[0], 1));
213
+ k = FIX2INT(rb_ary_entry(argv[0], 2));
214
+ /* do the last line of this function */
215
+ break;
216
216
  default:
217
- rb_raise(rb_eRuntimeError, "wrong array size");
217
+ rb_raise(rb_eRuntimeError, "wrong array size");
218
218
  }
219
219
  break;
220
220
  default:
221
221
  rb_raise(rb_eTypeError, "wrong argument type %s (Fixnum or Array expected)",
222
- rb_class2name(CLASS_OF(argv[0])));
222
+ rb_class2name(CLASS_OF(argv[0])));
223
223
  break;
224
224
  }
225
225
  break;
@@ -230,7 +230,7 @@ static VALUE rb_gsl_histogram3d_get(int argc, VALUE *argv, VALUE obj)
230
230
  h1->h.n = h->nz;
231
231
  h1->h.range = h->zrange;
232
232
  h1->h.bin = h->bin + i*h->ny*h->nz + j*h->nz;
233
- return Data_Wrap_Struct(cgsl_histogram2d_view, 0, free, h1);
233
+ return Data_Wrap_Struct(cgsl_histogram2d_view, 0, free, h1);
234
234
  break;
235
235
  case 3:
236
236
  CHECK_FIXNUM(argv[0]); CHECK_FIXNUM(argv[1]); CHECK_FIXNUM(argv[2]);
@@ -251,7 +251,7 @@ static VALUE rb_gsl_histogram3d_increment(int argc, VALUE *argv, VALUE obj)
251
251
  case 4:
252
252
  Need_Float(argv[3]);
253
253
  weight = NUM2DBL(argv[3]);
254
- /* no break */
254
+ /* no break */
255
255
  case 3:
256
256
  Need_Float(argv[0]); Need_Float(argv[1]); Need_Float(argv[2]);
257
257
  x = NUM2DBL(argv[0]); y = NUM2DBL(argv[1]); z = NUM2DBL(argv[2]);
@@ -273,7 +273,7 @@ static VALUE rb_gsl_histogram3d_increment2(int argc, VALUE *argv, VALUE obj)
273
273
  case 4:
274
274
  Need_Float(argv[3]);
275
275
  weight = NUM2DBL(argv[3]);
276
- /* no break */
276
+ /* no break */
277
277
  case 3:
278
278
  Need_Float(argv[0]); Need_Float(argv[1]); Need_Float(argv[2]);
279
279
  x = NUM2DBL(argv[0]); y = NUM2DBL(argv[1]); z = NUM2DBL(argv[2]);
@@ -329,7 +329,7 @@ static VALUE rb_gsl_histogram3d_find(VALUE obj, VALUE x, VALUE y, VALUE z)
329
329
  size_t i, j, k;
330
330
  Data_Get_Struct(obj, mygsl_histogram3d, h);
331
331
  mygsl_histogram3d_find(h, NUM2DBL(x), NUM2DBL(y), NUM2DBL(z),
332
- &i, &j, &k);
332
+ &i, &j, &k);
333
333
  return rb_ary_new3(3, INT2FIX(i), INT2FIX(j), INT2FIX(k));
334
334
  }
335
335
 
@@ -346,7 +346,7 @@ static VALUE rb_gsl_histogram3d_set_ranges(VALUE obj, VALUE xx, VALUE yy, VALUE
346
346
  Data_Get_Struct(xx, gsl_vector, xrange);
347
347
  } else {
348
348
  rb_raise(rb_eTypeError, "wrong argument type %s (Array or Vector expected)",
349
- rb_class2name(CLASS_OF(xx)));
349
+ rb_class2name(CLASS_OF(xx)));
350
350
  }
351
351
  if (xrange->size != h->nx+1)
352
352
  rb_raise(rb_eIndexError, "xrange length is different");
@@ -357,7 +357,7 @@ static VALUE rb_gsl_histogram3d_set_ranges(VALUE obj, VALUE xx, VALUE yy, VALUE
357
357
  Data_Get_Struct(yy, gsl_vector, yrange);
358
358
  } else {
359
359
  rb_raise(rb_eTypeError, "wrong argument type %s (Array or Vector expected)",
360
- rb_class2name(CLASS_OF(yy)));
360
+ rb_class2name(CLASS_OF(yy)));
361
361
  }
362
362
  if (yrange->size != h->ny+1)
363
363
  rb_raise(rb_eIndexError, "yrange length is different");
@@ -368,13 +368,13 @@ static VALUE rb_gsl_histogram3d_set_ranges(VALUE obj, VALUE xx, VALUE yy, VALUE
368
368
  Data_Get_Struct(zz, gsl_vector, zrange);
369
369
  } else {
370
370
  rb_raise(rb_eTypeError, "wrong argument type %s (Array or Vector expected)",
371
- rb_class2name(CLASS_OF(zz)));
371
+ rb_class2name(CLASS_OF(zz)));
372
372
  }
373
373
  if (zrange->size != h->nz+1)
374
374
  rb_raise(rb_eIndexError, "zrange length is different");
375
375
  mygsl_histogram3d_set_ranges(h, xrange->data, xrange->size,
376
- yrange->data, yrange->size,
377
- zrange->data, zrange->size);
376
+ yrange->data, yrange->size,
377
+ zrange->data, zrange->size);
378
378
  if (flagz == 1) gsl_vector_free(zrange);
379
379
  if (flagy == 1) gsl_vector_free(yrange);
380
380
  if (flagx == 1) gsl_vector_free(xrange);
@@ -695,7 +695,7 @@ static VALUE rb_gsl_histogram3d_reset(VALUE obj)
695
695
  }
696
696
 
697
697
  static VALUE rb_gsl_histogram3d_oper(VALUE obj, VALUE hh,
698
- int (*func)(mygsl_histogram3d *, const mygsl_histogram3d*))
698
+ int (*func)(mygsl_histogram3d *, const mygsl_histogram3d*))
699
699
  {
700
700
  mygsl_histogram3d *h1, *h2, *hnew;
701
701
  CHECK_HISTOGRAM3D(hh);
@@ -782,18 +782,18 @@ void Init_gsl_histogram3d(VALUE module)
782
782
  {
783
783
  cgsl_histogram3d = rb_define_class_under(module, "Histogram3d", cGSL_Object);
784
784
  cgsl_histogram3d_view = rb_define_class_under(cgsl_histogram3d, "View",
785
- cgsl_histogram2d);
785
+ cgsl_histogram2d);
786
786
 
787
787
  /* rb_define_singleton_method(cgsl_histogram3d, "new", rb_gsl_histogram3d_new, -1);*/
788
- rb_define_singleton_method(cgsl_histogram3d, "alloc",
789
- rb_gsl_histogram3d_new, -1);
790
- rb_define_singleton_method(cgsl_histogram3d, "memcpy",
791
- rb_gsl_histogram3d_memcpy, 2);
788
+ rb_define_singleton_method(cgsl_histogram3d, "alloc",
789
+ rb_gsl_histogram3d_new, -1);
790
+ rb_define_singleton_method(cgsl_histogram3d, "memcpy",
791
+ rb_gsl_histogram3d_memcpy, 2);
792
792
  /******/
793
- rb_define_method(cgsl_histogram3d, "set_ranges",
794
- rb_gsl_histogram3d_set_ranges, 3);
795
- rb_define_method(cgsl_histogram3d, "set_ranges_uniform",
796
- rb_gsl_histogram3d_set_ranges_uniform, -1);
793
+ rb_define_method(cgsl_histogram3d, "set_ranges",
794
+ rb_gsl_histogram3d_set_ranges, 3);
795
+ rb_define_method(cgsl_histogram3d, "set_ranges_uniform",
796
+ rb_gsl_histogram3d_set_ranges_uniform, -1);
797
797
 
798
798
  rb_define_method(cgsl_histogram3d, "nx", rb_gsl_histogram3d_nx, 0);
799
799
  rb_define_method(cgsl_histogram3d, "ny", rb_gsl_histogram3d_ny, 0);
@@ -809,22 +809,22 @@ void Init_gsl_histogram3d(VALUE module)
809
809
  rb_define_method(cgsl_histogram3d, "get", rb_gsl_histogram3d_get, -1);
810
810
  rb_define_alias(cgsl_histogram3d, "[]", "get");
811
811
 
812
- rb_define_method(cgsl_histogram3d, "increment",
813
- rb_gsl_histogram3d_increment, -1);
812
+ rb_define_method(cgsl_histogram3d, "increment",
813
+ rb_gsl_histogram3d_increment, -1);
814
814
  rb_define_alias(cgsl_histogram3d, "fill", "increment");
815
815
  rb_define_alias(cgsl_histogram3d, "accumulate", "increment");
816
816
 
817
- rb_define_method(cgsl_histogram3d, "increment2",
818
- rb_gsl_histogram3d_increment2, -1);
817
+ rb_define_method(cgsl_histogram3d, "increment2",
818
+ rb_gsl_histogram3d_increment2, -1);
819
819
  rb_define_alias(cgsl_histogram3d, "fill2", "increment2");
820
820
  rb_define_alias(cgsl_histogram3d, "accumulate2", "increment2");
821
821
 
822
- rb_define_method(cgsl_histogram3d, "get_xrange",
823
- rb_gsl_histogram3d_get_xrange, 1);
824
- rb_define_method(cgsl_histogram3d, "get_yrange",
825
- rb_gsl_histogram3d_get_yrange, 1);
826
- rb_define_method(cgsl_histogram3d, "get_zrange",
827
- rb_gsl_histogram3d_get_zrange, 1);
822
+ rb_define_method(cgsl_histogram3d, "get_xrange",
823
+ rb_gsl_histogram3d_get_xrange, 1);
824
+ rb_define_method(cgsl_histogram3d, "get_yrange",
825
+ rb_gsl_histogram3d_get_yrange, 1);
826
+ rb_define_method(cgsl_histogram3d, "get_zrange",
827
+ rb_gsl_histogram3d_get_zrange, 1);
828
828
 
829
829
  rb_define_method(cgsl_histogram3d, "find", rb_gsl_histogram3d_find, 3);
830
830
 
@@ -835,12 +835,12 @@ void Init_gsl_histogram3d(VALUE module)
835
835
 
836
836
  /*****/
837
837
 
838
- rb_define_method(cgsl_histogram3d, "xyproject",
839
- rb_gsl_histogram3d_xyproject, -1);
840
- rb_define_method(cgsl_histogram3d, "xzproject",
841
- rb_gsl_histogram3d_xzproject, -1);
842
- rb_define_method(cgsl_histogram3d, "yzproject",
843
- rb_gsl_histogram3d_yzproject, -1);
838
+ rb_define_method(cgsl_histogram3d, "xyproject",
839
+ rb_gsl_histogram3d_xyproject, -1);
840
+ rb_define_method(cgsl_histogram3d, "xzproject",
841
+ rb_gsl_histogram3d_xzproject, -1);
842
+ rb_define_method(cgsl_histogram3d, "yzproject",
843
+ rb_gsl_histogram3d_yzproject, -1);
844
844
 
845
845
  rb_define_method(cgsl_histogram3d, "scale", rb_gsl_histogram3d_scale, 1);
846
846
  rb_define_method(cgsl_histogram3d, "scale!", rb_gsl_histogram3d_scale_bang, 1);