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
@@ -34,5 +34,5 @@ x1 = GSL::Vector.linspace(0, 20, N/DECIMATE1)
34
34
  x2 = GSL::Vector.linspace(0, 20, N/DECIMATE2)
35
35
 
36
36
  # y1 and y2 are shifted vertically for visual purpose
37
- GSL::graph([x0, y0], [x1, y1-1], [x2, y2-2])
37
+ GSL::graph([x0, y0], [x1, y1-1], [x2, y2-2])
38
38
  END
@@ -9,28 +9,28 @@ require 'gsl/gnuplot';
9
9
  # Plot using gnuplot
10
10
  Gnuplot.open do |gp|
11
11
  Gnuplot::Plot.new( gp ) do |plot|
12
-
12
+
13
13
  plot.xrange "[0:10]"
14
14
  plot.yrange "[-1.5:1.5]"
15
15
  plot.title "Sin Wave Example"
16
16
  plot.xlabel "x"
17
17
  plot.ylabel "sin(x)"
18
18
  plot.pointsize 3
19
- plot.grid
19
+ plot.grid
20
20
 
21
21
  x = GSL::Vector[0..10]
22
22
  y = GSL::Sf::sin(x)
23
23
 
24
24
  plot.data = [
25
25
  Gnuplot::DataSet.new( "sin(x)" ) { |ds|
26
- ds.with = "lines"
27
- ds.title = "String function"
28
- ds.linewidth = 4
26
+ ds.with = "lines"
27
+ ds.title = "String function"
28
+ ds.linewidth = 4
29
29
  },
30
-
30
+
31
31
  Gnuplot::DataSet.new( [x, y] ) { |ds|
32
- ds.with = "linespoints"
33
- ds.title = "Array data"
32
+ ds.with = "linespoints"
33
+ ds.title = "Array data"
34
34
  }
35
35
  ]
36
36
 
@@ -78,8 +78,8 @@ __END__
78
78
 
79
79
  v = GSL::Vector::alloc(10)
80
80
  for i in 1...10 do
81
- v.set(i, i.to_f)
82
- end
81
+ v.set(i, i.to_f)
82
+ end
83
83
  v.print
84
84
 
85
85
  v.swap_elements(3, 5)
@@ -31,7 +31,7 @@ perm = data2.abs.sort_index
31
31
  i = 0
32
32
  while (i + nc) < n
33
33
  data2[perm[i]] = 0.0
34
- i += 1
34
+ i += 1
35
35
  end
36
36
 
37
37
  # Choose as you like...
@@ -3,7 +3,7 @@
3
3
  * Based on ALF-0.1
4
4
  */
5
5
  #ifdef HAVE_ALF_ALF_H
6
- #include "rb_gsl.h"
6
+ #include "include/rb_gsl.h"
7
7
 
8
8
  static VALUE cWspace;
9
9
  static VALUE rb_alf_alloc(VALUE klass, VALUE lmax)
@@ -19,7 +19,7 @@ static VALUE rb_alf_params(VALUE obj, VALUE csphase, VALUE cnorm, VALUE norm)
19
19
  int ret;
20
20
  Data_Get_Struct(obj, alf_workspace, w);
21
21
  ret = alf_params(FIX2INT(csphase), FIX2INT(cnorm), (alf_norm_t) FIX2INT(norm), w);
22
- return INT2FIX(ret);
22
+ return INT2FIX(ret);
23
23
  }
24
24
 
25
25
  static void define_constants(VALUE klass)
@@ -60,11 +60,11 @@ static VALUE rb_alf_Plm_array(int argc, VALUE *argv, VALUE obj)
60
60
  Data_Get_Struct(argv[1], gsl_vector, res);
61
61
  lmax = w->lmax;
62
62
  if (res->size < alf_array_size(lmax)) {
63
- rb_raise(rb_eRuntimeError, "Vector length is too small. (%d for >= %d\n", (int) res->size,
64
- (int) alf_array_size(lmax));
63
+ rb_raise(rb_eRuntimeError, "Vector length is too small. (%d for >= %d\n", (int) res->size,
64
+ (int) alf_array_size(lmax));
65
65
  }
66
- ret = argv[1];
67
- } else {
66
+ ret = argv[1];
67
+ } else {
68
68
  lmax = FIX2INT(argv[0]);
69
69
  x = NUM2DBL(argv[1]);
70
70
  res = gsl_vector_alloc(alf_array_size(lmax));
@@ -85,8 +85,8 @@ static VALUE rb_alf_Plm_array(int argc, VALUE *argv, VALUE obj)
85
85
  CHECK_VECTOR(argv[2]);
86
86
  Data_Get_Struct(argv[2], gsl_vector, res);
87
87
  if (res->size < alf_array_size(lmax)) {
88
- rb_raise(rb_eRuntimeError, "Vector length is too small. (%d for >= %d\n", (int) res->size,
89
- (int) alf_array_size(lmax));
88
+ rb_raise(rb_eRuntimeError, "Vector length is too small. (%d for >= %d\n", (int) res->size,
89
+ (int) alf_array_size(lmax));
90
90
  }
91
91
  ret = argv[2];
92
92
  }
@@ -155,11 +155,11 @@ static VALUE rb_alf_Plm_deriv_array(int argc, VALUE *argv, VALUE obj)
155
155
  Data_Get_Struct(argv[3], gsl_vector, deriv);
156
156
  if (res->size < alf_array_size(lmax)) {
157
157
  rb_raise(rb_eRuntimeError, "Vector length is too small. (%d for >= %d\n", (int) res->size,
158
- (int) alf_array_size(lmax));
158
+ (int) alf_array_size(lmax));
159
159
  }
160
160
  if (deriv->size < alf_array_size(lmax)) {
161
161
  rb_raise(rb_eRuntimeError, "Vector length is too small. (%d for >= %d\n", (int) res->size,
162
- (int) alf_array_size(lmax));
162
+ (int) alf_array_size(lmax));
163
163
  }
164
164
  ret1 = argv[2];
165
165
  ret2 = argv[3];
@@ -9,14 +9,10 @@
9
9
  WITHOUT ANY WARRANTY.
10
10
  */
11
11
 
12
- #include "rb_gsl_config.h"
13
-
14
- #include "rb_gsl_common.h"
15
- #include "rb_gsl_array.h"
16
- #include "rb_gsl_complex.h"
17
- #ifdef HAVE_NARRAY_H
18
- #include "rb_gsl_with_narray.h"
19
- #endif
12
+ #include "include/rb_gsl_common.h"
13
+ #include "include/rb_gsl_array.h"
14
+ #include "include/rb_gsl_complex.h"
15
+ #include "include/rb_gsl_with_narray.h"
20
16
 
21
17
  /* global variables */
22
18
  VALUE cgsl_block, cgsl_block_int;
@@ -49,9 +45,6 @@ double* get_vector_ptr(VALUE ary, size_t *stride, size_t *n)
49
45
  gsl_vector *v = NULL;
50
46
  gsl_vector_complex *vc = NULL;
51
47
  gsl_matrix *m;
52
- #ifdef HAVE_NARRAY_H
53
- VALUE ary2;
54
- #endif
55
48
  if (VECTOR_P(ary)) {
56
49
  Data_Get_Struct(ary, gsl_vector, v);
57
50
  *stride = v->stride;
@@ -69,6 +62,7 @@ double* get_vector_ptr(VALUE ary, size_t *stride, size_t *n)
69
62
  return m->data;
70
63
  #ifdef HAVE_NARRAY_H
71
64
  } else if (NA_IsNArray(ary)) {
65
+ VALUE ary2;
72
66
  *n = NA_TOTAL(ary);
73
67
  *stride = 1;
74
68
  ary2 = na_change_type(ary, NA_DFLOAT);
@@ -76,7 +70,7 @@ double* get_vector_ptr(VALUE ary, size_t *stride, size_t *n)
76
70
  #endif
77
71
  } else {
78
72
  rb_raise(rb_eTypeError,
79
- "wrong argument type %s", rb_class2name(CLASS_OF(ary)));
73
+ "wrong argument type %s", rb_class2name(CLASS_OF(ary)));
80
74
  }
81
75
  }
82
76
 
@@ -93,7 +87,7 @@ gsl_vector* get_cvector(VALUE obj)
93
87
  rb_raise(rb_eTypeError,
94
88
  "wrong argument type %s", rb_class2name(CLASS_OF(obj)));
95
89
  }
96
- return v;
90
+ return v;
97
91
  }
98
92
 
99
93
  VALUE make_rarray_from_cvector(const gsl_vector *v)
@@ -144,7 +138,7 @@ gsl_vector* get_vector(VALUE ary)
144
138
  return v;
145
139
  } else {
146
140
  rb_raise(rb_eTypeError,
147
- "wrong argument type %s", rb_class2name(CLASS_OF(ary)));
141
+ "wrong argument type %s", rb_class2name(CLASS_OF(ary)));
148
142
  }
149
143
  }
150
144
 
@@ -159,7 +153,7 @@ gsl_vector* make_cvector_from_rarrays(VALUE ary)
159
153
  #endif
160
154
  } else {
161
155
  rb_raise(rb_eTypeError,
162
- "wrong argument type %s", rb_class2name(CLASS_OF(ary)));
156
+ "wrong argument type %s", rb_class2name(CLASS_OF(ary)));
163
157
  }
164
158
  }
165
159
 
@@ -186,7 +180,7 @@ void carray_set_from_rarrays(double *a, VALUE ary)
186
180
  #endif
187
181
  } else {
188
182
  rb_raise(rb_eTypeError,
189
- "wrong argument type %s", rb_class2name(CLASS_OF(ary)));
183
+ "wrong argument type %s", rb_class2name(CLASS_OF(ary)));
190
184
  }
191
185
  }
192
186
 
@@ -276,7 +270,7 @@ VALUE make_matrix_clone2(VALUE vm)
276
270
  mnew = gsl_matrix_alloc(m->size1, m->size2);
277
271
  if (mnew == NULL) rb_raise(rb_eNoMemError, "gsl_matrix_alloc failed");
278
272
  gsl_matrix_memcpy(mnew, m);
279
- return Data_Wrap_Struct(cgsl_matrix, 0, gsl_matrix_free, mnew);;
273
+ return Data_Wrap_Struct(cgsl_matrix, 0, gsl_matrix_free, mnew);
280
274
  }
281
275
 
282
276
  gsl_matrix_complex* make_matrix_complex_clone(const gsl_matrix_complex *m)
@@ -318,8 +312,8 @@ gsl_matrix_complex* matrix_to_complex(const gsl_matrix *m)
318
312
  return cm;
319
313
  }
320
314
 
321
- void gsl_matrix_complex_mul(gsl_matrix_complex *mnew, const gsl_matrix_complex *m,
322
- const gsl_matrix_complex *mb)
315
+ void gsl_matrix_complex_mul(gsl_matrix_complex *mnew, const gsl_matrix_complex *m,
316
+ const gsl_matrix_complex *mb)
323
317
  {
324
318
  gsl_complex a, b, c, sum;
325
319
  size_t i, j, k;
@@ -327,45 +321,45 @@ void gsl_matrix_complex_mul(gsl_matrix_complex *mnew, const gsl_matrix_complex *
327
321
  for (j = 0; j < m->size2; j++) {
328
322
  sum = gsl_complex_rect(0.0, 0.0);
329
323
  for (k = 0; k < m->size2; k++) {
330
- a = gsl_matrix_complex_get(m, j, k);
331
- b = gsl_matrix_complex_get(mb, k, i);
332
- c = gsl_complex_mul(a, b);
333
- sum = gsl_complex_add(sum, c);
324
+ a = gsl_matrix_complex_get(m, j, k);
325
+ b = gsl_matrix_complex_get(mb, k, i);
326
+ c = gsl_complex_mul(a, b);
327
+ sum = gsl_complex_add(sum, c);
334
328
  }
335
329
  gsl_matrix_complex_set(mnew, j, i, sum);
336
330
  }
337
331
  }
338
332
  }
339
333
 
340
- void gsl_matrix_mul_vector(gsl_vector *vnew,
341
- const gsl_matrix *m, const gsl_vector *v)
334
+ void gsl_matrix_mul_vector(gsl_vector *vnew,
335
+ const gsl_matrix *m, const gsl_vector *v)
342
336
  {
343
337
  size_t i, j;
344
338
  double val;
345
339
  for (i = 0; i < m->size1; i++) {
346
340
  val = 0;
347
- for (j = 0; j < m->size2; j++)
341
+ for (j = 0; j < m->size2; j++)
348
342
  val += gsl_matrix_get(m, i, j)*gsl_vector_get(v, j);
349
343
  gsl_vector_set(vnew, i, val);
350
344
  }
351
345
  }
352
346
 
353
- void gsl_matrix_int_mul_vector(gsl_vector_int *vnew,
354
- const gsl_matrix_int *m, const gsl_vector_int *v)
347
+ void gsl_matrix_int_mul_vector(gsl_vector_int *vnew,
348
+ const gsl_matrix_int *m, const gsl_vector_int *v)
355
349
  {
356
350
  size_t i, j;
357
351
  int val;
358
352
  for (i = 0; i < m->size1; i++) {
359
353
  val = 0;
360
- for (j = 0; j < m->size2; j++)
354
+ for (j = 0; j < m->size2; j++)
361
355
  val += gsl_matrix_int_get(m, i, j)*gsl_vector_int_get(v, j);
362
356
  gsl_vector_int_set(vnew, i, val);
363
357
  }
364
358
  }
365
359
 
366
- void gsl_matrix_complex_mul_vector(gsl_vector_complex *vnew,
367
- const gsl_matrix_complex *m,
368
- const gsl_vector_complex *v)
360
+ void gsl_matrix_complex_mul_vector(gsl_vector_complex *vnew,
361
+ const gsl_matrix_complex *m,
362
+ const gsl_vector_complex *v)
369
363
  {
370
364
  gsl_complex a, b, c, sum;
371
365
  size_t i, j;
@@ -379,98 +373,17 @@ void gsl_matrix_complex_mul_vector(gsl_vector_complex *vnew,
379
373
  }
380
374
  gsl_vector_complex_set(vnew, i, sum);
381
375
  }
382
-
383
- }
384
-
385
- /*****/
386
- #ifndef GSL_1_12_LATER
387
- int gsl_vector_complex_add(gsl_vector_complex *cv, const gsl_vector_complex *cv2)
388
- {
389
- size_t i;
390
- gsl_complex a, b, c;
391
- for (i = 0; i < cv->size; i++) {
392
- a = gsl_vector_complex_get(cv, i);
393
- b = gsl_vector_complex_get(cv2, i);
394
- c = gsl_complex_add(a, b);
395
- gsl_vector_complex_set(cv, i, c);
396
- }
397
- return 0;
398
- }
399
-
400
- int gsl_vector_complex_add_constant(gsl_vector_complex *cv, gsl_complex b)
401
- {
402
- size_t i;
403
- gsl_complex a, c;
404
- for (i = 0; i < cv->size; i++) {
405
- a = gsl_vector_complex_get(cv, i);
406
- c = gsl_complex_add(a, b);
407
- gsl_vector_complex_set(cv, i, c);
408
- }
409
- return 0;
410
- }
411
-
412
- int gsl_vector_complex_scale(gsl_vector_complex *cv, gsl_complex b)
413
- {
414
- size_t i;
415
- gsl_complex a, c;
416
- for (i = 0; i < cv->size; i++) {
417
- a = gsl_vector_complex_get(cv, i);
418
- c = gsl_complex_mul(a, b);
419
- gsl_vector_complex_set(cv, i, c);
420
- }
421
- return 0;
422
- }
423
-
424
-
425
- int gsl_vector_complex_sub(gsl_vector_complex *cv, const gsl_vector_complex *cv2)
426
- {
427
- size_t i;
428
- gsl_complex a, b, c;
429
- for (i = 0; i < cv->size; i++) {
430
- a = gsl_vector_complex_get(cv, i);
431
- b = gsl_vector_complex_get(cv2, i);
432
- c = gsl_complex_sub(a, b);
433
- gsl_vector_complex_set(cv, i, c);
434
- }
435
- return 0;
436
- }
437
-
438
- int gsl_vector_complex_mul(gsl_vector_complex *cv, const gsl_vector_complex *cv2)
439
- {
440
- size_t i;
441
- gsl_complex a, b, c;
442
- for (i = 0; i < cv->size; i++) {
443
- a = gsl_vector_complex_get(cv, i);
444
- b = gsl_vector_complex_get(cv2, i);
445
- c = gsl_complex_mul(a, b);
446
- gsl_vector_complex_set(cv, i, c);
447
- }
448
- return 0;
449
376
  }
450
377
 
451
- int gsl_vector_complex_div(gsl_vector_complex *cv, const gsl_vector_complex *cv2)
452
- {
453
- size_t i;
454
- gsl_complex a, b, c;
455
- for (i = 0; i < cv->size; i++) {
456
- a = gsl_vector_complex_get(cv, i);
457
- b = gsl_vector_complex_get(cv2, i);
458
- c = gsl_complex_div(a, b);
459
- gsl_vector_complex_set(cv, i, c);
460
- }
461
- return 0;
462
- }
463
- #endif
464
-
465
378
  VALUE rb_gsl_range2ary(VALUE obj)
466
379
  {
467
380
  // double beg, en;
468
381
  // size_t n;
469
382
  // int step;
470
383
  VALUE ary;
471
- if (CLASS_OF(obj) != rb_cRange)
384
+ if (CLASS_OF(obj) != rb_cRange)
472
385
  rb_raise(rb_eTypeError, "wrong argument type %s (Range expected)",
473
- rb_class2name(CLASS_OF(obj)));
386
+ rb_class2name(CLASS_OF(obj)));
474
387
  ary = rb_funcall(obj, rb_gsl_id_to_a, 0);
475
388
  return ary;
476
389
  }
@@ -482,12 +395,12 @@ VALUE rb_gsl_range2vector(VALUE obj)
482
395
  size_t n;
483
396
  int i, step;
484
397
  gsl_vector *v;
485
- if (CLASS_OF(obj) != rb_cRange)
398
+ if (CLASS_OF(obj) != rb_cRange)
486
399
  rb_raise(rb_eTypeError, "wrong argument type %s (Range expected)",
487
- rb_class2name(CLASS_OF(obj)));
400
+ rb_class2name(CLASS_OF(obj)));
488
401
  get_range_beg_en_n(obj, &beg, &en, &n, &step);
489
402
  v = gsl_vector_alloc(n);
490
- for (i = 0; i < n; i++) gsl_vector_set(v, i, (double) (beg+i));
403
+ for (i = 0; i < (int) n; i++) gsl_vector_set(v, i, (double) (beg+i));
491
404
  return Data_Wrap_Struct(cgsl_vector, 0, gsl_vector_free, v);
492
405
  }
493
406
 
@@ -497,12 +410,12 @@ VALUE rb_gsl_range2vector_int(VALUE obj)
497
410
  int beg, en, i, step;
498
411
  size_t n;
499
412
  gsl_vector_int *v;
500
- if (CLASS_OF(obj) != rb_cRange)
413
+ if (CLASS_OF(obj) != rb_cRange)
501
414
  rb_raise(rb_eTypeError, "wrong argument type %s (Range expected)",
502
- rb_class2name(CLASS_OF(obj)));
415
+ rb_class2name(CLASS_OF(obj)));
503
416
  get_range_int_beg_en_n(obj, &beg, &en, &n, &step);
504
417
  v = gsl_vector_int_alloc(n);
505
- for (i = 0; i < n; i++) gsl_vector_int_set(v, i, beg+i);
418
+ for (i = 0; i < (int) n; i++) gsl_vector_int_set(v, i, beg+i);
506
419
  return Data_Wrap_Struct(cgsl_vector_int, 0, gsl_vector_int_free, v);
507
420
  }
508
421
 
@@ -549,71 +462,71 @@ void rb_gsl_matrix_int_view_free(gsl_matrix_int_view * mv)
549
462
 
550
463
  void Init_gsl_array(VALUE module)
551
464
  {
552
- cgsl_block = rb_define_class_under(module, "Block",
553
- cGSL_Object);
554
- cgsl_block_int = rb_define_class_under(cgsl_block, "Int",
555
- cGSL_Object);
556
- cgsl_block_uchar = rb_define_class_under(cgsl_block, "Byte",
557
- cGSL_Object);
465
+ cgsl_block = rb_define_class_under(module, "Block",
466
+ cGSL_Object);
467
+ cgsl_block_int = rb_define_class_under(cgsl_block, "Int",
468
+ cGSL_Object);
469
+ cgsl_block_uchar = rb_define_class_under(cgsl_block, "Byte",
470
+ cGSL_Object);
558
471
 
559
472
  cgsl_block_complex = rb_define_class_under(cgsl_block, "Complex", cgsl_block);
560
- cgsl_vector = rb_define_class_under(module, "Vector",
561
- cGSL_Object);
562
- cgsl_vector_col = rb_define_class_under(cgsl_vector, "Col",
563
- cgsl_vector);
564
- cgsl_vector_complex = rb_define_class_under(cgsl_vector, "Complex",
565
- cGSL_Object);
473
+ cgsl_vector = rb_define_class_under(module, "Vector",
474
+ cGSL_Object);
475
+ cgsl_vector_col = rb_define_class_under(cgsl_vector, "Col",
476
+ cgsl_vector);
477
+ cgsl_vector_complex = rb_define_class_under(cgsl_vector, "Complex",
478
+ cGSL_Object);
566
479
  cgsl_vector_complex_col = rb_define_class_under(cgsl_vector_complex, "Col",
567
- cgsl_vector_complex);
480
+ cgsl_vector_complex);
568
481
  cgsl_matrix = rb_define_class_under(module, "Matrix", cGSL_Object);
569
482
  cgsl_matrix_complex = rb_define_class_under(cgsl_matrix, "Complex", cGSL_Object);
570
483
 
571
484
  cgsl_vector_view = rb_define_class_under(cgsl_vector, "View", cgsl_vector);
572
485
  cgsl_vector_col_view = rb_define_class_under(cgsl_vector_col, "View", cgsl_vector_col);
573
486
 
574
- cgsl_vector_complex_view = rb_define_class_under(cgsl_vector_complex, "View",
575
- cgsl_vector_complex);
576
- cgsl_vector_complex_col_view = rb_define_class_under(cgsl_vector_complex_col, "View",
577
- cgsl_vector_complex_col);
487
+ cgsl_vector_complex_view = rb_define_class_under(cgsl_vector_complex, "View",
488
+ cgsl_vector_complex);
489
+ cgsl_vector_complex_col_view = rb_define_class_under(cgsl_vector_complex_col, "View",
490
+ cgsl_vector_complex_col);
578
491
 
579
492
  cgsl_vector_int = rb_define_class_under(cgsl_vector, "Int", cGSL_Object);
580
- cgsl_vector_int_col = rb_define_class_under(cgsl_vector_int, "Col", cgsl_vector_int);
493
+ cgsl_vector_int_col = rb_define_class_under(cgsl_vector_int, "Col", cgsl_vector_int);
581
494
  cgsl_vector_int_view = rb_define_class_under(cgsl_vector_int, "View", cgsl_vector_int);
582
495
  cgsl_vector_int_col_view = rb_define_class_under(cgsl_vector_int_col, "View", cgsl_vector_int_col);
583
496
 
584
497
 
585
498
  /*****/
586
499
 
587
- cgsl_matrix_view = rb_define_class_under(cgsl_matrix, "View",
588
- cgsl_matrix);
589
- cgsl_matrix_complex_view = rb_define_class_under(cgsl_matrix_complex, "View",
590
- cgsl_matrix_complex);
591
- cgsl_permutation = rb_define_class_under(module, "Permutation", cGSL_Object);
500
+ cgsl_matrix_view = rb_define_class_under(cgsl_matrix, "View",
501
+ cgsl_matrix);
502
+ cgsl_matrix_complex_view = rb_define_class_under(cgsl_matrix_complex, "View",
503
+ cgsl_matrix_complex);
504
+ cgsl_permutation = rb_define_class_under(module, "Permutation", cGSL_Object);
592
505
  cgsl_index = rb_define_class_under(module, "Index", cgsl_permutation);
593
506
 
594
507
  cgsl_vector_view_ro = rb_define_class_under(cgsl_vector_view, "ReadOnly",
595
- cgsl_vector_view);
508
+ cgsl_vector_view);
596
509
  cgsl_vector_col_view_ro = rb_define_class_under(cgsl_vector_col_view, "ReadOnly",
597
- cgsl_vector_col_view);
510
+ cgsl_vector_col_view);
598
511
  cgsl_vector_int_view_ro = rb_define_class_under(cgsl_vector_int_view, "ReadOnly",
599
- cgsl_vector_int_view);
512
+ cgsl_vector_int_view);
600
513
  cgsl_vector_int_col_view_ro = rb_define_class_under(cgsl_vector_int_col_view, "ReadOnly",
601
- cgsl_vector_int_col_view);
514
+ cgsl_vector_int_col_view);
602
515
  cgsl_matrix_view_ro = rb_define_class_under(cgsl_matrix_view, "ReadOnly",
603
- cgsl_matrix_view);
516
+ cgsl_matrix_view);
604
517
 
605
- cgsl_vector_complex_view_ro = rb_define_class_under(cgsl_vector_complex_view,
606
- "ReadOnly",
607
- cgsl_vector_complex_view);
608
- cgsl_matrix_complex_view_ro = rb_define_class_under(cgsl_matrix_complex_view,
609
- "ReadOnly",
610
- cgsl_matrix_complex_view);
518
+ cgsl_vector_complex_view_ro = rb_define_class_under(cgsl_vector_complex_view,
519
+ "ReadOnly",
520
+ cgsl_vector_complex_view);
521
+ cgsl_matrix_complex_view_ro = rb_define_class_under(cgsl_matrix_complex_view,
522
+ "ReadOnly",
523
+ cgsl_matrix_complex_view);
611
524
 
612
525
  /*****/
613
526
  cgsl_matrix_int = rb_define_class_under(cgsl_matrix, "Int", cGSL_Object);
614
527
  cgsl_matrix_int_view = rb_define_class_under(cgsl_matrix_int, "View", cgsl_matrix_int);
615
528
  cgsl_matrix_int_view_ro = rb_define_class_under(cgsl_matrix_int_view, "ReadOnly",
616
- cgsl_matrix_int_view);
529
+ cgsl_matrix_int_view);
617
530
  /*****/
618
531
  Init_gsl_block_init(module);
619
532
  Init_gsl_block_int_init(module);
@@ -626,16 +539,14 @@ void Init_gsl_array(VALUE module)
626
539
  Init_gsl_matrix_int(module);
627
540
  Init_gsl_matrix_complex(module);
628
541
  Init_gsl_permutation(module);
629
- #ifdef GSL_1_1_LATER
630
542
  Init_gsl_combination(module);
631
- #endif
632
543
  Init_gsl_array_complex(module);
633
544
  Init_gsl_matrix_nmf();
634
545
 
635
546
  rb_define_method(cgsl_vector_view_ro, "set", rb_gsl_obj_read_only, -1);
636
547
  rb_define_method(cgsl_matrix_view_ro, "set", rb_gsl_obj_read_only, -1);
637
548
  rb_define_method(cgsl_vector_int_view_ro, "set", rb_gsl_obj_read_only, -1);
638
- rb_define_method(cgsl_matrix_int_view_ro, "set", rb_gsl_obj_read_only, -1);
549
+ rb_define_method(cgsl_matrix_int_view_ro, "set", rb_gsl_obj_read_only, -1);
639
550
  rb_define_method(cgsl_vector_complex_view_ro, "set", rb_gsl_obj_read_only, -1);
640
551
  rb_define_method(cgsl_matrix_complex_view_ro, "set", rb_gsl_obj_read_only, -1);
641
552