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,9 +9,9 @@
9
9
  WITHOUT ANY WARRANTY; without even the implied warranty of
10
10
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11
11
  */
12
- #include "rb_gsl_config.h"
13
- #include "rb_gsl_complex.h"
14
- #include "rb_gsl_array.h"
12
+
13
+ #include "include/rb_gsl_complex.h"
14
+ #include "include/rb_gsl_array.h"
15
15
 
16
16
  VALUE cgsl_complex;
17
17
 
@@ -31,11 +31,9 @@ gsl_complex rb_gsl_obj_to_gsl_complex(VALUE obj, gsl_complex *z)
31
31
  z = &tmp;
32
32
  GSL_SET_COMPLEX(z, 0.0, 0.0);
33
33
  }
34
-
35
34
  if(obj == Qnil) {
36
35
  return *z;
37
36
  }
38
-
39
37
  switch(TYPE(obj)) {
40
38
  case T_ARRAY:
41
39
  vre = rb_ary_entry(obj,0);
@@ -54,8 +52,8 @@ gsl_complex rb_gsl_obj_to_gsl_complex(VALUE obj, gsl_complex *z)
54
52
  *z = *zz;
55
53
  } else {
56
54
  rb_raise(rb_eTypeError,
57
- "wrong type %s, (nil, Array, Float, Integer, or GSL::Complex expected)",
58
- rb_class2name(CLASS_OF(obj)));
55
+ "wrong type %s, (nil, Array, Float, Integer, or GSL::Complex expected)",
56
+ rb_class2name(CLASS_OF(obj)));
59
57
  }
60
58
  break;
61
59
  }
@@ -66,7 +64,7 @@ static VALUE rb_gsl_complex_new(int argc, VALUE *argv, VALUE klass)
66
64
  {
67
65
  gsl_complex *c = NULL;
68
66
  VALUE obj;
69
- obj = Data_Make_Struct(klass, gsl_complex, 0, free, c);
67
+ obj = Data_Make_Struct(klass, gsl_complex, 0, free, c);
70
68
  switch (argc) {
71
69
  case 1:
72
70
  switch (TYPE(argv[0])) {
@@ -80,8 +78,8 @@ static VALUE rb_gsl_complex_new(int argc, VALUE *argv, VALUE klass)
80
78
  *c = gsl_complex_rect(NUM2DBL(argv[0]), 0.0);
81
79
  break;
82
80
  default:
83
- rb_raise(rb_eTypeError, "wrong argument type %s",
84
- rb_class2name(CLASS_OF(argv[0])));
81
+ rb_raise(rb_eTypeError, "wrong argument type %s",
82
+ rb_class2name(CLASS_OF(argv[0])));
85
83
  }
86
84
  break;
87
85
  case 2:
@@ -107,7 +105,7 @@ static VALUE rb_gsl_complex_polar(VALUE klass, VALUE r, VALUE theta)
107
105
  VALUE obj;
108
106
  gsl_complex *c = NULL;
109
107
  Need_Float(r); Need_Float(theta);
110
- obj = Data_Make_Struct(klass, gsl_complex, 0, free, c);
108
+ obj = Data_Make_Struct(klass, gsl_complex, 0, free, c);
111
109
  *c = gsl_complex_polar(NUM2DBL(r), NUM2DBL(theta));
112
110
  return obj;
113
111
  }
@@ -121,10 +119,10 @@ static VALUE rb_gsl_complex_get(VALUE obj, VALUE ii)
121
119
  i = FIX2INT(ii);
122
120
  switch (i) {
123
121
  case 0:
124
- return rb_float_new(GSL_REAL(*c));
122
+ return rb_float_new(GSL_REAL(*c));
125
123
  break;
126
124
  case 1:
127
- return rb_float_new(GSL_IMAG(*c));
125
+ return rb_float_new(GSL_IMAG(*c));
128
126
  break;
129
127
  default:
130
128
  rb_raise(rb_eArgError, "wrong argument (%d for 0 or 1)", i);
@@ -137,14 +135,14 @@ static VALUE rb_gsl_complex_real(VALUE obj)
137
135
  {
138
136
  gsl_complex *c = NULL;
139
137
  Data_Get_Struct(obj, gsl_complex, c);
140
- return rb_float_new(GSL_REAL(*c));
138
+ return rb_float_new(GSL_REAL(*c));
141
139
  }
142
140
 
143
141
  static VALUE rb_gsl_complex_imag(VALUE obj)
144
142
  {
145
143
  gsl_complex *c = NULL;
146
144
  Data_Get_Struct(obj, gsl_complex, c);
147
- return rb_float_new(GSL_IMAG(*c));
145
+ return rb_float_new(GSL_IMAG(*c));
148
146
  }
149
147
 
150
148
  static VALUE rb_gsl_complex_print(VALUE obj)
@@ -172,7 +170,7 @@ static VALUE rb_gsl_complex_return_double(double (*func)(gsl_complex), VALUE obj
172
170
  {
173
171
  gsl_complex *c = NULL;
174
172
  Data_Get_Struct(obj, gsl_complex, c);
175
- return rb_float_new((*func)(*c));
173
+ return rb_float_new((*func)(*c));
176
174
  }
177
175
 
178
176
  static VALUE rb_gsl_complex_arg(VALUE obj)
@@ -196,10 +194,10 @@ static VALUE rb_gsl_complex_logabs(VALUE obj)
196
194
  }
197
195
 
198
196
  static VALUE rb_gsl_complex_arithmetics2(gsl_complex (*func)(gsl_complex, double),
199
- VALUE obj, VALUE xx);
197
+ VALUE obj, VALUE xx);
200
198
 
201
199
  static VALUE rb_gsl_complex_arithmetics2(gsl_complex (*func)(gsl_complex, double),
202
- VALUE obj, VALUE xx)
200
+ VALUE obj, VALUE xx)
203
201
  {
204
202
  gsl_complex *a = NULL, *c = NULL, tmp;
205
203
  VALUE obj2;
@@ -208,7 +206,7 @@ static VALUE rb_gsl_complex_arithmetics2(gsl_complex (*func)(gsl_complex, double
208
206
  Data_Get_Struct(obj, gsl_complex, a);
209
207
  x = NUM2DBL(xx);
210
208
  tmp = (*func)(*a, x);
211
- obj2 = Data_Make_Struct(cgsl_complex, gsl_complex, 0, free, c);
209
+ obj2 = Data_Make_Struct(cgsl_complex, gsl_complex, 0, free, c);
212
210
  *c = tmp;
213
211
  return obj2;
214
212
  }
@@ -262,7 +260,7 @@ static VALUE rb_gsl_complex_operate(gsl_complex (*func)(gsl_complex), VALUE obj)
262
260
  Data_Get_Struct(obj, gsl_complex, c);
263
261
  cnew = ALLOC(gsl_complex);
264
262
  *cnew = (*func)(*c);
265
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
263
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
266
264
  }
267
265
 
268
266
  static VALUE rb_gsl_complex_operate2(gsl_complex (*func)(gsl_complex), int argc, VALUE *argv, VALUE obj)
@@ -279,33 +277,33 @@ static VALUE rb_gsl_complex_operate2(gsl_complex (*func)(gsl_complex), int argc,
279
277
  case 1:
280
278
  switch (TYPE(argv[0])) {
281
279
  case T_ARRAY:
282
- tmp = ary2complex(argv[0]);
283
- c = &tmp;
284
- break;
280
+ tmp = ary2complex(argv[0]);
281
+ c = &tmp;
282
+ break;
285
283
  default:
286
- if (VECTOR_COMPLEX_P(argv[0])) {
287
- Data_Get_Struct(argv[0], gsl_vector_complex, v);
288
- vnew = gsl_vector_complex_alloc(v->size);
289
- for (i = 0; i < v->size; i++) {
290
- c = GSL_COMPLEX_AT(v, i);
291
- gsl_vector_complex_set(vnew, i, (*func)(*c));
292
- }
293
- return Data_Wrap_Struct(cgsl_vector_complex, 0, gsl_vector_free, vnew);
294
- } else if (MATRIX_COMPLEX_P(obj)) {
295
- Data_Get_Struct(obj, gsl_matrix_complex, m);
296
- mnew = gsl_matrix_complex_alloc(m->size1, m->size2);
297
- for (i = 0; i < m->size1; i++) {
298
- for (j = 0; j < m->size2; j++) {
299
- gsl_matrix_complex_set(mnew, i, j,
300
- (*func)(gsl_matrix_complex_get(m, i, j)));
301
- }
302
- }
303
- return Data_Wrap_Struct(cgsl_matrix_complex, 0, gsl_matrix_complex_free, mnew);
304
- } else {
305
- CHECK_COMPLEX(argv[0]);
306
- Data_Get_Struct(argv[0], gsl_complex, c);
307
- }
308
- break;
284
+ if (VECTOR_COMPLEX_P(argv[0])) {
285
+ Data_Get_Struct(argv[0], gsl_vector_complex, v);
286
+ vnew = gsl_vector_complex_alloc(v->size);
287
+ for (i = 0; i < v->size; i++) {
288
+ c = GSL_COMPLEX_AT(v, i);
289
+ gsl_vector_complex_set(vnew, i, (*func)(*c));
290
+ }
291
+ return Data_Wrap_Struct(cgsl_vector_complex, 0, gsl_vector_free, vnew);
292
+ } else if (MATRIX_COMPLEX_P(obj)) {
293
+ Data_Get_Struct(obj, gsl_matrix_complex, m);
294
+ mnew = gsl_matrix_complex_alloc(m->size1, m->size2);
295
+ for (i = 0; i < m->size1; i++) {
296
+ for (j = 0; j < m->size2; j++) {
297
+ gsl_matrix_complex_set(mnew, i, j,
298
+ (*func)(gsl_matrix_complex_get(m, i, j)));
299
+ }
300
+ }
301
+ return Data_Wrap_Struct(cgsl_matrix_complex, 0, gsl_matrix_complex_free, mnew);
302
+ } else {
303
+ CHECK_COMPLEX(argv[0]);
304
+ Data_Get_Struct(argv[0], gsl_complex, c);
305
+ }
306
+ break;
309
307
  }
310
308
  break;
311
309
  case 2:
@@ -324,7 +322,7 @@ static VALUE rb_gsl_complex_operate2(gsl_complex (*func)(gsl_complex), int argc,
324
322
  }
325
323
  cnew = ALLOC(gsl_complex);
326
324
  *cnew = (*func)(*c);
327
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
325
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
328
326
  }
329
327
 
330
328
  static VALUE rb_gsl_complex_conjugate(VALUE obj)
@@ -350,7 +348,7 @@ static VALUE rb_gsl_complex_sqrt_real(VALUE obj, VALUE x)
350
348
  tmp = gsl_complex_sqrt_real(NUM2DBL(x));
351
349
  cnew = ALLOC(gsl_complex);
352
350
  *cnew = tmp;
353
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
351
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
354
352
  }
355
353
 
356
354
  static VALUE rb_gsl_complex_sqrt(int argc, VALUE *argv, VALUE obj)
@@ -362,22 +360,22 @@ static VALUE rb_gsl_complex_sqrt(int argc, VALUE *argv, VALUE obj)
362
360
  case 1:
363
361
  switch (TYPE(argv[0])) {
364
362
  case T_FIXNUM: case T_FLOAT:
365
- return rb_gsl_complex_sqrt_real(obj, argv[0]);
366
- break;
363
+ return rb_gsl_complex_sqrt_real(obj, argv[0]);
364
+ break;
367
365
  case T_ARRAY:
368
- tmp = ary2complex(argv[0]);
369
- z = ALLOC(gsl_complex);
370
- *z = gsl_complex_sqrt(tmp);
371
- return Data_Wrap_Struct(cgsl_complex, 0, free, z);
372
- break;
366
+ tmp = ary2complex(argv[0]);
367
+ z = ALLOC(gsl_complex);
368
+ *z = gsl_complex_sqrt(tmp);
369
+ return Data_Wrap_Struct(cgsl_complex, 0, free, z);
370
+ break;
373
371
  default:
374
- CHECK_COMPLEX(argv[0]);
375
- Data_Get_Struct(argv[0], gsl_complex, z);
376
- tmp = *z;
377
- z = ALLOC(gsl_complex);
378
- *z = gsl_complex_sqrt(tmp);
379
- return Data_Wrap_Struct(cgsl_complex, 0, free, z);
380
- break;
372
+ CHECK_COMPLEX(argv[0]);
373
+ Data_Get_Struct(argv[0], gsl_complex, z);
374
+ tmp = *z;
375
+ z = ALLOC(gsl_complex);
376
+ *z = gsl_complex_sqrt(tmp);
377
+ return Data_Wrap_Struct(cgsl_complex, 0, free, z);
378
+ break;
381
379
  }
382
380
  break;
383
381
  case 2:
@@ -385,7 +383,7 @@ static VALUE rb_gsl_complex_sqrt(int argc, VALUE *argv, VALUE obj)
385
383
  GSL_SET_REAL(&tmp, NUM2DBL(argv[0]));
386
384
  GSL_SET_IMAG(&tmp, NUM2DBL(argv[1]));
387
385
  *z = gsl_complex_sqrt(tmp);
388
- return Data_Wrap_Struct(cgsl_complex, 0, free, z);
386
+ return Data_Wrap_Struct(cgsl_complex, 0, free, z);
389
387
  break;
390
388
  default:
391
389
  rb_raise(rb_eArgError, "wrong number of arguments (%d for 1 or 2)", argc);
@@ -408,14 +406,14 @@ VALUE rb_gsl_complex_pow(int argc, VALUE *argv, VALUE obj)
408
406
  case T_MODULE:
409
407
  case T_CLASS:
410
408
  case T_OBJECT:
411
- if (argc != 2)
409
+ if (argc != 2)
412
410
  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
413
411
  switch (TYPE(argv[1])) {
414
412
  case T_ARRAY:
415
413
  tmpa = ary2complex(argv[1]);
416
414
  a = &tmpa;
417
415
  break;
418
- case T_FLOAT: case T_FIXNUM:
416
+ case T_FLOAT: case T_FIXNUM:
419
417
  return rb_gsl_complex_pow_real(argc, argv, obj);
420
418
  break;
421
419
  default:
@@ -431,24 +429,24 @@ VALUE rb_gsl_complex_pow(int argc, VALUE *argv, VALUE obj)
431
429
  break;
432
430
  default:
433
431
  if (VECTOR_COMPLEX_P(argv[0])) {
434
- Data_Get_Struct(argv[0], gsl_vector_complex, v);
435
- vnew = gsl_vector_complex_alloc(v->size);
436
- for (i = 0; i < v->size; i++) {
437
- c = GSL_COMPLEX_AT(v, i);
438
- gsl_vector_complex_set(vnew, i, gsl_complex_pow(*c, *a));
439
- }
440
- return Data_Wrap_Struct(cgsl_vector_complex, 0, gsl_vector_complex_free, vnew);
432
+ Data_Get_Struct(argv[0], gsl_vector_complex, v);
433
+ vnew = gsl_vector_complex_alloc(v->size);
434
+ for (i = 0; i < v->size; i++) {
435
+ c = GSL_COMPLEX_AT(v, i);
436
+ gsl_vector_complex_set(vnew, i, gsl_complex_pow(*c, *a));
437
+ }
438
+ return Data_Wrap_Struct(cgsl_vector_complex, 0, gsl_vector_complex_free, vnew);
441
439
  }
442
440
  if (MATRIX_COMPLEX_P(argv[0])) {
443
- Data_Get_Struct(argv[0], gsl_matrix_complex, m);
444
- mnew = gsl_matrix_complex_alloc(m->size1, m->size2);
445
- for (i = 0; i < m->size1; i++) {
446
- for (j = 0; j < m->size2; j++) {
447
- c = gsl_matrix_complex_ptr(m, i, j);
448
- gsl_matrix_complex_set(mnew, i, j, gsl_complex_pow(*c, *a));
449
- }
450
- }
451
- return Data_Wrap_Struct(cgsl_matrix_complex, 0, gsl_matrix_complex_free, mnew);
441
+ Data_Get_Struct(argv[0], gsl_matrix_complex, m);
442
+ mnew = gsl_matrix_complex_alloc(m->size1, m->size2);
443
+ for (i = 0; i < m->size1; i++) {
444
+ for (j = 0; j < m->size2; j++) {
445
+ c = gsl_matrix_complex_ptr(m, i, j);
446
+ gsl_matrix_complex_set(mnew, i, j, gsl_complex_pow(*c, *a));
447
+ }
448
+ }
449
+ return Data_Wrap_Struct(cgsl_matrix_complex, 0, gsl_matrix_complex_free, mnew);
452
450
  }
453
451
  CHECK_COMPLEX(argv[0]);
454
452
  Data_Get_Struct(argv[0], gsl_complex, c);
@@ -457,7 +455,7 @@ VALUE rb_gsl_complex_pow(int argc, VALUE *argv, VALUE obj)
457
455
 
458
456
  break;
459
457
  default:
460
- if (argc != 1)
458
+ if (argc != 1)
461
459
  rb_raise(rb_eArgError, "wrong number of arguments (%d for 1)", argc);
462
460
  CHECK_COMPLEX(obj);
463
461
  Data_Get_Struct(obj, gsl_complex, c);
@@ -466,7 +464,7 @@ VALUE rb_gsl_complex_pow(int argc, VALUE *argv, VALUE obj)
466
464
  tmpa = ary2complex(argv[0]);
467
465
  a = &tmpa;
468
466
  break;
469
- case T_FLOAT: case T_FIXNUM:
467
+ case T_FLOAT: case T_FIXNUM:
470
468
  return rb_gsl_complex_pow_real(argc, argv, obj);
471
469
  break;
472
470
  default:
@@ -478,7 +476,7 @@ VALUE rb_gsl_complex_pow(int argc, VALUE *argv, VALUE obj)
478
476
  }
479
477
  cnew = ALLOC(gsl_complex);
480
478
  *cnew = gsl_complex_pow(*c, *a);
481
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
479
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
482
480
  }
483
481
 
484
482
  VALUE rb_gsl_complex_pow_real(int argc, VALUE *argv, VALUE obj)
@@ -492,7 +490,7 @@ VALUE rb_gsl_complex_pow_real(int argc, VALUE *argv, VALUE obj)
492
490
  case T_MODULE:
493
491
  case T_CLASS:
494
492
  case T_OBJECT:
495
- if (argc != 2)
493
+ if (argc != 2)
496
494
  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
497
495
  switch (TYPE(argv[0])) {
498
496
  case T_ARRAY:
@@ -502,26 +500,26 @@ VALUE rb_gsl_complex_pow_real(int argc, VALUE *argv, VALUE obj)
502
500
  break;
503
501
  default:
504
502
  if (VECTOR_COMPLEX_P(argv[0])) {
505
- Data_Get_Struct(argv[0], gsl_vector_complex, v);
506
- vnew = gsl_vector_complex_alloc(v->size);
507
- a = NUM2DBL(argv[1]);
508
- for (i = 0; i < v->size; i++) {
509
- c = GSL_COMPLEX_AT(v, i);
510
- tmpc = gsl_complex_pow_real(*c, a);
511
- gsl_vector_complex_set(vnew, i, tmpc);
512
- }
513
- return Data_Wrap_Struct(cgsl_vector_complex, 0, gsl_vector_free, vnew);
503
+ Data_Get_Struct(argv[0], gsl_vector_complex, v);
504
+ vnew = gsl_vector_complex_alloc(v->size);
505
+ a = NUM2DBL(argv[1]);
506
+ for (i = 0; i < v->size; i++) {
507
+ c = GSL_COMPLEX_AT(v, i);
508
+ tmpc = gsl_complex_pow_real(*c, a);
509
+ gsl_vector_complex_set(vnew, i, tmpc);
510
+ }
511
+ return Data_Wrap_Struct(cgsl_vector_complex, 0, gsl_vector_free, vnew);
514
512
  }
515
513
  if (MATRIX_COMPLEX_P(argv[0])) {
516
- Data_Get_Struct(argv[0], gsl_matrix_complex, m);
517
- mnew = gsl_matrix_complex_alloc(m->size1, m->size2);
518
- for (i = 0; i < m->size1; i++) {
519
- for (j = 0; j < m->size2; j++) {
520
- tmpc = gsl_complex_pow_real(gsl_matrix_complex_get(m, i, j), a);
521
- gsl_matrix_complex_set(mnew, i, j, tmpc);
522
- }
523
- }
524
- return Data_Wrap_Struct(cgsl_matrix_complex, 0, gsl_matrix_complex_free, mnew);
514
+ Data_Get_Struct(argv[0], gsl_matrix_complex, m);
515
+ mnew = gsl_matrix_complex_alloc(m->size1, m->size2);
516
+ for (i = 0; i < m->size1; i++) {
517
+ for (j = 0; j < m->size2; j++) {
518
+ tmpc = gsl_complex_pow_real(gsl_matrix_complex_get(m, i, j), a);
519
+ gsl_matrix_complex_set(mnew, i, j, tmpc);
520
+ }
521
+ }
522
+ return Data_Wrap_Struct(cgsl_matrix_complex, 0, gsl_matrix_complex_free, mnew);
525
523
  }
526
524
  CHECK_COMPLEX(argv[0]);
527
525
  Data_Get_Struct(argv[0], gsl_complex, c);
@@ -531,7 +529,7 @@ VALUE rb_gsl_complex_pow_real(int argc, VALUE *argv, VALUE obj)
531
529
  a = NUM2DBL(argv[1]);
532
530
  break;
533
531
  default:
534
- if (argc != 1)
532
+ if (argc != 1)
535
533
  rb_raise(rb_eArgError, "wrong number of arguments (%d for 1)", argc);
536
534
  CHECK_COMPLEX(obj);
537
535
  Need_Float(argv[0]);
@@ -541,7 +539,7 @@ VALUE rb_gsl_complex_pow_real(int argc, VALUE *argv, VALUE obj)
541
539
  }
542
540
  cnew = ALLOC(gsl_complex);
543
541
  *cnew = gsl_complex_pow_real(*c, a);
544
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
542
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
545
543
  }
546
544
 
547
545
  static VALUE rb_gsl_complex_exp(int argc, VALUE *argv, VALUE obj)
@@ -566,7 +564,7 @@ static VALUE rb_gsl_complex_log_b(int argc, VALUE *argv, VALUE obj)
566
564
  case T_MODULE:
567
565
  case T_CLASS:
568
566
  case T_OBJECT:
569
- if (argc != 2)
567
+ if (argc != 2)
570
568
  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
571
569
  switch (TYPE(argv[1])) {
572
570
  case T_ARRAY:
@@ -592,7 +590,7 @@ static VALUE rb_gsl_complex_log_b(int argc, VALUE *argv, VALUE obj)
592
590
 
593
591
  break;
594
592
  default:
595
- if (argc != 1)
593
+ if (argc != 1)
596
594
  rb_raise(rb_eArgError, "wrong number of arguments (%d for 1)", argc);
597
595
  CHECK_COMPLEX(obj);
598
596
  Data_Get_Struct(obj, gsl_complex, c);
@@ -610,7 +608,7 @@ static VALUE rb_gsl_complex_log_b(int argc, VALUE *argv, VALUE obj)
610
608
  }
611
609
  cnew = ALLOC(gsl_complex);
612
610
  *cnew = gsl_complex_log_b(*c, *a);
613
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
611
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
614
612
  }
615
613
 
616
614
  static VALUE rb_gsl_complex_sin(int argc, VALUE *argv, VALUE obj)
@@ -658,7 +656,7 @@ static VALUE rb_gsl_complex_arcsin_real(VALUE obj, VALUE xx)
658
656
  tmp = gsl_complex_arcsin_real(x);
659
657
  cnew = ALLOC(gsl_complex);
660
658
  *cnew = tmp;
661
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
659
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
662
660
  }
663
661
 
664
662
  static VALUE rb_gsl_complex_arccos(int argc, VALUE *argv, VALUE obj)
@@ -675,7 +673,7 @@ static VALUE rb_gsl_complex_arccos_real(VALUE obj, VALUE xx)
675
673
  tmp = gsl_complex_arccos_real(x);
676
674
  cnew = ALLOC(gsl_complex);
677
675
  *cnew = tmp;
678
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
676
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
679
677
  }
680
678
 
681
679
  static VALUE rb_gsl_complex_arctan(int argc, VALUE *argv, VALUE obj)
@@ -697,7 +695,7 @@ static VALUE rb_gsl_complex_arcsec_real(VALUE obj, VALUE xx)
697
695
  tmp = gsl_complex_arcsec_real(x);
698
696
  cnew = ALLOC(gsl_complex);
699
697
  *cnew = tmp;
700
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
698
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
701
699
  }
702
700
 
703
701
  static VALUE rb_gsl_complex_arccsc(int argc, VALUE *argv, VALUE obj)
@@ -714,7 +712,7 @@ static VALUE rb_gsl_complex_arccsc_real(VALUE obj, VALUE xx)
714
712
  tmp = gsl_complex_arccsc_real(x);
715
713
  cnew = ALLOC(gsl_complex);
716
714
  *cnew = tmp;
717
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
715
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
718
716
  }
719
717
 
720
718
  static VALUE rb_gsl_complex_arccot(int argc, VALUE *argv, VALUE obj)
@@ -766,7 +764,7 @@ static VALUE rb_gsl_complex_arccosh_real(VALUE obj, VALUE xx)
766
764
  tmp = gsl_complex_arccosh_real(x);
767
765
  cnew = ALLOC(gsl_complex);
768
766
  *cnew = tmp;
769
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
767
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
770
768
  }
771
769
 
772
770
  static VALUE rb_gsl_complex_arccosh(int argc, VALUE *argv, VALUE obj)
@@ -788,7 +786,7 @@ static VALUE rb_gsl_complex_arctanh_real(VALUE obj, VALUE xx)
788
786
  tmp = gsl_complex_arctanh_real(x);
789
787
  cnew = ALLOC(gsl_complex);
790
788
  *cnew = tmp;
791
- return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
789
+ return Data_Wrap_Struct(cgsl_complex, 0, free, cnew);
792
790
  }
793
791
 
794
792
  static VALUE rb_gsl_complex_arcsech(int argc, VALUE *argv, VALUE obj)
@@ -807,10 +805,10 @@ static VALUE rb_gsl_complex_arccoth(int argc, VALUE *argv, VALUE obj)
807
805
  }
808
806
 
809
807
  int rbgsl_complex_equal(const gsl_complex *z1, const gsl_complex *z2,
810
- double eps)
808
+ double eps)
811
809
  {
812
810
  if (gsl_fcmp(z1->dat[0], z2->dat[0], eps) != 0) return 0;
813
- if (gsl_fcmp(z1->dat[1], z2->dat[1], eps) != 0) return 0;
811
+ if (gsl_fcmp(z1->dat[1], z2->dat[1], eps) != 0) return 0;
814
812
  return 1;
815
813
  }
816
814
 
@@ -825,11 +823,11 @@ static VALUE rb_gsl_complex_equal(int argc, VALUE *argv, VALUE obj)
825
823
  {
826
824
  gsl_complex *z1 = NULL, *z2 = NULL;
827
825
  double eps = 1e-8;
828
-
826
+
829
827
  switch (argc) {
830
828
  case 1:
831
829
  CHECK_COMPLEX(argv[0]);
832
- Data_Get_Struct(argv[0], gsl_complex, z2);
830
+ Data_Get_Struct(argv[0], gsl_complex, z2);
833
831
  break;
834
832
  case 2:
835
833
  CHECK_COMPLEX(argv[0]);