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
@@ -1,253 +0,0 @@
1
- /* matrix/oper_complex_source.c
2
- *
3
- * Copyright (C) 1996, 1997, 1998, 1999, 2000 Brian Gough
4
- *
5
- * This program is free software; you can redistribute it and/or modify
6
- * it under the terms of the GNU General Public License as published by
7
- * the Free Software Foundation; either version 2 of the License, or (at
8
- * your option) any later version.
9
- *
10
- * This program is distributed in the hope that it will be useful, but
11
- * WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
- * General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU General Public License
16
- * along with this program; if not, write to the Free Software
17
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18
- */
19
-
20
- #include "rb_gsl_config.h"
21
-
22
- #ifndef GSL_1_2_LATER
23
- #include <config.h>
24
- #include <stdlib.h>
25
- #include <math.h>
26
- #include <gsl/gsl_math.h>
27
- #include <gsl/gsl_matrix.h>
28
-
29
- #define BASE_GSL_COMPLEX
30
- #include "templates_on.h"
31
-
32
- int
33
- FUNCTION (gsl_matrix, add) (GSL_TYPE (gsl_matrix) * a,
34
- const GSL_TYPE (gsl_matrix) * b)
35
- {
36
- const size_t M = a->size1;
37
- const size_t N = a->size2;
38
-
39
- if (b->size1 != M || b->size2 != N)
40
- {
41
- GSL_ERROR ("matrices must have same dimensions", GSL_EBADLEN);
42
- }
43
- else
44
- {
45
- const size_t tda_a = a->tda;
46
- const size_t tda_b = b->tda;
47
-
48
- size_t i, j;
49
-
50
- for (i = 0; i < M; i++)
51
- {
52
- for (j = 0; j < N; j++)
53
- {
54
- const size_t aij = 2 * (i * tda_a + j);
55
- const size_t bij = 2 * (i * tda_b + j);
56
-
57
- a->data[aij] += b->data[bij];
58
- a->data[aij + 1] += b->data[bij + 1];
59
- }
60
- }
61
-
62
- return GSL_SUCCESS;
63
- }
64
- }
65
-
66
- int
67
- FUNCTION (gsl_matrix, sub) (GSL_TYPE (gsl_matrix) * a,
68
- const GSL_TYPE (gsl_matrix) * b)
69
- {
70
- const size_t M = a->size1;
71
- const size_t N = a->size2;
72
-
73
- if (b->size1 != M || b->size2 != N)
74
- {
75
- GSL_ERROR ("matrices must have same dimensions", GSL_EBADLEN);
76
- }
77
- else
78
- {
79
- const size_t tda_a = a->tda;
80
- const size_t tda_b = b->tda;
81
-
82
- size_t i, j;
83
-
84
- for (i = 0; i < M; i++)
85
- {
86
- for (j = 0; j < N; j++)
87
- {
88
- const size_t aij = 2 * (i * tda_a + j);
89
- const size_t bij = 2 * (i * tda_b + j);
90
-
91
- a->data[aij] -= b->data[bij];
92
- a->data[aij + 1] -= b->data[bij + 1];
93
- }
94
- }
95
-
96
- return GSL_SUCCESS;
97
- }
98
- }
99
-
100
- int
101
- FUNCTION (gsl_matrix, mul_elements) (GSL_TYPE (gsl_matrix) * a,
102
- const GSL_TYPE (gsl_matrix) * b)
103
- {
104
- const size_t M = a->size1;
105
- const size_t N = a->size2;
106
-
107
- if (b->size1 != M || b->size2 != N)
108
- {
109
- GSL_ERROR ("matrices must have same dimensions", GSL_EBADLEN);
110
- }
111
- else
112
- {
113
- const size_t tda_a = a->tda;
114
- const size_t tda_b = b->tda;
115
-
116
- size_t i, j;
117
-
118
- for (i = 0; i < M; i++)
119
- {
120
- for (j = 0; j < N; j++)
121
- {
122
- const size_t aij = 2 * (i * tda_a + j);
123
- const size_t bij = 2 * (i * tda_b + j);
124
-
125
- ATOMIC ar = a->data[aij];
126
- ATOMIC ai = a->data[aij + 1];
127
-
128
- ATOMIC br = b->data[bij];
129
- ATOMIC bi = b->data[bij + 1];
130
-
131
- a->data[aij] = ar * br - ai * bi;
132
- a->data[aij + 1] = ar * bi + ai * br;
133
- }
134
- }
135
-
136
- return GSL_SUCCESS;
137
- }
138
- }
139
-
140
- int
141
- FUNCTION (gsl_matrix, div_elements) (GSL_TYPE (gsl_matrix) * a,
142
- const GSL_TYPE (gsl_matrix) * b)
143
- {
144
- const size_t M = a->size1;
145
- const size_t N = a->size2;
146
-
147
- if (b->size1 != M || b->size2 != N)
148
- {
149
- GSL_ERROR ("matrices must have same dimensions", GSL_EBADLEN);
150
- }
151
- else
152
- {
153
- const size_t tda_a = a->tda;
154
- const size_t tda_b = b->tda;
155
-
156
- size_t i, j;
157
-
158
- for (i = 0; i < M; i++)
159
- {
160
- for (j = 0; j < N; j++)
161
- {
162
- const size_t aij = 2 * (i * tda_a + j);
163
- const size_t bij = 2 * (i * tda_b + j);
164
-
165
- ATOMIC ar = a->data[aij];
166
- ATOMIC ai = a->data[aij + 1];
167
-
168
- ATOMIC br = b->data[bij];
169
- ATOMIC bi = b->data[bij + 1];
170
-
171
- ATOMIC s = 1.0 / hypot(br, bi);
172
-
173
- ATOMIC sbr = s * br;
174
- ATOMIC sbi = s * bi;
175
-
176
- a->data[aij] = (ar * sbr + ai * sbi) * s;
177
- a->data[aij + 1] = (ai * sbr - ar * sbi) * s;
178
- }
179
- }
180
-
181
- return GSL_SUCCESS;
182
- }
183
- }
184
-
185
- int FUNCTION (gsl_matrix, scale) (GSL_TYPE (gsl_matrix) * a, const BASE x)
186
- {
187
- const size_t M = a->size1;
188
- const size_t N = a->size2;
189
- const size_t tda = a->tda;
190
-
191
- size_t i, j;
192
-
193
- ATOMIC xr = GSL_REAL(x);
194
- ATOMIC xi = GSL_IMAG(x);
195
-
196
- for (i = 0; i < M; i++)
197
- {
198
- for (j = 0; j < N; j++)
199
- {
200
- const size_t aij = 2 * (i * tda + j);
201
-
202
- ATOMIC ar = a->data[aij];
203
- ATOMIC ai = a->data[aij + 1];
204
-
205
- a->data[aij] = ar * xr - ai * xi;
206
- a->data[aij + 1] = ar * xi + ai * xr;
207
- }
208
- }
209
-
210
- return GSL_SUCCESS;
211
- }
212
-
213
- int FUNCTION (gsl_matrix, add_constant) (GSL_TYPE (gsl_matrix) * a, const BASE x)
214
- {
215
- const size_t M = a->size1;
216
- const size_t N = a->size2;
217
- const size_t tda = a->tda;
218
-
219
- size_t i, j;
220
-
221
- for (i = 0; i < M; i++)
222
- {
223
- for (j = 0; j < N; j++)
224
- {
225
- a->data[2 * (i * tda + j)] += GSL_REAL (x);
226
- a->data[2 * (i * tda + j) + 1] += GSL_IMAG (x);
227
- }
228
- }
229
-
230
- return GSL_SUCCESS;
231
- }
232
-
233
-
234
- int FUNCTION (gsl_matrix, add_diagonal) (GSL_TYPE (gsl_matrix) * a, const BASE x)
235
- {
236
- const size_t M = a->size1;
237
- const size_t N = a->size2;
238
- const size_t tda = a->tda;
239
- const size_t loop_lim = (M < N ? M : N);
240
- size_t i;
241
- for (i = 0; i < loop_lim; i++)
242
- {
243
- a->data[2 * (i * tda + i)] += GSL_REAL (x);
244
- a->data[2 * (i * tda + i) + 1] += GSL_IMAG (x);
245
- }
246
-
247
- return GSL_SUCCESS;
248
- }
249
-
250
-
251
- #include "templates_off.h"
252
- #undef BASE_GSL_COMPLEX
253
- #endif
@@ -1,238 +0,0 @@
1
- #include "rb_gsl.h"
2
- #ifdef GSL_1_9_LATER
3
-
4
- static VALUE cWorkspace;
5
-
6
- static VALUE rb_gsl_sf_mathieu_alloc(VALUE klass, VALUE n, VALUE q)
7
- {
8
- gsl_sf_mathieu_workspace *w;
9
- w = gsl_sf_mathieu_alloc((size_t) FIX2INT(n), NUM2DBL(q));
10
- return Data_Wrap_Struct(klass, 0, gsl_sf_mathieu_free, w);
11
- }
12
-
13
- static VALUE sf_mathieu_eval(VALUE order, VALUE qq,
14
- int (*f)(int, double, gsl_sf_result*))
15
- {
16
- gsl_sf_result r;
17
- (*f)(FIX2INT(order), NUM2DBL(qq), &r);
18
- return rb_float_new(r.val);
19
- }
20
-
21
- static VALUE sf_mathieu_eval2(VALUE n1, VALUE n2, VALUE q, VALUE x,
22
- int (*f)(int, int, double, double, gsl_sf_result*))
23
- {
24
- gsl_sf_result r;
25
- (*f)(FIX2INT(n1),FIX2INT(n2), NUM2DBL(q), NUM2DBL(x), &r);
26
- return rb_float_new(r.val);
27
- }
28
-
29
- static VALUE sf_mathieu_array_eval(int argc, VALUE *argv,
30
- int (*f)(int, int, double, gsl_sf_mathieu_workspace*, double[]))
31
- {
32
- gsl_sf_mathieu_workspace *w;
33
- gsl_vector *v;
34
- int n1, n2;
35
- double q;
36
- switch (argc) {
37
- case 4:
38
- if (!rb_obj_is_kind_of(argv[3], cWorkspace)) {
39
- rb_raise(rb_eTypeError, "Wrong argument type 3 (%s detected, %s expected)",
40
- rb_class2name(CLASS_OF(argv[3])), rb_class2name(cWorkspace));
41
- }
42
- n1 = FIX2INT(argv[0]);
43
- n2 = FIX2INT(argv[1]);
44
- q = NUM2DBL(argv[2]);
45
- Data_Get_Struct(argv[3], gsl_sf_mathieu_workspace, w);
46
- break;
47
- default:
48
- rb_raise(rb_eArgError, "Wrong number of arguments. (%d for 4)", argc);
49
- }
50
- v = gsl_vector_alloc(n2 - n1 + 1);
51
- (*f)(n1, n2, q, w, v->data);
52
- return Data_Wrap_Struct(cgsl_vector, 0, gsl_vector_free, v);
53
- }
54
-
55
- static VALUE sf_mathieu_array_eval2(int argc, VALUE *argv,
56
- int (*f)(int, int, double, double, gsl_sf_mathieu_workspace*, double[]))
57
- {
58
- gsl_sf_mathieu_workspace *w;
59
- gsl_vector *v;
60
- int n1, n2;
61
- double q, x;
62
- switch (argc) {
63
- case 5:
64
- if (!rb_obj_is_kind_of(argv[4], cWorkspace)) {
65
- rb_raise(rb_eTypeError, "Wrong argument type 4 (%s detected, %s expected)",
66
- rb_class2name(CLASS_OF(argv[4])), rb_class2name(cWorkspace));
67
- }
68
- n1 = FIX2INT(argv[0]);
69
- n2 = FIX2INT(argv[1]);
70
- q = NUM2DBL(argv[2]);
71
- x = NUM2DBL(argv[3]);
72
- Data_Get_Struct(argv[4], gsl_sf_mathieu_workspace, w);
73
- break;
74
- default:
75
- rb_raise(rb_eArgError, "Wrong number of arguments. (%d for 5)", argc);
76
- }
77
- v = gsl_vector_alloc(n2 - n1 + 1);
78
- (*f)(n1, n2, q, x, w, v->data);
79
- return Data_Wrap_Struct(cgsl_vector, 0, gsl_vector_free, v);
80
- }
81
- static VALUE sf_mathieu_array_eval3(int argc, VALUE *argv,
82
- int (*f)(int, int, int, double, double, gsl_sf_mathieu_workspace*, double[]))
83
- {
84
- gsl_sf_mathieu_workspace *w;
85
- gsl_vector *v;
86
- int n1, n2, n3;
87
- double q, x;
88
- switch (argc) {
89
- case 6:
90
- if (!rb_obj_is_kind_of(argv[5], cWorkspace)) {
91
- rb_raise(rb_eTypeError, "Wrong argument type 5 (%s detected, %s expected)",
92
- rb_class2name(CLASS_OF(argv[5])), rb_class2name(cWorkspace));
93
- }
94
- n1 = FIX2INT(argv[0]);
95
- n2 = FIX2INT(argv[1]);
96
- n3 = FIX2INT(argv[2]);
97
- q = NUM2DBL(argv[3]);
98
- x = NUM2DBL(argv[4]);
99
- Data_Get_Struct(argv[5], gsl_sf_mathieu_workspace, w);
100
- break;
101
- default:
102
- rb_raise(rb_eArgError, "Wrong number of arguments. (%d for 6)", argc);
103
- }
104
- v = gsl_vector_alloc(n3 - n2 + 1);
105
- (*f)(n1, n2, n3, q, x, w, v->data);
106
- return Data_Wrap_Struct(cgsl_vector, 0, gsl_vector_free, v);
107
- }
108
- static VALUE sf_mathieu_eval_int_double2(VALUE order, VALUE qq, VALUE zz,
109
- int (*f)(int, double, double, gsl_sf_result*))
110
- {
111
- gsl_sf_result r;
112
- (*f)(FIX2INT(order), NUM2DBL(qq), NUM2DBL(zz), &r);
113
- return rb_float_new(r.val);
114
- }
115
- static VALUE sf_mathieu_eval_e_int_double2(VALUE order, VALUE qq, VALUE zz,
116
- int (*f)(int, double, double, gsl_sf_result*))
117
- {
118
- gsl_sf_result *r;
119
- VALUE val;
120
- val = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, r);
121
- (*f)(FIX2INT(order), NUM2DBL(qq), NUM2DBL(zz), r);
122
- return val;
123
- }
124
-
125
- static VALUE sf_mathieu_eval_e_int2_double2(VALUE n1, VALUE n2, VALUE qq, VALUE zz,
126
- int (*f)(int, int, double, double, gsl_sf_result*))
127
- {
128
- gsl_sf_result *r;
129
- VALUE val;
130
- val = Data_Make_Struct(cgsl_sf_result, gsl_sf_result, 0, free, r);
131
- (*f)(FIX2INT(n1), FIX2INT(n2), NUM2DBL(qq), NUM2DBL(zz), r);
132
- return val;
133
- }
134
- /**********/
135
- static VALUE rb_gsl_sf_mathieu_a_e(VALUE module, VALUE order, VALUE qq)
136
- {
137
- return rb_gsl_sf_eval_e_int_double(gsl_sf_mathieu_a, order, qq);
138
- }
139
- static VALUE rb_gsl_sf_mathieu_a(VALUE module, VALUE order, VALUE qq)
140
- {
141
- return sf_mathieu_eval(order, qq, gsl_sf_mathieu_a);
142
- }
143
- static VALUE rb_gsl_sf_mathieu_a_array(VALUE module, int argc, VALUE *argv)
144
- {
145
- return sf_mathieu_array_eval(argc, argv, gsl_sf_mathieu_a_array);
146
- }
147
- static VALUE rb_gsl_sf_mathieu_b_e(VALUE module, VALUE order, VALUE qq)
148
- {
149
- return rb_gsl_sf_eval_e_int_double(gsl_sf_mathieu_b, order, qq);
150
- }
151
- static VALUE rb_gsl_sf_mathieu_b(VALUE module, VALUE order, VALUE qq)
152
- {
153
- return sf_mathieu_eval(order, qq, gsl_sf_mathieu_b);
154
- }
155
- static VALUE rb_gsl_sf_mathieu_b_array(VALUE module, int argc, VALUE *argv)
156
- {
157
- return sf_mathieu_array_eval(argc, argv, gsl_sf_mathieu_b_array);
158
- }
159
- static VALUE rb_gsl_sf_mathieu_ce_e(VALUE module, VALUE order, VALUE qq, VALUE zz)
160
- {
161
- return sf_mathieu_eval_e_int_double2(order, qq, zz, gsl_sf_mathieu_ce);
162
- }
163
- static VALUE rb_gsl_sf_mathieu_ce(VALUE module, VALUE order, VALUE qq, VALUE zz)
164
- {
165
- return sf_mathieu_eval_int_double2(order, qq, zz, gsl_sf_mathieu_ce);
166
- }
167
- static VALUE rb_gsl_sf_mathieu_ce_array(VALUE module, int argc, VALUE *argv)
168
- {
169
- return sf_mathieu_array_eval2(argc, argv, gsl_sf_mathieu_ce_array);
170
- }
171
- static VALUE rb_gsl_sf_mathieu_se_e(VALUE module, VALUE order, VALUE qq, VALUE zz)
172
- {
173
- return sf_mathieu_eval_e_int_double2(order, qq, zz, gsl_sf_mathieu_se);
174
- }
175
- static VALUE rb_gsl_sf_mathieu_se(VALUE module, VALUE order, VALUE qq, VALUE zz)
176
- {
177
- return sf_mathieu_eval_int_double2(order, qq, zz, gsl_sf_mathieu_se);
178
- }
179
- static VALUE rb_gsl_sf_mathieu_se_array(VALUE module, int argc, VALUE *argv)
180
- {
181
- return sf_mathieu_array_eval2(argc, argv, gsl_sf_mathieu_se_array);
182
- }
183
-
184
- /*****/
185
- static VALUE rb_gsl_sf_mathieu_Mc_e(VALUE module, VALUE n1, VALUE n2, VALUE q, VALUE x)
186
- {
187
- return sf_mathieu_eval_e_int2_double2(n1, n2, q, x, gsl_sf_mathieu_Mc);
188
- }
189
- static VALUE rb_gsl_sf_mathieu_Mc(VALUE module, VALUE n1, VALUE n2, VALUE q, VALUE x)
190
- {
191
- return sf_mathieu_eval2(n1, n2, q, x, gsl_sf_mathieu_Mc);
192
- }
193
- static VALUE rb_gsl_sf_mathieu_Mc_array(VALUE module, int argc, VALUE *argv)
194
- {
195
- return sf_mathieu_array_eval3(argc, argv, gsl_sf_mathieu_Mc_array);
196
- }
197
- static VALUE rb_gsl_sf_mathieu_Ms_e(VALUE module, VALUE n1, VALUE n2, VALUE q, VALUE x)
198
- {
199
- return sf_mathieu_eval_e_int2_double2(n1, n2, q, x, gsl_sf_mathieu_Ms);
200
- }
201
- static VALUE rb_gsl_sf_mathieu_Ms(VALUE module, VALUE n1, VALUE n2, VALUE q, VALUE x)
202
- {
203
- return sf_mathieu_eval2(n1, n2, q, x, gsl_sf_mathieu_Ms);
204
- }
205
- static VALUE rb_gsl_sf_mathieu_Ms_array(VALUE module, int argc, VALUE *argv)
206
- {
207
- return sf_mathieu_array_eval3(argc, argv, gsl_sf_mathieu_Ms_array);
208
- }
209
- /*****/
210
- void Init_sf_mathieu(VALUE module)
211
- {
212
- VALUE mMathieu;
213
-
214
- mMathieu = rb_define_module_under(module, "Mathieu");
215
- cWorkspace = rb_define_class_under(mMathieu, "Workspace", cGSL_Object);
216
- rb_define_singleton_method(cWorkspace, "alloc", rb_gsl_sf_mathieu_alloc, 2);
217
-
218
- rb_define_module_function(module, "mathieu_a", rb_gsl_sf_mathieu_a, 2);
219
- rb_define_module_function(module, "mathieu_a_e", rb_gsl_sf_mathieu_a_e, 2);
220
- rb_define_module_function(module, "mathieu_a_array", rb_gsl_sf_mathieu_a_array, -1);
221
- rb_define_module_function(module, "mathieu_b", rb_gsl_sf_mathieu_b, 2);
222
- rb_define_module_function(module, "mathieu_b_e", rb_gsl_sf_mathieu_b_e, 2);
223
- rb_define_module_function(module, "mathieu_b_array", rb_gsl_sf_mathieu_b_array, -1);
224
- rb_define_module_function(module, "mathieu_ce", rb_gsl_sf_mathieu_ce, 3);
225
- rb_define_module_function(module, "mathieu_ce_e", rb_gsl_sf_mathieu_ce_e, 3);
226
- rb_define_module_function(module, "mathieu_ce_array", rb_gsl_sf_mathieu_ce_array, -1);
227
- rb_define_module_function(module, "mathieu_se", rb_gsl_sf_mathieu_se, 3);
228
- rb_define_module_function(module, "mathieu_se_e", rb_gsl_sf_mathieu_se_e, 3);
229
- rb_define_module_function(module, "mathieu_se_array", rb_gsl_sf_mathieu_se_array, -1);
230
- rb_define_module_function(module, "mathieu_Mc", rb_gsl_sf_mathieu_Mc, 4);
231
- rb_define_module_function(module, "mathieu_Mc_e", rb_gsl_sf_mathieu_Mc_e, 4);
232
- rb_define_module_function(module, "mathieu_Mc_array", rb_gsl_sf_mathieu_Mc_array, -1);
233
- rb_define_module_function(module, "mathieu_Ms", rb_gsl_sf_mathieu_Ms, 4);
234
- rb_define_module_function(module, "mathieu_Ms_e", rb_gsl_sf_mathieu_Ms_e, 4);
235
- rb_define_module_function(module, "mathieu_Ms_array", rb_gsl_sf_mathieu_Ms_array, -1);
236
- }
237
-
238
- #endif