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,26 +9,19 @@
9
9
  WITHOUT ANY WARRANTY.
10
10
  */
11
11
 
12
- #include "rb_gsl_config.h"
13
- #include "rb_gsl_array.h"
14
- #include "rb_gsl_common.h"
12
+ #include "include/rb_gsl_array.h"
13
+ #include "include/rb_gsl_common.h"
15
14
 
16
- #ifdef GSL_1_6_LATER
17
15
  #include <gsl/gsl_wavelet.h>
18
16
  #include <gsl/gsl_wavelet2d.h>
19
- #endif
20
-
21
- #ifdef HAVE_NARRAY_H
22
- #include "narray.h"
23
- #endif
24
17
 
25
18
  #ifndef CHECK_WAVELET
26
- #define CHECK_WAVELET(x) if(!rb_obj_is_kind_of(x,cgsl_wavelet))\
19
+ #define CHECK_WAVELET(x) if(!rb_obj_is_kind_of(x,cgsl_wavelet)) \
27
20
  rb_raise(rb_eTypeError, "wrong argument type (Wavelet expected)");
28
21
  #endif
29
22
 
30
23
  #ifndef CHECK_WORKSPACE
31
- #define CHECK_WORKSPACE(x) if(!rb_obj_is_kind_of(x,cgsl_wavelet_workspace))\
24
+ #define CHECK_WORKSPACE(x) if(!rb_obj_is_kind_of(x,cgsl_wavelet_workspace)) \
32
25
  rb_raise(rb_eTypeError, "wrong argument type (Wavelet::Workspace expected)");
33
26
  #endif
34
27
 
@@ -48,14 +41,11 @@ enum {
48
41
  GSL_WAVELET_BSPLINE_CENTERED,
49
42
  };
50
43
 
51
- #ifdef GSL_1_6_LATER
52
44
  static const gsl_wavelet_type* rb_gsl_wavelet_get_type(VALUE t);
53
45
  static VALUE cgsl_wavelet_workspace;
54
- #endif
55
46
 
56
47
  static VALUE rb_gsl_wavelet_new(VALUE klass, VALUE t, VALUE m)
57
48
  {
58
- #ifdef GSL_1_6_LATER
59
49
  const gsl_wavelet_type *T;
60
50
  size_t member;
61
51
  gsl_wavelet *w = NULL;
@@ -65,13 +55,8 @@ static VALUE rb_gsl_wavelet_new(VALUE klass, VALUE t, VALUE m)
65
55
  w = gsl_wavelet_alloc(T, member);
66
56
  if (w == NULL) rb_raise(rb_eNoMemError, "gsl_wavelet_alloc failed");
67
57
  return Data_Wrap_Struct(klass, 0, gsl_wavelet_free, w);
68
- #else
69
- rb_raise(rb_eNotImpError, "Wavelet transforms not supported in GSL-%s, use GSL-1.6 or later", GSL_VERSION);
70
- return Qnil;
71
- #endif
72
58
  }
73
59
 
74
- #ifdef GSL_1_6_LATER
75
60
  static const gsl_wavelet_type* rb_gsl_wavelet_get_type_str(char *name);
76
61
  static const gsl_wavelet_type* rb_gsl_wavelet_get_type_int(int t);
77
62
  static const gsl_wavelet_type* rb_gsl_wavelet_get_type(VALUE t)
@@ -85,9 +70,9 @@ static const gsl_wavelet_type* rb_gsl_wavelet_get_type(VALUE t)
85
70
  T = rb_gsl_wavelet_get_type_int(FIX2INT(t));
86
71
  break;
87
72
  default:
88
- rb_raise(rb_eTypeError,
89
- "wrong type of argument %s (String or Fixnum expected)",
90
- rb_class2name(CLASS_OF(t)));
73
+ rb_raise(rb_eTypeError,
74
+ "wrong type of argument %s (String or Fixnum expected)",
75
+ rb_class2name(CLASS_OF(t)));
91
76
  break;
92
77
  }
93
78
  return T;
@@ -152,10 +137,10 @@ static void rb_gsl_wavelet_define_const(VALUE klass)
152
137
  rb_define_const(klass, "BSPLINE", INT2FIX(GSL_WAVELET_BSPLINE));
153
138
  rb_define_const(klass, "BSPLINE_CENTERED", INT2FIX(GSL_WAVELET_BSPLINE_CENTERED));
154
139
  /*****/
155
- rb_define_const(klass, "FORWARD", INT2FIX(forward));
156
- rb_define_const(klass, "Forward", INT2FIX(forward));
157
- rb_define_const(klass, "BACKWARD", INT2FIX(backward));
158
- rb_define_const(klass, "Backward", INT2FIX(backward));
140
+ rb_define_const(klass, "FORWARD", INT2FIX(gsl_wavelet_forward));
141
+ rb_define_const(klass, "Forward", INT2FIX(gsl_wavelet_forward));
142
+ rb_define_const(klass, "BACKWARD", INT2FIX(gsl_wavelet_backward));
143
+ rb_define_const(klass, "Backward", INT2FIX(gsl_wavelet_backward));
159
144
  }
160
145
 
161
146
  static VALUE rb_gsl_wavelet_name(VALUE ww)
@@ -175,23 +160,23 @@ static VALUE rb_gsl_wavelet_workspace_new(VALUE klass, VALUE nn)
175
160
  }
176
161
 
177
162
  static VALUE rb_gsl_wavelet2d_trans(int argc, VALUE *argv, VALUE obj,
178
- int (*trans)(const gsl_wavelet *,
179
- gsl_matrix *,
180
- gsl_wavelet_workspace *),
181
- int sss);
163
+ int (*trans)(const gsl_wavelet *,
164
+ gsl_matrix *,
165
+ gsl_wavelet_workspace *),
166
+ int sss);
182
167
  static VALUE rb_gsl_wavelet2d(int argc, VALUE *argv, VALUE obj,
183
- int (*trans)(const gsl_wavelet *,
184
- gsl_matrix *,
185
- gsl_wavelet_direction,
186
- gsl_wavelet_workspace *),
187
- int sss);
168
+ int (*trans)(const gsl_wavelet *,
169
+ gsl_matrix *,
170
+ gsl_wavelet_direction,
171
+ gsl_wavelet_workspace *),
172
+ int sss);
188
173
 
189
174
  static VALUE rb_gsl_wavelet_transform0(int argc, VALUE *argv, VALUE obj,
190
- int sss)
175
+ int sss)
191
176
  {
192
177
  gsl_wavelet *w = NULL;
193
178
  gsl_vector *v = NULL, *vnew;
194
- gsl_wavelet_direction dir = forward;
179
+ gsl_wavelet_direction dir = gsl_wavelet_forward;
195
180
  gsl_wavelet_workspace *work = NULL;
196
181
  int itmp, flag = 0;
197
182
  // local variable "status" declared and set, but never used
@@ -213,7 +198,7 @@ static VALUE rb_gsl_wavelet_transform0(int argc, VALUE *argv, VALUE obj,
213
198
 
214
199
  if (MATRIX_P(argv[1])) {
215
200
  return rb_gsl_wavelet2d(argc, argv, obj,
216
- gsl_wavelet2d_transform_matrix, sss);
201
+ gsl_wavelet2d_transform_matrix, sss);
217
202
  }
218
203
  if (VECTOR_P(argv[1])) {
219
204
  Data_Get_Struct(argv[0], gsl_wavelet, w);
@@ -238,10 +223,9 @@ static VALUE rb_gsl_wavelet_transform0(int argc, VALUE *argv, VALUE obj,
238
223
  break;
239
224
  default:
240
225
  if (argc < 1) rb_raise(rb_eArgError, "too few arguments");
241
-
242
226
  if (MATRIX_P(argv[0])) {
243
227
  return rb_gsl_wavelet2d(argc, argv, obj,
244
- gsl_wavelet2d_transform_matrix, sss);
228
+ gsl_wavelet2d_transform_matrix, sss);
245
229
  }
246
230
  if (VECTOR_P(obj)) {
247
231
  CHECK_WAVELET(argv[0]);
@@ -313,7 +297,7 @@ static VALUE rb_gsl_wavelet_transform0(int argc, VALUE *argv, VALUE obj,
313
297
  break;
314
298
  }
315
299
  if (naflag == 0) {
316
- if (sss == RB_GSL_DWT_COPY) {
300
+ if (sss == RB_GSL_DWT_COPY) {
317
301
  vnew = gsl_vector_alloc(v->size);
318
302
  gsl_vector_memcpy(vnew, v);
319
303
  ary = Data_Wrap_Struct(cgsl_vector, 0, gsl_vector_free, vnew);
@@ -350,10 +334,10 @@ static VALUE rb_gsl_wavelet_transform2(int argc, VALUE *argv, VALUE obj)
350
334
  }
351
335
 
352
336
  static VALUE rb_gsl_wavelet_trans(int argc, VALUE *argv, VALUE obj,
353
- int (*trans)(const gsl_wavelet *,
354
- double *, size_t, size_t,
355
- gsl_wavelet_workspace *),
356
- int sss)
337
+ int (*trans)(const gsl_wavelet *,
338
+ double *, size_t, size_t,
339
+ gsl_wavelet_workspace *),
340
+ int sss)
357
341
  {
358
342
  gsl_wavelet *w = NULL;
359
343
  gsl_vector *v = NULL, *vnew;
@@ -363,7 +347,7 @@ static VALUE rb_gsl_wavelet_trans(int argc, VALUE *argv, VALUE obj,
363
347
  //int status;
364
348
  double *ptr1 = NULL, *ptr2 = NULL;
365
349
  size_t n, stride;
366
- VALUE ary, ret;
350
+ VALUE ary = Qnil, ret;
367
351
  #ifdef HAVE_NARRAY_H
368
352
  struct NARRAY *na;
369
353
  #endif
@@ -376,11 +360,11 @@ static VALUE rb_gsl_wavelet_trans(int argc, VALUE *argv, VALUE obj,
376
360
 
377
361
  if (MATRIX_P(argv[1])) {
378
362
  if (trans == gsl_wavelet_transform_forward) {
379
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
380
- gsl_wavelet2d_transform_matrix_forward, sss);
363
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
364
+ gsl_wavelet2d_transform_matrix_forward, sss);
381
365
  } else {
382
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
383
- gsl_wavelet2d_transform_matrix_inverse, sss);
366
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
367
+ gsl_wavelet2d_transform_matrix_inverse, sss);
384
368
  }
385
369
  }
386
370
  if (VECTOR_P(argv[1])) {
@@ -406,14 +390,13 @@ static VALUE rb_gsl_wavelet_trans(int argc, VALUE *argv, VALUE obj,
406
390
  break;
407
391
  default:
408
392
  if (argc < 1) rb_raise(rb_eArgError, "too few arguments");
409
-
410
393
  if (MATRIX_P(argv[0])) {
411
394
  if (trans == gsl_wavelet_transform_forward) {
412
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
413
- gsl_wavelet2d_transform_matrix_forward, sss);
395
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
396
+ gsl_wavelet2d_transform_matrix_forward, sss);
414
397
  } else {
415
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
416
- gsl_wavelet2d_transform_matrix_inverse, sss);
398
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
399
+ gsl_wavelet2d_transform_matrix_inverse, sss);
417
400
  }
418
401
  }
419
402
  if (VECTOR_P(obj)) {
@@ -501,37 +484,37 @@ static VALUE rb_gsl_wavelet_trans(int argc, VALUE *argv, VALUE obj,
501
484
  static VALUE rb_gsl_wavelet_transform_forward(int argc, VALUE *argv, VALUE obj)
502
485
  {
503
486
  return rb_gsl_wavelet_trans(argc, argv, obj, gsl_wavelet_transform_forward,
504
- RB_GSL_DWT_COPY);
487
+ RB_GSL_DWT_COPY);
505
488
  }
506
489
 
507
490
  static VALUE rb_gsl_wavelet_transform_inverse(int argc, VALUE *argv, VALUE obj)
508
491
  {
509
492
  return rb_gsl_wavelet_trans(argc, argv, obj, gsl_wavelet_transform_inverse,
510
- RB_GSL_DWT_COPY);
493
+ RB_GSL_DWT_COPY);
511
494
  }
512
495
 
513
496
  static VALUE rb_gsl_wavelet_transform_forward2(int argc, VALUE *argv, VALUE obj)
514
497
  {
515
498
  return rb_gsl_wavelet_trans(argc, argv, obj, gsl_wavelet_transform_forward,
516
- RB_GSL_DWT_INPLACE);
499
+ RB_GSL_DWT_INPLACE);
517
500
  }
518
501
 
519
502
  static VALUE rb_gsl_wavelet_transform_inverse2(int argc, VALUE *argv, VALUE obj)
520
503
  {
521
504
  return rb_gsl_wavelet_trans(argc, argv, obj, gsl_wavelet_transform_inverse,
522
- RB_GSL_DWT_INPLACE);
505
+ RB_GSL_DWT_INPLACE);
523
506
  }
524
507
 
525
508
  static VALUE rb_gsl_wavelet2d(int argc, VALUE *argv, VALUE obj,
526
- int (*trans)(const gsl_wavelet *,
527
- gsl_matrix *,
528
- gsl_wavelet_direction,
529
- gsl_wavelet_workspace *),
530
- int sss)
509
+ int (*trans)(const gsl_wavelet *,
510
+ gsl_matrix *,
511
+ gsl_wavelet_direction,
512
+ gsl_wavelet_workspace *),
513
+ int sss)
531
514
  {
532
515
  gsl_wavelet *w = NULL;
533
516
  gsl_matrix *m = NULL, *mnew;
534
- gsl_wavelet_direction dir = forward;
517
+ gsl_wavelet_direction dir = gsl_wavelet_forward;
535
518
  gsl_wavelet_workspace *work = NULL;
536
519
  VALUE ary, ret;
537
520
  int itmp, flag = 0;
@@ -606,20 +589,20 @@ static VALUE rb_gsl_wavelet2d(int argc, VALUE *argv, VALUE obj,
606
589
  static VALUE rb_gsl_wavelet2d_transform_matrix(int argc, VALUE *argv, VALUE obj)
607
590
  {
608
591
  return rb_gsl_wavelet2d(argc, argv, obj, gsl_wavelet2d_transform_matrix,
609
- RB_GSL_DWT_COPY);
592
+ RB_GSL_DWT_COPY);
610
593
  }
611
594
 
612
595
  static VALUE rb_gsl_wavelet2d_transform_matrix2(int argc, VALUE *argv, VALUE obj)
613
596
  {
614
597
  return rb_gsl_wavelet2d(argc, argv, obj, gsl_wavelet2d_transform_matrix,
615
- RB_GSL_DWT_INPLACE);
598
+ RB_GSL_DWT_INPLACE);
616
599
  }
617
600
 
618
601
  static VALUE rb_gsl_wavelet2d_trans(int argc, VALUE *argv, VALUE obj,
619
- int (*trans)(const gsl_wavelet *,
620
- gsl_matrix *,
621
- gsl_wavelet_workspace *),
622
- int sss)
602
+ int (*trans)(const gsl_wavelet *,
603
+ gsl_matrix *,
604
+ gsl_wavelet_workspace *),
605
+ int sss)
623
606
  {
624
607
  gsl_wavelet *w = NULL;
625
608
  gsl_matrix *m = NULL, *mnew;
@@ -683,75 +666,73 @@ static VALUE rb_gsl_wavelet2d_trans(int argc, VALUE *argv, VALUE obj,
683
666
 
684
667
  static VALUE rb_gsl_wavelet2d_transform_matrix_forward(int argc, VALUE *argv, VALUE obj)
685
668
  {
686
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
687
- gsl_wavelet2d_transform_matrix_forward,
688
- RB_GSL_DWT_COPY);
669
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
670
+ gsl_wavelet2d_transform_matrix_forward,
671
+ RB_GSL_DWT_COPY);
689
672
  }
690
673
 
691
674
  static VALUE rb_gsl_wavelet2d_transform_matrix_forward2(int argc, VALUE *argv, VALUE obj)
692
675
  {
693
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
694
- gsl_wavelet2d_transform_matrix_forward,
695
- RB_GSL_DWT_INPLACE);
676
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
677
+ gsl_wavelet2d_transform_matrix_forward,
678
+ RB_GSL_DWT_INPLACE);
696
679
  }
697
680
 
698
681
  static VALUE rb_gsl_wavelet2d_transform_matrix_inverse(int argc, VALUE *argv, VALUE obj)
699
682
  {
700
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
701
- gsl_wavelet2d_transform_matrix_inverse,
702
- RB_GSL_DWT_COPY);
683
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
684
+ gsl_wavelet2d_transform_matrix_inverse,
685
+ RB_GSL_DWT_COPY);
703
686
  }
704
687
 
705
688
  static VALUE rb_gsl_wavelet2d_transform_matrix_inverse2(int argc, VALUE *argv, VALUE obj)
706
689
  {
707
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
708
- gsl_wavelet2d_transform_matrix_inverse,
709
- RB_GSL_DWT_INPLACE);
690
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
691
+ gsl_wavelet2d_transform_matrix_inverse,
692
+ RB_GSL_DWT_INPLACE);
710
693
  }
711
694
 
712
695
  /** nstransform **/
713
696
  static VALUE rb_gsl_wavelet2d_nstransform_matrix(int argc, VALUE *argv, VALUE obj)
714
697
  {
715
698
  return rb_gsl_wavelet2d(argc, argv, obj, gsl_wavelet2d_nstransform_matrix,
716
- RB_GSL_DWT_COPY);
699
+ RB_GSL_DWT_COPY);
717
700
  }
718
701
 
719
702
  static VALUE rb_gsl_wavelet2d_nstransform_matrix2(int argc, VALUE *argv, VALUE obj)
720
703
  {
721
704
  return rb_gsl_wavelet2d(argc, argv, obj, gsl_wavelet2d_nstransform_matrix,
722
- RB_GSL_DWT_INPLACE);
705
+ RB_GSL_DWT_INPLACE);
723
706
  }
724
707
 
725
708
  static VALUE rb_gsl_wavelet2d_nstransform_matrix_forward(int argc, VALUE *argv, VALUE obj)
726
709
  {
727
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
728
- gsl_wavelet2d_nstransform_matrix_forward,
729
- RB_GSL_DWT_COPY);
710
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
711
+ gsl_wavelet2d_nstransform_matrix_forward,
712
+ RB_GSL_DWT_COPY);
730
713
  }
731
714
 
732
715
  static VALUE rb_gsl_wavelet2d_nstransform_matrix_forward2(int argc, VALUE *argv, VALUE obj)
733
716
  {
734
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
735
- gsl_wavelet2d_nstransform_matrix_forward,
736
- RB_GSL_DWT_INPLACE);
717
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
718
+ gsl_wavelet2d_nstransform_matrix_forward,
719
+ RB_GSL_DWT_INPLACE);
737
720
  }
738
721
 
739
722
  static VALUE rb_gsl_wavelet2d_nstransform_matrix_inverse(int argc, VALUE *argv, VALUE obj)
740
723
  {
741
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
742
- gsl_wavelet2d_nstransform_matrix_inverse,
743
- RB_GSL_DWT_COPY);
724
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
725
+ gsl_wavelet2d_nstransform_matrix_inverse,
726
+ RB_GSL_DWT_COPY);
744
727
  }
745
728
 
746
729
  static VALUE rb_gsl_wavelet2d_nstransform_matrix_inverse2(int argc, VALUE *argv, VALUE obj)
747
730
  {
748
- return rb_gsl_wavelet2d_trans(argc, argv, obj,
749
- gsl_wavelet2d_nstransform_matrix_inverse,
750
- RB_GSL_DWT_INPLACE);
731
+ return rb_gsl_wavelet2d_trans(argc, argv, obj,
732
+ gsl_wavelet2d_nstransform_matrix_inverse,
733
+ RB_GSL_DWT_INPLACE);
751
734
  }
752
735
 
753
- #endif
754
-
755
736
  void Init_wavelet(VALUE module)
756
737
  {
757
738
  VALUE cgsl_wavelet2d;
@@ -761,183 +742,180 @@ void Init_wavelet(VALUE module)
761
742
 
762
743
  rb_define_singleton_method(cgsl_wavelet, "alloc", rb_gsl_wavelet_new, 2);
763
744
 
764
- #ifdef GSL_1_6_LATER
765
745
  rb_gsl_wavelet_define_const(cgsl_wavelet);
766
746
  rb_define_method(cgsl_wavelet, "name", rb_gsl_wavelet_name, 0);
767
747
 
768
748
  cgsl_wavelet_workspace = rb_define_class_under(cgsl_wavelet, "Workspace", cGSL_Object);
769
- rb_define_singleton_method(cgsl_wavelet_workspace, "alloc",
770
- rb_gsl_wavelet_workspace_new, 1);
749
+ rb_define_singleton_method(cgsl_wavelet_workspace, "alloc",
750
+ rb_gsl_wavelet_workspace_new, 1);
771
751
 
772
752
  /*****/
773
753
 
774
- rb_define_singleton_method(cgsl_wavelet, "transform",
775
- rb_gsl_wavelet_transform, -1);
754
+ rb_define_singleton_method(cgsl_wavelet, "transform",
755
+ rb_gsl_wavelet_transform, -1);
776
756
  rb_define_method(cgsl_wavelet, "transform", rb_gsl_wavelet_transform, -1);
777
757
  rb_define_method(cgsl_vector, "wavelet_transform", rb_gsl_wavelet_transform, -1);
778
- rb_define_singleton_method(cgsl_wavelet, "transform!",
779
- rb_gsl_wavelet_transform2, -1);
758
+ rb_define_singleton_method(cgsl_wavelet, "transform!",
759
+ rb_gsl_wavelet_transform2, -1);
780
760
  rb_define_method(cgsl_wavelet, "transform!", rb_gsl_wavelet_transform2, -1);
781
761
  rb_define_method(cgsl_vector, "wavelet_transform!", rb_gsl_wavelet_transform2, -1);
782
762
 
783
763
  /**/
784
764
 
785
- rb_define_singleton_method(cgsl_wavelet, "transform_forward",
786
- rb_gsl_wavelet_transform_forward, -1);
787
- rb_define_method(cgsl_wavelet, "transform_forward",
788
- rb_gsl_wavelet_transform_forward, -1);
765
+ rb_define_singleton_method(cgsl_wavelet, "transform_forward",
766
+ rb_gsl_wavelet_transform_forward, -1);
767
+ rb_define_method(cgsl_wavelet, "transform_forward",
768
+ rb_gsl_wavelet_transform_forward, -1);
789
769
  rb_define_alias(cgsl_wavelet, "forward", "transform_forward");
790
- rb_define_method(cgsl_vector, "wavelet_transform_forward",
791
- rb_gsl_wavelet_transform_forward, -1);
770
+ rb_define_method(cgsl_vector, "wavelet_transform_forward",
771
+ rb_gsl_wavelet_transform_forward, -1);
792
772
 
793
- rb_define_singleton_method(cgsl_wavelet, "transform_inverse",
794
- rb_gsl_wavelet_transform_inverse, -1);
795
- rb_define_method(cgsl_wavelet, "transform_inverse",
796
- rb_gsl_wavelet_transform_inverse, -1);
773
+ rb_define_singleton_method(cgsl_wavelet, "transform_inverse",
774
+ rb_gsl_wavelet_transform_inverse, -1);
775
+ rb_define_method(cgsl_wavelet, "transform_inverse",
776
+ rb_gsl_wavelet_transform_inverse, -1);
797
777
  rb_define_alias(cgsl_wavelet, "inverse", "transform_inverse");
798
- rb_define_method(cgsl_vector, "wavelet_transform_inverse",
799
- rb_gsl_wavelet_transform_inverse, -1);
778
+ rb_define_method(cgsl_vector, "wavelet_transform_inverse",
779
+ rb_gsl_wavelet_transform_inverse, -1);
800
780
 
801
- rb_define_singleton_method(cgsl_wavelet, "transform_forward!",
802
- rb_gsl_wavelet_transform_forward2, -1);
803
- rb_define_method(cgsl_wavelet, "transform_forward!",
804
- rb_gsl_wavelet_transform_forward2, -1);
781
+ rb_define_singleton_method(cgsl_wavelet, "transform_forward!",
782
+ rb_gsl_wavelet_transform_forward2, -1);
783
+ rb_define_method(cgsl_wavelet, "transform_forward!",
784
+ rb_gsl_wavelet_transform_forward2, -1);
805
785
  rb_define_alias(cgsl_wavelet, "forward!", "transform_forward!");
806
- rb_define_method(cgsl_vector, "wavelet_transform_forward!",
807
- rb_gsl_wavelet_transform_forward2, -1);
786
+ rb_define_method(cgsl_vector, "wavelet_transform_forward!",
787
+ rb_gsl_wavelet_transform_forward2, -1);
808
788
 
809
- rb_define_singleton_method(cgsl_wavelet, "transform_inverse!",
810
- rb_gsl_wavelet_transform_inverse2, -1);
811
- rb_define_method(cgsl_wavelet, "transform_inverse!",
812
- rb_gsl_wavelet_transform_inverse2, -1);
789
+ rb_define_singleton_method(cgsl_wavelet, "transform_inverse!",
790
+ rb_gsl_wavelet_transform_inverse2, -1);
791
+ rb_define_method(cgsl_wavelet, "transform_inverse!",
792
+ rb_gsl_wavelet_transform_inverse2, -1);
813
793
  rb_define_alias(cgsl_wavelet, "inverse!", "transform_inverse!");
814
- rb_define_method(cgsl_vector, "wavelet_transform_inverse!",
815
- rb_gsl_wavelet_transform_inverse2, -1);
794
+ rb_define_method(cgsl_vector, "wavelet_transform_inverse!",
795
+ rb_gsl_wavelet_transform_inverse2, -1);
816
796
  /***** 2d *****/
817
- rb_define_singleton_method(cgsl_wavelet, "transform_matrix",
818
- rb_gsl_wavelet2d_transform_matrix, -1);
819
- rb_define_singleton_method(cgsl_wavelet2d, "transform",
820
- rb_gsl_wavelet2d_transform_matrix, -1);
797
+ rb_define_singleton_method(cgsl_wavelet, "transform_matrix",
798
+ rb_gsl_wavelet2d_transform_matrix, -1);
799
+ rb_define_singleton_method(cgsl_wavelet2d, "transform",
800
+ rb_gsl_wavelet2d_transform_matrix, -1);
821
801
  rb_define_method(cgsl_wavelet, "transform_matrix",
822
- rb_gsl_wavelet2d_transform_matrix, -1);
823
- rb_define_method(cgsl_wavelet2d, "transform",
824
- rb_gsl_wavelet2d_transform_matrix, -1);
825
- rb_define_method(cgsl_matrix, "wavelet_transform",
826
- rb_gsl_wavelet2d_transform_matrix, -1);
827
-
828
- rb_define_singleton_method(cgsl_wavelet, "transform_matrix!",
829
- rb_gsl_wavelet2d_transform_matrix2, -1);
830
- rb_define_singleton_method(cgsl_wavelet2d, "transform!",
831
- rb_gsl_wavelet2d_transform_matrix2, -1);
802
+ rb_gsl_wavelet2d_transform_matrix, -1);
803
+ rb_define_method(cgsl_wavelet2d, "transform",
804
+ rb_gsl_wavelet2d_transform_matrix, -1);
805
+ rb_define_method(cgsl_matrix, "wavelet_transform",
806
+ rb_gsl_wavelet2d_transform_matrix, -1);
807
+
808
+ rb_define_singleton_method(cgsl_wavelet, "transform_matrix!",
809
+ rb_gsl_wavelet2d_transform_matrix2, -1);
810
+ rb_define_singleton_method(cgsl_wavelet2d, "transform!",
811
+ rb_gsl_wavelet2d_transform_matrix2, -1);
832
812
  rb_define_method(cgsl_wavelet, "transform_matrix!",
833
- rb_gsl_wavelet2d_transform_matrix2, -1);
834
- rb_define_method(cgsl_wavelet2d, "transform!",
835
- rb_gsl_wavelet2d_transform_matrix2, -1);
836
- rb_define_method(cgsl_matrix, "wavelet_transform!",
837
- rb_gsl_wavelet2d_transform_matrix2, -1);
813
+ rb_gsl_wavelet2d_transform_matrix2, -1);
814
+ rb_define_method(cgsl_wavelet2d, "transform!",
815
+ rb_gsl_wavelet2d_transform_matrix2, -1);
816
+ rb_define_method(cgsl_matrix, "wavelet_transform!",
817
+ rb_gsl_wavelet2d_transform_matrix2, -1);
838
818
  /**/
839
819
 
840
- rb_define_singleton_method(cgsl_wavelet, "transform_matrix_forward",
841
- rb_gsl_wavelet2d_transform_matrix_forward, -1);
842
- rb_define_singleton_method(cgsl_wavelet2d, "transform_forward",
843
- rb_gsl_wavelet2d_transform_matrix_forward, -1);
844
- rb_define_method(cgsl_wavelet, "transform_matrix_forward",
845
- rb_gsl_wavelet2d_transform_matrix_forward, -1);
846
- rb_define_method(cgsl_wavelet2d, "transform_forward",
847
- rb_gsl_wavelet2d_transform_matrix_forward, -1);
848
- rb_define_method(cgsl_matrix, "wavelet_transform_forward",
849
- rb_gsl_wavelet2d_transform_matrix_forward, -1);
850
-
851
- rb_define_singleton_method(cgsl_wavelet, "transform_matrix_forward!",
852
- rb_gsl_wavelet2d_transform_matrix_forward2, -1);
853
- rb_define_singleton_method(cgsl_wavelet2d, "transform_forward!",
854
- rb_gsl_wavelet2d_transform_matrix_forward2, -1);
855
- rb_define_method(cgsl_wavelet, "transform_matrix_forward!",
856
- rb_gsl_wavelet2d_transform_matrix_forward2, -1);
857
- rb_define_method(cgsl_wavelet2d, "transform_forward!",
858
- rb_gsl_wavelet2d_transform_matrix_forward2, -1);
859
- rb_define_method(cgsl_matrix, "wavelet_transform_forward!",
860
- rb_gsl_wavelet2d_transform_matrix_forward2, -1);
861
-
862
- rb_define_singleton_method(cgsl_wavelet, "transform_matrix_inverse",
863
- rb_gsl_wavelet2d_transform_matrix_inverse, -1);
864
- rb_define_singleton_method(cgsl_wavelet2d, "transform_inverse",
865
- rb_gsl_wavelet2d_transform_matrix_inverse, -1);
866
- rb_define_method(cgsl_wavelet, "transform_matrix_inverse",
867
- rb_gsl_wavelet2d_transform_matrix_inverse, -1);
868
- rb_define_method(cgsl_wavelet2d, "transform_inverse",
869
- rb_gsl_wavelet2d_transform_matrix_inverse, -1);
870
- rb_define_method(cgsl_matrix, "wavelet_transform_inverse",
871
- rb_gsl_wavelet2d_transform_matrix_inverse, -1);
872
-
873
- rb_define_singleton_method(cgsl_wavelet, "transform_matrix_inverse!",
874
- rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
875
- rb_define_singleton_method(cgsl_wavelet2d, "transform_inverse!",
876
- rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
877
- rb_define_method(cgsl_wavelet, "transform_matrix_inverse!",
878
- rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
879
- rb_define_method(cgsl_wavelet2d, "transform_inverse!",
880
- rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
881
- rb_define_method(cgsl_matrix, "wavelet_transform_inverse!",
882
- rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
820
+ rb_define_singleton_method(cgsl_wavelet, "transform_matrix_forward",
821
+ rb_gsl_wavelet2d_transform_matrix_forward, -1);
822
+ rb_define_singleton_method(cgsl_wavelet2d, "transform_forward",
823
+ rb_gsl_wavelet2d_transform_matrix_forward, -1);
824
+ rb_define_method(cgsl_wavelet, "transform_matrix_forward",
825
+ rb_gsl_wavelet2d_transform_matrix_forward, -1);
826
+ rb_define_method(cgsl_wavelet2d, "transform_forward",
827
+ rb_gsl_wavelet2d_transform_matrix_forward, -1);
828
+ rb_define_method(cgsl_matrix, "wavelet_transform_forward",
829
+ rb_gsl_wavelet2d_transform_matrix_forward, -1);
830
+
831
+ rb_define_singleton_method(cgsl_wavelet, "transform_matrix_forward!",
832
+ rb_gsl_wavelet2d_transform_matrix_forward2, -1);
833
+ rb_define_singleton_method(cgsl_wavelet2d, "transform_forward!",
834
+ rb_gsl_wavelet2d_transform_matrix_forward2, -1);
835
+ rb_define_method(cgsl_wavelet, "transform_matrix_forward!",
836
+ rb_gsl_wavelet2d_transform_matrix_forward2, -1);
837
+ rb_define_method(cgsl_wavelet2d, "transform_forward!",
838
+ rb_gsl_wavelet2d_transform_matrix_forward2, -1);
839
+ rb_define_method(cgsl_matrix, "wavelet_transform_forward!",
840
+ rb_gsl_wavelet2d_transform_matrix_forward2, -1);
841
+
842
+ rb_define_singleton_method(cgsl_wavelet, "transform_matrix_inverse",
843
+ rb_gsl_wavelet2d_transform_matrix_inverse, -1);
844
+ rb_define_singleton_method(cgsl_wavelet2d, "transform_inverse",
845
+ rb_gsl_wavelet2d_transform_matrix_inverse, -1);
846
+ rb_define_method(cgsl_wavelet, "transform_matrix_inverse",
847
+ rb_gsl_wavelet2d_transform_matrix_inverse, -1);
848
+ rb_define_method(cgsl_wavelet2d, "transform_inverse",
849
+ rb_gsl_wavelet2d_transform_matrix_inverse, -1);
850
+ rb_define_method(cgsl_matrix, "wavelet_transform_inverse",
851
+ rb_gsl_wavelet2d_transform_matrix_inverse, -1);
852
+
853
+ rb_define_singleton_method(cgsl_wavelet, "transform_matrix_inverse!",
854
+ rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
855
+ rb_define_singleton_method(cgsl_wavelet2d, "transform_inverse!",
856
+ rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
857
+ rb_define_method(cgsl_wavelet, "transform_matrix_inverse!",
858
+ rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
859
+ rb_define_method(cgsl_wavelet2d, "transform_inverse!",
860
+ rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
861
+ rb_define_method(cgsl_matrix, "wavelet_transform_inverse!",
862
+ rb_gsl_wavelet2d_transform_matrix_inverse2, -1);
883
863
 
884
864
  /** nstransform **/
885
- rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix",
886
- rb_gsl_wavelet2d_nstransform_matrix, -1);
887
- rb_define_singleton_method(cgsl_wavelet2d, "nstransform",
888
- rb_gsl_wavelet2d_nstransform_matrix, -1);
889
- rb_define_method(cgsl_wavelet, "nstransform_matrix",
890
- rb_gsl_wavelet2d_nstransform_matrix, -1);
891
- rb_define_method(cgsl_wavelet2d, "nstransform",
892
- rb_gsl_wavelet2d_nstransform_matrix, -1);
893
-
894
- rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix!",
895
- rb_gsl_wavelet2d_nstransform_matrix2, -1);
896
- rb_define_singleton_method(cgsl_wavelet2d, "nstransform!",
897
- rb_gsl_wavelet2d_nstransform_matrix2, -1);
898
- rb_define_method(cgsl_wavelet, "nstransform_matrix!",
899
- rb_gsl_wavelet2d_nstransform_matrix2, -1);
900
- rb_define_method(cgsl_wavelet2d, "nstransform!",
901
- rb_gsl_wavelet2d_nstransform_matrix2, -1);
865
+ rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix",
866
+ rb_gsl_wavelet2d_nstransform_matrix, -1);
867
+ rb_define_singleton_method(cgsl_wavelet2d, "nstransform",
868
+ rb_gsl_wavelet2d_nstransform_matrix, -1);
869
+ rb_define_method(cgsl_wavelet, "nstransform_matrix",
870
+ rb_gsl_wavelet2d_nstransform_matrix, -1);
871
+ rb_define_method(cgsl_wavelet2d, "nstransform",
872
+ rb_gsl_wavelet2d_nstransform_matrix, -1);
873
+
874
+ rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix!",
875
+ rb_gsl_wavelet2d_nstransform_matrix2, -1);
876
+ rb_define_singleton_method(cgsl_wavelet2d, "nstransform!",
877
+ rb_gsl_wavelet2d_nstransform_matrix2, -1);
878
+ rb_define_method(cgsl_wavelet, "nstransform_matrix!",
879
+ rb_gsl_wavelet2d_nstransform_matrix2, -1);
880
+ rb_define_method(cgsl_wavelet2d, "nstransform!",
881
+ rb_gsl_wavelet2d_nstransform_matrix2, -1);
902
882
  /**/
903
883
 
904
- rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix_forward",
905
- rb_gsl_wavelet2d_nstransform_matrix_forward, -1);
906
- rb_define_singleton_method(cgsl_wavelet2d, "nstransform_forward",
907
- rb_gsl_wavelet2d_nstransform_matrix_forward, -1);
908
- rb_define_method(cgsl_wavelet, "nstransform_matrix_forward",
909
- rb_gsl_wavelet2d_nstransform_matrix_forward, -1);
910
- rb_define_method(cgsl_wavelet2d, "nstransform_forward",
911
- rb_gsl_wavelet2d_nstransform_matrix_forward, -1);
912
-
913
- rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix_forward!",
914
- rb_gsl_wavelet2d_nstransform_matrix_forward2, -1);
915
- rb_define_singleton_method(cgsl_wavelet2d, "nstransform_forward!",
916
- rb_gsl_wavelet2d_nstransform_matrix_forward2, -1);
917
- rb_define_method(cgsl_wavelet, "nstransform_matrix_forward!",
918
- rb_gsl_wavelet2d_nstransform_matrix_forward2, -1);
919
- rb_define_method(cgsl_wavelet2d, "nstransform_forward!",
920
- rb_gsl_wavelet2d_nstransform_matrix_forward2, -1);
921
-
922
- rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix_inverse",
923
- rb_gsl_wavelet2d_nstransform_matrix_inverse, -1);
924
- rb_define_singleton_method(cgsl_wavelet2d, "nstransform_inverse",
925
- rb_gsl_wavelet2d_nstransform_matrix_inverse, -1);
926
- rb_define_method(cgsl_wavelet, "nstransform_matrix_inverse",
927
- rb_gsl_wavelet2d_nstransform_matrix_inverse, -1);
928
- rb_define_method(cgsl_wavelet2d, "nstransform_inverse",
929
- rb_gsl_wavelet2d_nstransform_matrix_inverse, -1);
930
-
931
- rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix_inverse!",
932
- rb_gsl_wavelet2d_nstransform_matrix_inverse2, -1);
933
- rb_define_singleton_method(cgsl_wavelet2d, "nstransform_inverse!",
934
- rb_gsl_wavelet2d_nstransform_matrix_inverse2, -1);
935
- rb_define_method(cgsl_wavelet, "nstransform_matrix_inverse!",
936
- rb_gsl_wavelet2d_nstransform_matrix_inverse2, -1);
937
- rb_define_method(cgsl_wavelet2d, "nstransform_inverse!",
938
- rb_gsl_wavelet2d_nstransform_matrix_inverse2, -1);
939
-
940
- #endif
884
+ rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix_forward",
885
+ rb_gsl_wavelet2d_nstransform_matrix_forward, -1);
886
+ rb_define_singleton_method(cgsl_wavelet2d, "nstransform_forward",
887
+ rb_gsl_wavelet2d_nstransform_matrix_forward, -1);
888
+ rb_define_method(cgsl_wavelet, "nstransform_matrix_forward",
889
+ rb_gsl_wavelet2d_nstransform_matrix_forward, -1);
890
+ rb_define_method(cgsl_wavelet2d, "nstransform_forward",
891
+ rb_gsl_wavelet2d_nstransform_matrix_forward, -1);
892
+
893
+ rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix_forward!",
894
+ rb_gsl_wavelet2d_nstransform_matrix_forward2, -1);
895
+ rb_define_singleton_method(cgsl_wavelet2d, "nstransform_forward!",
896
+ rb_gsl_wavelet2d_nstransform_matrix_forward2, -1);
897
+ rb_define_method(cgsl_wavelet, "nstransform_matrix_forward!",
898
+ rb_gsl_wavelet2d_nstransform_matrix_forward2, -1);
899
+ rb_define_method(cgsl_wavelet2d, "nstransform_forward!",
900
+ rb_gsl_wavelet2d_nstransform_matrix_forward2, -1);
901
+
902
+ rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix_inverse",
903
+ rb_gsl_wavelet2d_nstransform_matrix_inverse, -1);
904
+ rb_define_singleton_method(cgsl_wavelet2d, "nstransform_inverse",
905
+ rb_gsl_wavelet2d_nstransform_matrix_inverse, -1);
906
+ rb_define_method(cgsl_wavelet, "nstransform_matrix_inverse",
907
+ rb_gsl_wavelet2d_nstransform_matrix_inverse, -1);
908
+ rb_define_method(cgsl_wavelet2d, "nstransform_inverse",
909
+ rb_gsl_wavelet2d_nstransform_matrix_inverse, -1);
910
+
911
+ rb_define_singleton_method(cgsl_wavelet, "nstransform_matrix_inverse!",
912
+ rb_gsl_wavelet2d_nstransform_matrix_inverse2, -1);
913
+ rb_define_singleton_method(cgsl_wavelet2d, "nstransform_inverse!",
914
+ rb_gsl_wavelet2d_nstransform_matrix_inverse2, -1);
915
+ rb_define_method(cgsl_wavelet, "nstransform_matrix_inverse!",
916
+ rb_gsl_wavelet2d_nstransform_matrix_inverse2, -1);
917
+ rb_define_method(cgsl_wavelet2d, "nstransform_inverse!",
918
+ rb_gsl_wavelet2d_nstransform_matrix_inverse2, -1);
941
919
  }
942
920
 
943
921
  #undef CHECK_WAVELET