numo-gsl-alt 0.1.3

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 (320) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +4 -0
  3. data/README.md +83 -0
  4. data/Rakefile +16 -0
  5. data/ext/numo/gsl/cdf/depend +17 -0
  6. data/ext/numo/gsl/cdf/erbpp_cdf.rb +44 -0
  7. data/ext/numo/gsl/cdf/extconf.rb +9 -0
  8. data/ext/numo/gsl/cdf/func_def.rb +610 -0
  9. data/ext/numo/gsl/const/const_2.4.rb +419 -0
  10. data/ext/numo/gsl/const/const_2.5.rb +419 -0
  11. data/ext/numo/gsl/const/const_2.6.rb +419 -0
  12. data/ext/numo/gsl/const/const_def.rb +419 -0
  13. data/ext/numo/gsl/const/depend +17 -0
  14. data/ext/numo/gsl/const/erbpp_const.rb +28 -0
  15. data/ext/numo/gsl/const/extconf.rb +9 -0
  16. data/ext/numo/gsl/err/depend +1 -0
  17. data/ext/numo/gsl/err/err.c +22 -0
  18. data/ext/numo/gsl/err/extconf.rb +9 -0
  19. data/ext/numo/gsl/extconf_gsl.rb +58 -0
  20. data/ext/numo/gsl/fit/depend +17 -0
  21. data/ext/numo/gsl/fit/erbpp_fit.rb +73 -0
  22. data/ext/numo/gsl/fit/extconf.rb +9 -0
  23. data/ext/numo/gsl/fit/func_2.4.rb +128 -0
  24. data/ext/numo/gsl/fit/func_2.5.rb +128 -0
  25. data/ext/numo/gsl/fit/func_2.6.rb +128 -0
  26. data/ext/numo/gsl/fit/func_def.rb +129 -0
  27. data/ext/numo/gsl/fit/tmpl/check_1d.c +9 -0
  28. data/ext/numo/gsl/fit/tmpl/fit_linear.c +53 -0
  29. data/ext/numo/gsl/fit/tmpl/fit_linear_est.c +56 -0
  30. data/ext/numo/gsl/fit/tmpl/fit_mul.c +50 -0
  31. data/ext/numo/gsl/fit/tmpl/fit_mul_est.c +47 -0
  32. data/ext/numo/gsl/fit/tmpl/fit_wlinear.c +59 -0
  33. data/ext/numo/gsl/fit/tmpl/fit_wmul.c +56 -0
  34. data/ext/numo/gsl/gen/erbln.rb +132 -0
  35. data/ext/numo/gsl/gen/erbpp2.rb +344 -0
  36. data/ext/numo/gsl/gen/erbpp_gsl.rb +170 -0
  37. data/ext/numo/gsl/gen/func_parser.rb +518 -0
  38. data/ext/numo/gsl/gen/tmpl/c_DFloat_f_DFloat.c +40 -0
  39. data/ext/numo/gsl/gen/tmpl/c_DFloat_f_SZ.c +41 -0
  40. data/ext/numo/gsl/gen/tmpl/c_DFloat_f_SZ_x2.c +44 -0
  41. data/ext/numo/gsl/gen/tmpl/c_DFloat_x2_f_DFloat_x2.c +45 -0
  42. data/ext/numo/gsl/gen/tmpl/c_double_f_double.c +16 -0
  43. data/ext/numo/gsl/gen/tmpl/c_double_f_sizet.c +16 -0
  44. data/ext/numo/gsl/gen/tmpl/c_double_f_sizet_x2.c +17 -0
  45. data/ext/numo/gsl/gen/tmpl/c_double_f_void.c +15 -0
  46. data/ext/numo/gsl/gen/tmpl/c_double_x2_f_void.c +17 -0
  47. data/ext/numo/gsl/gen/tmpl/c_new_DFloat.c +29 -0
  48. data/ext/numo/gsl/gen/tmpl/c_new_double.c +22 -0
  49. data/ext/numo/gsl/gen/tmpl/c_new_f_other.c +25 -0
  50. data/ext/numo/gsl/gen/tmpl/c_new_sizet.c +22 -0
  51. data/ext/numo/gsl/gen/tmpl/c_new_sizet_double.c +23 -0
  52. data/ext/numo/gsl/gen/tmpl/c_new_sizet_x2.c +23 -0
  53. data/ext/numo/gsl/gen/tmpl/c_new_void.c +21 -0
  54. data/ext/numo/gsl/gen/tmpl/c_other_f_void.c +19 -0
  55. data/ext/numo/gsl/gen/tmpl/c_self_f_DFloat.c +46 -0
  56. data/ext/numo/gsl/gen/tmpl/c_self_f_DFloat_x2.c +41 -0
  57. data/ext/numo/gsl/gen/tmpl/c_self_f_DFloat_x3.c +44 -0
  58. data/ext/numo/gsl/gen/tmpl/c_self_f_DFloat_x4.c +47 -0
  59. data/ext/numo/gsl/gen/tmpl/c_self_f_SZ_x2_DFloat.c +45 -0
  60. data/ext/numo/gsl/gen/tmpl/c_self_f_double.c +17 -0
  61. data/ext/numo/gsl/gen/tmpl/c_self_f_other.c +17 -0
  62. data/ext/numo/gsl/gen/tmpl/c_self_f_sizet.c +21 -0
  63. data/ext/numo/gsl/gen/tmpl/c_self_f_void.c +14 -0
  64. data/ext/numo/gsl/gen/tmpl/c_sizet_f_void.c +15 -0
  65. data/ext/numo/gsl/gen/tmpl/c_sizet_x2_f_void.c +17 -0
  66. data/ext/numo/gsl/gen/tmpl/c_str_f_void.c +15 -0
  67. data/ext/numo/gsl/gen/tmpl/c_super_new_void.c +18 -0
  68. data/ext/numo/gsl/gen/tmpl/c_uint_f_void.c +15 -0
  69. data/ext/numo/gsl/gen/tmpl/c_ulong_f_void.c +15 -0
  70. data/ext/numo/gsl/gen/tmpl/c_void_f_double.c +17 -0
  71. data/ext/numo/gsl/gen/tmpl/c_void_f_double_x2.c +18 -0
  72. data/ext/numo/gsl/gen/tmpl/c_void_f_double_x4.c +20 -0
  73. data/ext/numo/gsl/gen/tmpl/c_void_f_ulong.c +17 -0
  74. data/ext/numo/gsl/gen/tmpl/c_void_f_void.c +14 -0
  75. data/ext/numo/gsl/gen/tmpl/cast_1d_contiguous.c +15 -0
  76. data/ext/numo/gsl/gen/tmpl/cast_2d_contiguous.c +15 -0
  77. data/ext/numo/gsl/gen/tmpl/class.c +26 -0
  78. data/ext/numo/gsl/gen/tmpl/create_new_narray.c +26 -0
  79. data/ext/numo/gsl/gen/tmpl/init_class.c +10 -0
  80. data/ext/numo/gsl/gen/tmpl/init_module.c +12 -0
  81. data/ext/numo/gsl/gen/tmpl/lib.c +41 -0
  82. data/ext/numo/gsl/gen/tmpl/m_DFloat_Int_f_DFloat.c +38 -0
  83. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_DFloat.c +35 -0
  84. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_DFloat_Int.c +39 -0
  85. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_DFloat_UInt.c +39 -0
  86. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_DFloat_double.c +42 -0
  87. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_DFloat_double_x2.c +47 -0
  88. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_DFloat_int.c +42 -0
  89. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_DFloat_x2.c +38 -0
  90. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_DFloat_x3.c +41 -0
  91. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_Int.c +36 -0
  92. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt.c +36 -0
  93. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt32.c +36 -0
  94. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt32_double.c +43 -0
  95. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt32_double_uint.c +49 -0
  96. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt32_double_x2.c +48 -0
  97. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt32_uint_x3.c +51 -0
  98. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt_double.c +43 -0
  99. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt_double_uint.c +50 -0
  100. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt_double_x2.c +48 -0
  101. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_UInt_uint_x3.c +51 -0
  102. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_int_DFloat.c +41 -0
  103. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_int_DFloat_x2.c +44 -0
  104. data/ext/numo/gsl/gen/tmpl/m_DFloat_f_int_x2_DFloat_x2.c +46 -0
  105. data/ext/numo/gsl/gen/tmpl/m_Int_f_DFloat.c +36 -0
  106. data/ext/numo/gsl/gen/tmpl/m_Int_f_DFloat_x3.c +42 -0
  107. data/ext/numo/gsl/gen/tmpl/m_Int_f_int_DFloat.c +42 -0
  108. data/ext/numo/gsl/gen/tmpl/m_Int_f_int_DFloat_x2.c +45 -0
  109. data/ext/numo/gsl/gen/tmpl/mod_func_noloop.c +54 -0
  110. data/ext/numo/gsl/gen/tmpl/mod_func_scalar.c +27 -0
  111. data/ext/numo/gsl/gen/tmpl/module.c +9 -0
  112. data/ext/numo/gsl/histogram/depend +17 -0
  113. data/ext/numo/gsl/histogram/erbpp_histogram.rb +109 -0
  114. data/ext/numo/gsl/histogram/extconf.rb +9 -0
  115. data/ext/numo/gsl/histogram/func_2.4.rb +742 -0
  116. data/ext/numo/gsl/histogram/func_2.5.rb +742 -0
  117. data/ext/numo/gsl/histogram/func_2.6.rb +742 -0
  118. data/ext/numo/gsl/histogram/func_def.rb +763 -0
  119. data/ext/numo/gsl/histogram/tmpl/c_DFloat_f_2d_get.c +54 -0
  120. data/ext/numo/gsl/histogram/tmpl/c_DFloat_f_field.c +35 -0
  121. data/ext/numo/gsl/histogram/tmpl/c_DFloat_f_get.c +47 -0
  122. data/ext/numo/gsl/histogram/tmpl/c_DFloat_x2_f_get_range.c +56 -0
  123. data/ext/numo/gsl/histogram/tmpl/c_bool_f_other.c +19 -0
  124. data/ext/numo/gsl/histogram/tmpl/c_bool_f_pdf_init.c +24 -0
  125. data/ext/numo/gsl/histogram/tmpl/c_self_f_2d_set_ranges.c +26 -0
  126. data/ext/numo/gsl/histogram/tmpl/c_self_f_set_ranges.c +21 -0
  127. data/ext/numo/gsl/histogram/tmpl/c_sizet_f_field.c +15 -0
  128. data/ext/numo/gsl/interp/depend +17 -0
  129. data/ext/numo/gsl/interp/erbpp_interp.rb +60 -0
  130. data/ext/numo/gsl/interp/extconf.rb +9 -0
  131. data/ext/numo/gsl/interp/func_2.4.rb +804 -0
  132. data/ext/numo/gsl/interp/func_2.5.rb +804 -0
  133. data/ext/numo/gsl/interp/func_2.6.rb +804 -0
  134. data/ext/numo/gsl/interp/func_def.rb +816 -0
  135. data/ext/numo/gsl/interp/parse_interp.rb +67 -0
  136. data/ext/numo/gsl/interp/tmpl/interp2d_new.c +36 -0
  137. data/ext/numo/gsl/interp/tmpl/interp2d_type_new.c +17 -0
  138. data/ext/numo/gsl/interp/tmpl/interp_bsearch.c +57 -0
  139. data/ext/numo/gsl/interp/tmpl/interp_new.c +29 -0
  140. data/ext/numo/gsl/interp/tmpl/interp_type_new.c +16 -0
  141. data/ext/numo/gsl/interp/tmpl/spline2d_eval.c +61 -0
  142. data/ext/numo/gsl/interp/tmpl/spline_eval.c +55 -0
  143. data/ext/numo/gsl/interp/tmpl/spline_integ.c +56 -0
  144. data/ext/numo/gsl/interp/type_def.rb +9 -0
  145. data/ext/numo/gsl/mkmf_gsl.rb +33 -0
  146. data/ext/numo/gsl/multifit/depend +17 -0
  147. data/ext/numo/gsl/multifit/erbpp_multifit.rb +99 -0
  148. data/ext/numo/gsl/multifit/extconf.rb +9 -0
  149. data/ext/numo/gsl/multifit/func_2.1.rb +1035 -0
  150. data/ext/numo/gsl/multifit/func_2.2.1.rb +736 -0
  151. data/ext/numo/gsl/multifit/func_2.2.rb +736 -0
  152. data/ext/numo/gsl/multifit/func_2.3.rb +872 -0
  153. data/ext/numo/gsl/multifit/func_2.4.rb +859 -0
  154. data/ext/numo/gsl/multifit/func_2.5.rb +859 -0
  155. data/ext/numo/gsl/multifit/func_2.6.rb +859 -0
  156. data/ext/numo/gsl/multifit/func_def.rb +1012 -0
  157. data/ext/numo/gsl/multifit/tmpl/multifit_linear.c +66 -0
  158. data/ext/numo/gsl/multifit/tmpl/multifit_linear_est.c +48 -0
  159. data/ext/numo/gsl/multifit/tmpl/multifit_linear_residuals.c +47 -0
  160. data/ext/numo/gsl/multifit/tmpl/multifit_wlinear.c +70 -0
  161. data/ext/numo/gsl/multifit/type_def.rb +1 -0
  162. data/ext/numo/gsl/multilarge/func_2.4.rb +216 -0
  163. data/ext/numo/gsl/multilarge/func_2.5.rb +216 -0
  164. data/ext/numo/gsl/multilarge/func_2.6.rb +216 -0
  165. data/ext/numo/gsl/multilarge/func_def.rb +215 -0
  166. data/ext/numo/gsl/numo_gsl.h +117 -0
  167. data/ext/numo/gsl/pdf/depend +17 -0
  168. data/ext/numo/gsl/pdf/erbpp_pdf.rb +27 -0
  169. data/ext/numo/gsl/pdf/extconf.rb +9 -0
  170. data/ext/numo/gsl/pdf/func_2.2.1.rb +306 -0
  171. data/ext/numo/gsl/pdf/func_2.2.rb +306 -0
  172. data/ext/numo/gsl/pdf/func_2.3.rb +306 -0
  173. data/ext/numo/gsl/pdf/func_2.4.rb +303 -0
  174. data/ext/numo/gsl/pdf/func_2.5.rb +333 -0
  175. data/ext/numo/gsl/pdf/func_2.6.rb +333 -0
  176. data/ext/numo/gsl/pdf/func_def.rb +282 -0
  177. data/ext/numo/gsl/pdf/parse_pdf.rb +42 -0
  178. data/ext/numo/gsl/pdf/tmpl/dirichlet.c +39 -0
  179. data/ext/numo/gsl/pdf/tmpl/multinomial.c +39 -0
  180. data/ext/numo/gsl/poly/depend +17 -0
  181. data/ext/numo/gsl/poly/erbpp_poly.rb +70 -0
  182. data/ext/numo/gsl/poly/extconf.rb +9 -0
  183. data/ext/numo/gsl/poly/func_2.4.rb +220 -0
  184. data/ext/numo/gsl/poly/func_2.5.rb +220 -0
  185. data/ext/numo/gsl/poly/func_2.6.rb +220 -0
  186. data/ext/numo/gsl/poly/func_def.rb +234 -0
  187. data/ext/numo/gsl/poly/tmpl/poly_complex_solve.c +59 -0
  188. data/ext/numo/gsl/poly/tmpl/poly_eval.c +70 -0
  189. data/ext/numo/gsl/poly/tmpl/poly_eval_derivs.c +40 -0
  190. data/ext/numo/gsl/ran/depend +17 -0
  191. data/ext/numo/gsl/ran/erbpp_ran.rb +43 -0
  192. data/ext/numo/gsl/ran/extconf.rb +9 -0
  193. data/ext/numo/gsl/ran/func_2.2.1.rb +1658 -0
  194. data/ext/numo/gsl/ran/func_2.2.rb +1658 -0
  195. data/ext/numo/gsl/ran/func_2.3.rb +1658 -0
  196. data/ext/numo/gsl/ran/func_2.4.rb +1526 -0
  197. data/ext/numo/gsl/ran/func_2.5.rb +1573 -0
  198. data/ext/numo/gsl/ran/func_2.6.rb +1573 -0
  199. data/ext/numo/gsl/ran/func_def.rb +1594 -0
  200. data/ext/numo/gsl/ran/parse_ran.rb +10 -0
  201. data/ext/numo/gsl/rng/depend +17 -0
  202. data/ext/numo/gsl/rng/erbpp_rng.rb +59 -0
  203. data/ext/numo/gsl/rng/extconf.rb +9 -0
  204. data/ext/numo/gsl/rng/func_2.4.rb +187 -0
  205. data/ext/numo/gsl/rng/func_2.5.rb +187 -0
  206. data/ext/numo/gsl/rng/func_2.6.rb +187 -0
  207. data/ext/numo/gsl/rng/func_def.rb +230 -0
  208. data/ext/numo/gsl/rng/parse_rng.rb +126 -0
  209. data/ext/numo/gsl/rng/tmpl/ran.c +44 -0
  210. data/ext/numo/gsl/rng/tmpl/ran_DFloat_f_DFloat.c +28 -0
  211. data/ext/numo/gsl/rng/tmpl/ran_DFloat_x2.c +45 -0
  212. data/ext/numo/gsl/rng/tmpl/ran_DFloat_x3.c +51 -0
  213. data/ext/numo/gsl/rng/tmpl/ran_multinomial.c +32 -0
  214. data/ext/numo/gsl/rng/tmpl/rng_DFloat.c +29 -0
  215. data/ext/numo/gsl/rng/tmpl/rng_UInt.c +44 -0
  216. data/ext/numo/gsl/rng/tmpl/rng_alloc.c +24 -0
  217. data/ext/numo/gsl/rng/tmpl/rng_type_new.c +14 -0
  218. data/ext/numo/gsl/rng/type_def.rb +63 -0
  219. data/ext/numo/gsl/rstat/depend +17 -0
  220. data/ext/numo/gsl/rstat/erbpp_rstat.rb +64 -0
  221. data/ext/numo/gsl/rstat/extconf.rb +9 -0
  222. data/ext/numo/gsl/rstat/func_2.2.1.rb +116 -0
  223. data/ext/numo/gsl/rstat/func_2.2.rb +116 -0
  224. data/ext/numo/gsl/rstat/func_2.3.rb +123 -0
  225. data/ext/numo/gsl/rstat/func_2.4.rb +122 -0
  226. data/ext/numo/gsl/rstat/func_2.5.rb +122 -0
  227. data/ext/numo/gsl/rstat/func_2.6.rb +122 -0
  228. data/ext/numo/gsl/rstat/func_def.rb +102 -0
  229. data/ext/numo/gsl/sf/depend +17 -0
  230. data/ext/numo/gsl/sf/erbpp_sf.rb +51 -0
  231. data/ext/numo/gsl/sf/extconf.rb +9 -0
  232. data/ext/numo/gsl/sf/func_2.4.rb +4482 -0
  233. data/ext/numo/gsl/sf/func_2.5.rb +4508 -0
  234. data/ext/numo/gsl/sf/func_2.6.rb +4538 -0
  235. data/ext/numo/gsl/sf/func_def.rb +4703 -0
  236. data/ext/numo/gsl/sf/parse_sf.rb +277 -0
  237. data/ext/numo/gsl/sf/tmpl/c_DFloat_f_int_x2_DFloat.c +50 -0
  238. data/ext/numo/gsl/sf/tmpl/c_DFloat_f_int_x2_DFloat_x2.c +52 -0
  239. data/ext/numo/gsl/sf/tmpl/c_DFloat_f_int_x3_DFloat_x2.c +55 -0
  240. data/ext/numo/gsl/sf/tmpl/m_DFloat_f_DFloat_mode.c +47 -0
  241. data/ext/numo/gsl/sf/tmpl/m_DFloat_f_lmax_array.c +41 -0
  242. data/ext/numo/gsl/sf/tmpl/m_DFloat_f_nmin_nmax_array.c +49 -0
  243. data/ext/numo/gsl/spmatrix/const_2.2.1.rb +3 -0
  244. data/ext/numo/gsl/spmatrix/const_2.2.rb +3 -0
  245. data/ext/numo/gsl/spmatrix/const_2.3.rb +3 -0
  246. data/ext/numo/gsl/spmatrix/const_def.rb +2 -0
  247. data/ext/numo/gsl/spmatrix/depend +17 -0
  248. data/ext/numo/gsl/spmatrix/erbpp_spmatrix.rb +101 -0
  249. data/ext/numo/gsl/spmatrix/extconf.rb +9 -0
  250. data/ext/numo/gsl/spmatrix/func_2.2.1.rb +297 -0
  251. data/ext/numo/gsl/spmatrix/func_2.2.rb +297 -0
  252. data/ext/numo/gsl/spmatrix/func_2.3.rb +297 -0
  253. data/ext/numo/gsl/spmatrix/func_2.4.rb +300 -0
  254. data/ext/numo/gsl/spmatrix/func_2.5.rb +300 -0
  255. data/ext/numo/gsl/spmatrix/func_2.6.rb +372 -0
  256. data/ext/numo/gsl/spmatrix/func_def.rb +218 -0
  257. data/ext/numo/gsl/spmatrix/parse_spmatrix.rb +70 -0
  258. data/ext/numo/gsl/spmatrix/tmpl/itersolve_iterate.c +47 -0
  259. data/ext/numo/gsl/spmatrix/tmpl/itersolve_new.c +22 -0
  260. data/ext/numo/gsl/spmatrix/tmpl/itersolve_type_new.c +16 -0
  261. data/ext/numo/gsl/spmatrix/tmpl/spblas_dgemm.c +35 -0
  262. data/ext/numo/gsl/spmatrix/tmpl/spblas_dgemv.c +43 -0
  263. data/ext/numo/gsl/spmatrix/tmpl/spmatrix_add.c +22 -0
  264. data/ext/numo/gsl/spmatrix/tmpl/spmatrix_d2sp.c +28 -0
  265. data/ext/numo/gsl/spmatrix/tmpl/spmatrix_new.c +40 -0
  266. data/ext/numo/gsl/spmatrix/tmpl/spmatrix_sp2d.c +25 -0
  267. data/ext/numo/gsl/spmatrix/type_def.rb +1 -0
  268. data/ext/numo/gsl/stats/depend +17 -0
  269. data/ext/numo/gsl/stats/erbpp_stats.rb +30 -0
  270. data/ext/numo/gsl/stats/extconf.rb +9 -0
  271. data/ext/numo/gsl/stats/func_2.2.1.rb +608 -0
  272. data/ext/numo/gsl/stats/func_2.2.rb +608 -0
  273. data/ext/numo/gsl/stats/func_2.3.rb +608 -0
  274. data/ext/numo/gsl/stats/func_2.4.rb +583 -0
  275. data/ext/numo/gsl/stats/func_2.5.rb +718 -0
  276. data/ext/numo/gsl/stats/func_2.6.rb +718 -0
  277. data/ext/numo/gsl/stats/func_def.rb +608 -0
  278. data/ext/numo/gsl/stats/parse_stats.rb +63 -0
  279. data/ext/numo/gsl/stats/tmpl/stats_1a0p.c +37 -0
  280. data/ext/numo/gsl/stats/tmpl/stats_1a0p_index.c +60 -0
  281. data/ext/numo/gsl/stats/tmpl/stats_1a1p.c +41 -0
  282. data/ext/numo/gsl/stats/tmpl/stats_1a2p.c +42 -0
  283. data/ext/numo/gsl/stats/tmpl/stats_2a0p.c +39 -0
  284. data/ext/numo/gsl/stats/tmpl/stats_2a1p.c +43 -0
  285. data/ext/numo/gsl/stats/tmpl/stats_2a2p.c +44 -0
  286. data/ext/numo/gsl/stats/tmpl/stats_minmax.c +37 -0
  287. data/ext/numo/gsl/stats/tmpl/stats_minmax_index.c +67 -0
  288. data/ext/numo/gsl/stats/tmpl/stats_spearman.c +46 -0
  289. data/ext/numo/gsl/sys/const_2.4.rb +20 -0
  290. data/ext/numo/gsl/sys/const_2.5.rb +20 -0
  291. data/ext/numo/gsl/sys/const_2.6.rb +20 -0
  292. data/ext/numo/gsl/sys/const_def.rb +21 -0
  293. data/ext/numo/gsl/sys/depend +17 -0
  294. data/ext/numo/gsl/sys/enum_def.rb +75 -0
  295. data/ext/numo/gsl/sys/erbpp_sys.rb +60 -0
  296. data/ext/numo/gsl/sys/extconf.rb +9 -0
  297. data/ext/numo/gsl/sys/func_2.4.rb +236 -0
  298. data/ext/numo/gsl/sys/func_2.5.rb +236 -0
  299. data/ext/numo/gsl/sys/func_2.6.rb +236 -0
  300. data/ext/numo/gsl/sys/func_def.rb +249 -0
  301. data/ext/numo/gsl/version.h +1 -0
  302. data/ext/numo/gsl/wavelet/depend +17 -0
  303. data/ext/numo/gsl/wavelet/erbpp_wavelet.rb +48 -0
  304. data/ext/numo/gsl/wavelet/extconf.rb +9 -0
  305. data/ext/numo/gsl/wavelet/func_2.4.rb +304 -0
  306. data/ext/numo/gsl/wavelet/func_2.5.rb +304 -0
  307. data/ext/numo/gsl/wavelet/func_2.6.rb +304 -0
  308. data/ext/numo/gsl/wavelet/func_def.rb +337 -0
  309. data/ext/numo/gsl/wavelet/parse_wavelet.rb +47 -0
  310. data/ext/numo/gsl/wavelet/tmpl/wavelet2d_transform.c +56 -0
  311. data/ext/numo/gsl/wavelet/tmpl/wavelet_array_check.c +56 -0
  312. data/ext/numo/gsl/wavelet/tmpl/wavelet_macro.c +1 -0
  313. data/ext/numo/gsl/wavelet/tmpl/wavelet_new.c +20 -0
  314. data/ext/numo/gsl/wavelet/tmpl/wavelet_transform.c +55 -0
  315. data/ext/numo/gsl/wavelet/tmpl/wavelet_transform2.c +22 -0
  316. data/ext/numo/gsl/wavelet/tmpl/wavelet_type_new.c +15 -0
  317. data/ext/numo/gsl/wavelet/type_def.rb +6 -0
  318. data/lib/numo/gsl.rb +17 -0
  319. data/numo-gsl-alt.gemspec +33 -0
  320. metadata +406 -0
@@ -0,0 +1,4482 @@
1
+ [{:func_name=>"gsl_sf_Chi",
2
+ :func_type=>"double",
3
+ :args=>[["double", "x"]],
4
+ :desc=>
5
+ "These routines compute the integral\n" +
6
+ ".. only:: not texinfo\n" +
7
+ ".. only:: texinfo\n" +
8
+ "where \\gamma_E is the Euler constant (available as the macro M_EULER).\n" +
9
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
10
+ {:func_name=>"gsl_sf_Chi_e",
11
+ :func_type=>"int",
12
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
13
+ :desc=>
14
+ "These routines compute the integral\n" +
15
+ ".. only:: not texinfo\n" +
16
+ ".. only:: texinfo\n" +
17
+ "where \\gamma_E is the Euler constant (available as the macro M_EULER).\n" +
18
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
19
+ {:func_name=>"gsl_sf_Ci",
20
+ :func_type=>"double",
21
+ :args=>[["const double", "x"]],
22
+ :desc=>
23
+ "These routines compute the Cosine integral\n" +
24
+ ".. only:: not texinfo\n" +
25
+ ".. only:: texinfo\n" +
26
+ "for x > 0\n" +
27
+ "Exceptional Return Values: GSL_EDOM"},
28
+ {:func_name=>"gsl_sf_Ci_e",
29
+ :func_type=>"int",
30
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
31
+ :desc=>
32
+ "These routines compute the Cosine integral\n" +
33
+ ".. only:: not texinfo\n" +
34
+ ".. only:: texinfo\n" +
35
+ "for x > 0\n" +
36
+ "Exceptional Return Values: GSL_EDOM"},
37
+ {:func_name=>"gsl_sf_Shi",
38
+ :func_type=>"double",
39
+ :args=>[["double", "x"]],
40
+ :desc=>
41
+ "These routines compute the integral\n" +
42
+ ".. only:: not texinfo\n" +
43
+ ".. only:: texinfo\n" +
44
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
45
+ {:func_name=>"gsl_sf_Shi_e",
46
+ :func_type=>"int",
47
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
48
+ :desc=>
49
+ "These routines compute the integral\n" +
50
+ ".. only:: not texinfo\n" +
51
+ ".. only:: texinfo\n" +
52
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
53
+ {:func_name=>"gsl_sf_Si",
54
+ :func_type=>"double",
55
+ :args=>[["const double", "x"]],
56
+ :desc=>
57
+ "These routines compute the Sine integral\n" +
58
+ ".. only:: not texinfo\n" +
59
+ ".. only:: texinfo\n" +
60
+ "Exceptional Return Values: none"},
61
+ {:func_name=>"gsl_sf_Si_e",
62
+ :func_type=>"int",
63
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
64
+ :desc=>
65
+ "These routines compute the Sine integral\n" +
66
+ ".. only:: not texinfo\n" +
67
+ ".. only:: texinfo\n" +
68
+ "Exceptional Return Values: none"},
69
+ {:func_name=>"gsl_sf_airy_Ai",
70
+ :func_type=>"double",
71
+ :args=>[["double", "x"], ["gsl_mode_t", "mode"]],
72
+ :desc=>
73
+ "These routines compute the Airy function Ai(x) with an accuracy\n" +
74
+ "specified by mode."},
75
+ {:func_name=>"gsl_sf_airy_Ai_deriv",
76
+ :func_type=>"double",
77
+ :args=>[["double", "x"], ["gsl_mode_t", "mode"]],
78
+ :desc=>
79
+ "These routines compute the Airy function derivative Ai'(x) with\n" +
80
+ "an accuracy specified by mode."},
81
+ {:func_name=>"gsl_sf_airy_Ai_deriv_e",
82
+ :func_type=>"int",
83
+ :args=>
84
+ [["double", "x"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
85
+ :desc=>
86
+ "These routines compute the Airy function derivative Ai'(x) with\n" +
87
+ "an accuracy specified by mode."},
88
+ {:func_name=>"gsl_sf_airy_Ai_deriv_scaled",
89
+ :func_type=>"double",
90
+ :args=>[["double", "x"], ["gsl_mode_t", "mode"]],
91
+ :desc=>
92
+ "These routines compute the scaled Airy function derivative \n" +
93
+ "S_A(x) Ai'(x). \n" +
94
+ "For x > 0 the scaling factor S_A(x) is\n" +
95
+ "\\exp(+(2/3) x^{3/2}), and is 1 for x < 0."},
96
+ {:func_name=>"gsl_sf_airy_Ai_deriv_scaled_e",
97
+ :func_type=>"int",
98
+ :args=>
99
+ [["double", "x"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
100
+ :desc=>
101
+ "These routines compute the scaled Airy function derivative \n" +
102
+ "S_A(x) Ai'(x). \n" +
103
+ "For x > 0 the scaling factor S_A(x) is\n" +
104
+ "\\exp(+(2/3) x^{3/2}), and is 1 for x < 0."},
105
+ {:func_name=>"gsl_sf_airy_Ai_e",
106
+ :func_type=>"int",
107
+ :args=>
108
+ [["double", "x"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
109
+ :desc=>
110
+ "These routines compute the Airy function Ai(x) with an accuracy\n" +
111
+ "specified by mode."},
112
+ {:func_name=>"gsl_sf_airy_Ai_scaled",
113
+ :func_type=>"double",
114
+ :args=>[["double", "x"], ["gsl_mode_t", "mode"]],
115
+ :desc=>
116
+ "These routines compute a scaled version of the Airy function\n" +
117
+ "S_A(x) Ai(x). For x > 0 the scaling factor S_A(x) is\n" +
118
+ "\\exp(+(2/3) x^{3/2}), \n" +
119
+ "and is 1 for x < 0."},
120
+ {:func_name=>"gsl_sf_airy_Ai_scaled_e",
121
+ :func_type=>"int",
122
+ :args=>
123
+ [["double", "x"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
124
+ :desc=>
125
+ "These routines compute a scaled version of the Airy function\n" +
126
+ "S_A(x) Ai(x). For x > 0 the scaling factor S_A(x) is\n" +
127
+ "\\exp(+(2/3) x^{3/2}), \n" +
128
+ "and is 1 for x < 0."},
129
+ {:func_name=>"gsl_sf_airy_Bi",
130
+ :func_type=>"double",
131
+ :args=>[["double", "x"], ["gsl_mode_t", "mode"]],
132
+ :desc=>
133
+ "These routines compute the Airy function Bi(x) with an accuracy\n" +
134
+ "specified by mode."},
135
+ {:func_name=>"gsl_sf_airy_Bi_deriv",
136
+ :func_type=>"double",
137
+ :args=>[["double", "x"], ["gsl_mode_t", "mode"]],
138
+ :desc=>
139
+ "These routines compute the Airy function derivative Bi'(x) with\n" +
140
+ "an accuracy specified by mode."},
141
+ {:func_name=>"gsl_sf_airy_Bi_deriv_e",
142
+ :func_type=>"int",
143
+ :args=>
144
+ [["double", "x"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
145
+ :desc=>
146
+ "These routines compute the Airy function derivative Bi'(x) with\n" +
147
+ "an accuracy specified by mode."},
148
+ {:func_name=>"gsl_sf_airy_Bi_deriv_scaled",
149
+ :func_type=>"double",
150
+ :args=>[["double", "x"], ["gsl_mode_t", "mode"]],
151
+ :desc=>
152
+ "These routines compute the scaled Airy function derivative \n" +
153
+ "S_B(x) Bi'(x).\n" +
154
+ "For x > 0 the scaling factor S_B(x) is\n" +
155
+ "exp(-(2/3) x^{3/2}), and is 1 for x < 0."},
156
+ {:func_name=>"gsl_sf_airy_Bi_deriv_scaled_e",
157
+ :func_type=>"int",
158
+ :args=>
159
+ [["double", "x"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
160
+ :desc=>
161
+ "These routines compute the scaled Airy function derivative \n" +
162
+ "S_B(x) Bi'(x).\n" +
163
+ "For x > 0 the scaling factor S_B(x) is\n" +
164
+ "exp(-(2/3) x^{3/2}), and is 1 for x < 0."},
165
+ {:func_name=>"gsl_sf_airy_Bi_e",
166
+ :func_type=>"int",
167
+ :args=>
168
+ [["double", "x"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
169
+ :desc=>
170
+ "These routines compute the Airy function Bi(x) with an accuracy\n" +
171
+ "specified by mode."},
172
+ {:func_name=>"gsl_sf_airy_Bi_scaled",
173
+ :func_type=>"double",
174
+ :args=>[["double", "x"], ["gsl_mode_t", "mode"]],
175
+ :desc=>
176
+ "These routines compute a scaled version of the Airy function\n" +
177
+ "S_B(x) Bi(x). For x > 0 the scaling factor S_B(x) is\n" +
178
+ "exp(-(2/3) x^{3/2}), and is 1 for x < 0."},
179
+ {:func_name=>"gsl_sf_airy_Bi_scaled_e",
180
+ :func_type=>"int",
181
+ :args=>
182
+ [["double", "x"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
183
+ :desc=>
184
+ "These routines compute a scaled version of the Airy function\n" +
185
+ "S_B(x) Bi(x). For x > 0 the scaling factor S_B(x) is\n" +
186
+ "exp(-(2/3) x^{3/2}), and is 1 for x < 0."},
187
+ {:func_name=>"gsl_sf_airy_zero_Ai",
188
+ :func_type=>"double",
189
+ :args=>[["unsigned int", "s"]],
190
+ :desc=>
191
+ "These routines compute the location of the s-th zero of the Airy\n" +
192
+ "function Ai(x)."},
193
+ {:func_name=>"gsl_sf_airy_zero_Ai_deriv",
194
+ :func_type=>"double",
195
+ :args=>[["unsigned int", "s"]],
196
+ :desc=>
197
+ "These routines compute the location of the s-th zero of the Airy\n" +
198
+ "function derivative Ai'(x)."},
199
+ {:func_name=>"gsl_sf_airy_zero_Ai_deriv_e",
200
+ :func_type=>"int",
201
+ :args=>[["unsigned int", "s"], ["gsl_sf_result *", "result"]],
202
+ :desc=>
203
+ "These routines compute the location of the s-th zero of the Airy\n" +
204
+ "function derivative Ai'(x)."},
205
+ {:func_name=>"gsl_sf_airy_zero_Ai_e",
206
+ :func_type=>"int",
207
+ :args=>[["unsigned int", "s"], ["gsl_sf_result *", "result"]],
208
+ :desc=>
209
+ "These routines compute the location of the s-th zero of the Airy\n" +
210
+ "function Ai(x)."},
211
+ {:func_name=>"gsl_sf_airy_zero_Bi",
212
+ :func_type=>"double",
213
+ :args=>[["unsigned int", "s"]],
214
+ :desc=>
215
+ "These routines compute the location of the s-th zero of the Airy\n" +
216
+ "function Bi(x)."},
217
+ {:func_name=>"gsl_sf_airy_zero_Bi_deriv",
218
+ :func_type=>"double",
219
+ :args=>[["unsigned int", "s"]],
220
+ :desc=>
221
+ "These routines compute the location of the s-th zero of the Airy\n" +
222
+ "function derivative Bi'(x)."},
223
+ {:func_name=>"gsl_sf_airy_zero_Bi_deriv_e",
224
+ :func_type=>"int",
225
+ :args=>[["unsigned int", "s"], ["gsl_sf_result *", "result"]],
226
+ :desc=>
227
+ "These routines compute the location of the s-th zero of the Airy\n" +
228
+ "function derivative Bi'(x)."},
229
+ {:func_name=>"gsl_sf_airy_zero_Bi_e",
230
+ :func_type=>"int",
231
+ :args=>[["unsigned int", "s"], ["gsl_sf_result *", "result"]],
232
+ :desc=>
233
+ "These routines compute the location of the s-th zero of the Airy\n" +
234
+ "function Bi(x)."},
235
+ {:func_name=>"gsl_sf_angle_restrict_pos",
236
+ :func_type=>"double",
237
+ :args=>[["double", "theta"]],
238
+ :desc=>
239
+ "These routines force the angle theta to lie in the range [0, 2\\pi).\n" +
240
+ "Note that the mathematical value of 2\\pi is slightly greater\n" +
241
+ "than 2*M_PI, so the machine number 2*M_PI is included in\n" +
242
+ "the range.\n" +
243
+ "Exceptional Return Values: GSL_ELOSS"},
244
+ {:func_name=>"gsl_sf_angle_restrict_pos_e",
245
+ :func_type=>"int",
246
+ :args=>[["double *", "theta"]],
247
+ :desc=>
248
+ "These routines force the angle theta to lie in the range [0, 2\\pi).\n" +
249
+ "Note that the mathematical value of 2\\pi is slightly greater\n" +
250
+ "than 2*M_PI, so the machine number 2*M_PI is included in\n" +
251
+ "the range.\n" +
252
+ "Exceptional Return Values: GSL_ELOSS"},
253
+ {:func_name=>"gsl_sf_angle_restrict_symm",
254
+ :func_type=>"double",
255
+ :args=>[["double", "theta"]],
256
+ :desc=>
257
+ "These routines force the angle theta to lie in the range\n" +
258
+ "(-\\pi,\\pi]. \n" +
259
+ "Note that the mathematical value of \\pi is slightly greater\n" +
260
+ "than M_PI, so the machine numbers M_PI and -M_PI\n" +
261
+ "are included in the range.\n" +
262
+ "Exceptional Return Values: GSL_ELOSS"},
263
+ {:func_name=>"gsl_sf_angle_restrict_symm_e",
264
+ :func_type=>"int",
265
+ :args=>[["double *", "theta"]],
266
+ :desc=>
267
+ "These routines force the angle theta to lie in the range\n" +
268
+ "(-\\pi,\\pi]. \n" +
269
+ "Note that the mathematical value of \\pi is slightly greater\n" +
270
+ "than M_PI, so the machine numbers M_PI and -M_PI\n" +
271
+ "are included in the range.\n" +
272
+ "Exceptional Return Values: GSL_ELOSS"},
273
+ {:func_name=>"gsl_sf_atanint",
274
+ :func_type=>"double",
275
+ :args=>[["double", "x"]],
276
+ :desc=>
277
+ "These routines compute the Arctangent integral, which is defined as\n" +
278
+ ".. only:: not texinfo\n" +
279
+ ".. only:: texinfo\n" +
280
+ "Exceptional Return Values: "},
281
+ {:func_name=>"gsl_sf_atanint_e",
282
+ :func_type=>"int",
283
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
284
+ :desc=>
285
+ "These routines compute the Arctangent integral, which is defined as\n" +
286
+ ".. only:: not texinfo\n" +
287
+ ".. only:: texinfo\n" +
288
+ "Exceptional Return Values: "},
289
+ {:func_name=>"gsl_sf_bessel_I0",
290
+ :func_type=>"double",
291
+ :args=>[["double", "x"]],
292
+ :desc=>
293
+ "These routines compute the regular modified cylindrical Bessel function\n" +
294
+ "of zeroth order, I_0(x).\n" +
295
+ "Exceptional Return Values: GSL_EOVRFLW"},
296
+ {:func_name=>"gsl_sf_bessel_I0_e",
297
+ :func_type=>"int",
298
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
299
+ :desc=>
300
+ "These routines compute the regular modified cylindrical Bessel function\n" +
301
+ "of zeroth order, I_0(x).\n" +
302
+ "Exceptional Return Values: GSL_EOVRFLW"},
303
+ {:func_name=>"gsl_sf_bessel_I0_scaled",
304
+ :func_type=>"double",
305
+ :args=>[["double", "x"]],
306
+ :desc=>
307
+ "These routines compute the scaled regular modified cylindrical Bessel\n" +
308
+ "function of zeroth order \\exp(-|x|) I_0(x).\n" +
309
+ "Exceptional Return Values: none"},
310
+ {:func_name=>"gsl_sf_bessel_I0_scaled_e",
311
+ :func_type=>"int",
312
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
313
+ :desc=>
314
+ "These routines compute the scaled regular modified cylindrical Bessel\n" +
315
+ "function of zeroth order \\exp(-|x|) I_0(x).\n" +
316
+ "Exceptional Return Values: none"},
317
+ {:func_name=>"gsl_sf_bessel_I1",
318
+ :func_type=>"double",
319
+ :args=>[["double", "x"]],
320
+ :desc=>
321
+ "These routines compute the regular modified cylindrical Bessel function\n" +
322
+ "of first order, I_1(x).\n" +
323
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
324
+ {:func_name=>"gsl_sf_bessel_I1_e",
325
+ :func_type=>"int",
326
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
327
+ :desc=>
328
+ "These routines compute the regular modified cylindrical Bessel function\n" +
329
+ "of first order, I_1(x).\n" +
330
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
331
+ {:func_name=>"gsl_sf_bessel_I1_scaled",
332
+ :func_type=>"double",
333
+ :args=>[["double", "x"]],
334
+ :desc=>
335
+ "These routines compute the scaled regular modified cylindrical Bessel\n" +
336
+ "function of first order \\exp(-|x|) I_1(x).\n" +
337
+ "Exceptional Return Values: GSL_EUNDRFLW"},
338
+ {:func_name=>"gsl_sf_bessel_I1_scaled_e",
339
+ :func_type=>"int",
340
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
341
+ :desc=>
342
+ "These routines compute the scaled regular modified cylindrical Bessel\n" +
343
+ "function of first order \\exp(-|x|) I_1(x).\n" +
344
+ "Exceptional Return Values: GSL_EUNDRFLW"},
345
+ {:func_name=>"gsl_sf_bessel_In",
346
+ :func_type=>"double",
347
+ :args=>[["int", "n"], ["double", "x"]],
348
+ :desc=>
349
+ "These routines compute the regular modified cylindrical Bessel function\n" +
350
+ "of order n, I_n(x).\n" +
351
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
352
+ {:func_name=>"gsl_sf_bessel_In_array",
353
+ :func_type=>"int",
354
+ :args=>
355
+ [["int", "nmin"],
356
+ ["int", "nmax"],
357
+ ["double", "x"],
358
+ ["double", "result_array[]"]],
359
+ :desc=>
360
+ "This routine computes the values of the regular modified cylindrical\n" +
361
+ "Bessel functions I_n(x) for n from nmin to\n" +
362
+ "nmax inclusive, storing the results in the array\n" +
363
+ "result_array. The start of the range nmin must be positive\n" +
364
+ "or zero. The values are computed using recurrence relations for\n" +
365
+ "efficiency, and therefore may differ slightly from the exact values.\n" +
366
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
367
+ {:func_name=>"gsl_sf_bessel_In_e",
368
+ :func_type=>"int",
369
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
370
+ :desc=>
371
+ "These routines compute the regular modified cylindrical Bessel function\n" +
372
+ "of order n, I_n(x).\n" +
373
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
374
+ {:func_name=>"gsl_sf_bessel_In_scaled",
375
+ :func_type=>"double",
376
+ :args=>[["int", "n"], ["double", "x"]],
377
+ :desc=>
378
+ "These routines compute the scaled regular modified cylindrical Bessel\n" +
379
+ "function of order n, \\exp(-|x|) I_n(x) \n" +
380
+ "Exceptional Return Values: GSL_EUNDRFLW"},
381
+ {:func_name=>"gsl_sf_bessel_In_scaled_array",
382
+ :func_type=>"int",
383
+ :args=>
384
+ [["int", "nmin"],
385
+ ["int", "nmax"],
386
+ ["double", "x"],
387
+ ["double", "result_array[]"]],
388
+ :desc=>
389
+ "This routine computes the values of the scaled regular cylindrical\n" +
390
+ "Bessel functions \\exp(-|x|) I_n(x) for n from\n" +
391
+ "nmin to nmax inclusive, storing the results in the array\n" +
392
+ "result_array. The start of the range nmin must be positive\n" +
393
+ "or zero. The values are computed using recurrence relations for\n" +
394
+ "efficiency, and therefore may differ slightly from the exact values.\n" +
395
+ "Exceptional Return Values: GSL_EUNDRFLW"},
396
+ {:func_name=>"gsl_sf_bessel_In_scaled_e",
397
+ :func_type=>"int",
398
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
399
+ :desc=>
400
+ "These routines compute the scaled regular modified cylindrical Bessel\n" +
401
+ "function of order n, \\exp(-|x|) I_n(x) \n" +
402
+ "Exceptional Return Values: GSL_EUNDRFLW"},
403
+ {:func_name=>"gsl_sf_bessel_Inu",
404
+ :func_type=>"double",
405
+ :args=>[["double", "nu"], ["double", "x"]],
406
+ :desc=>
407
+ "These routines compute the regular modified Bessel function of\n" +
408
+ "fractional order \\nu, I_\\nu(x) for x>0,\n" +
409
+ "\\nu>0.\n" +
410
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
411
+ {:func_name=>"gsl_sf_bessel_Inu_e",
412
+ :func_type=>"int",
413
+ :args=>[["double", "nu"], ["double", "x"], ["gsl_sf_result *", "result"]],
414
+ :desc=>
415
+ "These routines compute the regular modified Bessel function of\n" +
416
+ "fractional order \\nu, I_\\nu(x) for x>0,\n" +
417
+ "\\nu>0.\n" +
418
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
419
+ {:func_name=>"gsl_sf_bessel_Inu_scaled",
420
+ :func_type=>"double",
421
+ :args=>[["double", "nu"], ["double", "x"]],
422
+ :desc=>
423
+ "These routines compute the scaled regular modified Bessel function of\n" +
424
+ "fractional order \\nu, \\exp(-|x|)I_\\nu(x) for x>0,\n" +
425
+ "\\nu>0.\n" +
426
+ "Exceptional Return Values: GSL_EDOM"},
427
+ {:func_name=>"gsl_sf_bessel_Inu_scaled_e",
428
+ :func_type=>"int",
429
+ :args=>[["double", "nu"], ["double", "x"], ["gsl_sf_result *", "result"]],
430
+ :desc=>
431
+ "These routines compute the scaled regular modified Bessel function of\n" +
432
+ "fractional order \\nu, \\exp(-|x|)I_\\nu(x) for x>0,\n" +
433
+ "\\nu>0.\n" +
434
+ "Exceptional Return Values: GSL_EDOM"},
435
+ {:func_name=>"gsl_sf_bessel_J0",
436
+ :func_type=>"double",
437
+ :args=>[["double", "x"]],
438
+ :desc=>
439
+ "These routines compute the regular cylindrical Bessel function of zeroth\n" +
440
+ "order, J_0(x)."},
441
+ {:func_name=>"gsl_sf_bessel_J0_e",
442
+ :func_type=>"int",
443
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
444
+ :desc=>
445
+ "These routines compute the regular cylindrical Bessel function of zeroth\n" +
446
+ "order, J_0(x)."},
447
+ {:func_name=>"gsl_sf_bessel_J1",
448
+ :func_type=>"double",
449
+ :args=>[["double", "x"]],
450
+ :desc=>
451
+ "These routines compute the regular cylindrical Bessel function of first\n" +
452
+ "order, J_1(x)."},
453
+ {:func_name=>"gsl_sf_bessel_J1_e",
454
+ :func_type=>"int",
455
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
456
+ :desc=>
457
+ "These routines compute the regular cylindrical Bessel function of first\n" +
458
+ "order, J_1(x)."},
459
+ {:func_name=>"gsl_sf_bessel_Jn",
460
+ :func_type=>"double",
461
+ :args=>[["int", "n"], ["double", "x"]],
462
+ :desc=>
463
+ "These routines compute the regular cylindrical Bessel function of \n" +
464
+ "order n, J_n(x).\n" +
465
+ "Exceptional Return Values: GSL_EUNDRFLW"},
466
+ {:func_name=>"gsl_sf_bessel_Jn_array",
467
+ :func_type=>"int",
468
+ :args=>
469
+ [["int", "nmin"],
470
+ ["int", "nmax"],
471
+ ["double", "x"],
472
+ ["double", "result_array[]"]],
473
+ :desc=>
474
+ "This routine computes the values of the regular cylindrical Bessel\n" +
475
+ "functions J_n(x) for n from nmin to nmax\n" +
476
+ "inclusive, storing the results in the array result_array. The\n" +
477
+ "values are computed using recurrence relations for efficiency, and\n" +
478
+ "therefore may differ slightly from the exact values.\n" +
479
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
480
+ {:func_name=>"gsl_sf_bessel_Jn_e",
481
+ :func_type=>"int",
482
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
483
+ :desc=>
484
+ "These routines compute the regular cylindrical Bessel function of \n" +
485
+ "order n, J_n(x).\n" +
486
+ "Exceptional Return Values: GSL_EUNDRFLW"},
487
+ {:func_name=>"gsl_sf_bessel_Jnu",
488
+ :func_type=>"double",
489
+ :args=>[["double", "nu"], ["double", "x"]],
490
+ :desc=>
491
+ "These routines compute the regular cylindrical Bessel function of\n" +
492
+ "fractional order \\nu, J_\\nu(x).\n" +
493
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
494
+ {:func_name=>"gsl_sf_bessel_Jnu_e",
495
+ :func_type=>"int",
496
+ :args=>[["double", "nu"], ["double", "x"], ["gsl_sf_result *", "result"]],
497
+ :desc=>
498
+ "These routines compute the regular cylindrical Bessel function of\n" +
499
+ "fractional order \\nu, J_\\nu(x).\n" +
500
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
501
+ {:func_name=>"gsl_sf_bessel_K0",
502
+ :func_type=>"double",
503
+ :args=>[["double", "x"]],
504
+ :desc=>
505
+ "These routines compute the irregular modified cylindrical Bessel\n" +
506
+ "function of zeroth order, K_0(x), for x > 0.\n" +
507
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
508
+ {:func_name=>"gsl_sf_bessel_K0_e",
509
+ :func_type=>"int",
510
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
511
+ :desc=>
512
+ "These routines compute the irregular modified cylindrical Bessel\n" +
513
+ "function of zeroth order, K_0(x), for x > 0.\n" +
514
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
515
+ {:func_name=>"gsl_sf_bessel_K0_scaled",
516
+ :func_type=>"double",
517
+ :args=>[["double", "x"]],
518
+ :desc=>
519
+ "These routines compute the scaled irregular modified cylindrical Bessel\n" +
520
+ "function of zeroth order \\exp(x) K_0(x) for x>0.\n" +
521
+ "Exceptional Return Values: GSL_EDOM"},
522
+ {:func_name=>"gsl_sf_bessel_K0_scaled_e",
523
+ :func_type=>"int",
524
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
525
+ :desc=>
526
+ "These routines compute the scaled irregular modified cylindrical Bessel\n" +
527
+ "function of zeroth order \\exp(x) K_0(x) for x>0.\n" +
528
+ "Exceptional Return Values: GSL_EDOM"},
529
+ {:func_name=>"gsl_sf_bessel_K1",
530
+ :func_type=>"double",
531
+ :args=>[["double", "x"]],
532
+ :desc=>
533
+ "These routines compute the irregular modified cylindrical Bessel\n" +
534
+ "function of first order, K_1(x), for x > 0.\n" +
535
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
536
+ {:func_name=>"gsl_sf_bessel_K1_e",
537
+ :func_type=>"int",
538
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
539
+ :desc=>
540
+ "These routines compute the irregular modified cylindrical Bessel\n" +
541
+ "function of first order, K_1(x), for x > 0.\n" +
542
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
543
+ {:func_name=>"gsl_sf_bessel_K1_scaled",
544
+ :func_type=>"double",
545
+ :args=>[["double", "x"]],
546
+ :desc=>
547
+ "These routines compute the scaled irregular modified cylindrical Bessel\n" +
548
+ "function of first order \\exp(x) K_1(x) for x>0.\n" +
549
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
550
+ {:func_name=>"gsl_sf_bessel_K1_scaled_e",
551
+ :func_type=>"int",
552
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
553
+ :desc=>
554
+ "These routines compute the scaled irregular modified cylindrical Bessel\n" +
555
+ "function of first order \\exp(x) K_1(x) for x>0.\n" +
556
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
557
+ {:func_name=>"gsl_sf_bessel_Kn",
558
+ :func_type=>"double",
559
+ :args=>[["int", "n"], ["double", "x"]],
560
+ :desc=>
561
+ "These routines compute the irregular modified cylindrical Bessel\n" +
562
+ "function of order n, K_n(x), for x > 0.\n" +
563
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
564
+ {:func_name=>"gsl_sf_bessel_Kn_array",
565
+ :func_type=>"int",
566
+ :args=>
567
+ [["int", "nmin"],
568
+ ["int", "nmax"],
569
+ ["double", "x"],
570
+ ["double", "result_array[]"]],
571
+ :desc=>
572
+ "This routine computes the values of the irregular modified cylindrical\n" +
573
+ "Bessel functions K_n(x) for n from nmin to\n" +
574
+ "nmax inclusive, storing the results in the array\n" +
575
+ "result_array. The start of the range nmin must be positive\n" +
576
+ "or zero. The domain of the function is x>0. The values are\n" +
577
+ "computed using recurrence relations for efficiency, and therefore\n" +
578
+ "may differ slightly from the exact values.\n" +
579
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
580
+ {:func_name=>"gsl_sf_bessel_Kn_e",
581
+ :func_type=>"int",
582
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
583
+ :desc=>
584
+ "These routines compute the irregular modified cylindrical Bessel\n" +
585
+ "function of order n, K_n(x), for x > 0.\n" +
586
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
587
+ {:func_name=>"gsl_sf_bessel_Kn_scaled",
588
+ :func_type=>"double",
589
+ :args=>[["int", "n"], ["double", "x"]],
590
+ :desc=>
591
+ "These routines compute the scaled irregular modified cylindrical Bessel\n" +
592
+ "function of order n, \\exp(x) K_n(x), for x>0.\n" +
593
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
594
+ {:func_name=>"gsl_sf_bessel_Kn_scaled_array",
595
+ :func_type=>"int",
596
+ :args=>
597
+ [["int", "nmin"],
598
+ ["int", "nmax"],
599
+ ["double", "x"],
600
+ ["double", "result_array[]"]],
601
+ :desc=>
602
+ "This routine computes the values of the scaled irregular cylindrical\n" +
603
+ "Bessel functions \\exp(x) K_n(x) for n from nmin to\n" +
604
+ "nmax inclusive, storing the results in the array\n" +
605
+ "result_array. The start of the range nmin must be positive\n" +
606
+ "or zero. The domain of the function is x>0. The values are\n" +
607
+ "computed using recurrence relations for efficiency, and therefore\n" +
608
+ "may differ slightly from the exact values.\n" +
609
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
610
+ {:func_name=>"gsl_sf_bessel_Kn_scaled_e",
611
+ :func_type=>"int",
612
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
613
+ :desc=>
614
+ "These routines compute the scaled irregular modified cylindrical Bessel\n" +
615
+ "function of order n, \\exp(x) K_n(x), for x>0.\n" +
616
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
617
+ {:func_name=>"gsl_sf_bessel_Knu",
618
+ :func_type=>"double",
619
+ :args=>[["double", "nu"], ["double", "x"]],
620
+ :desc=>
621
+ "These routines compute the irregular modified Bessel function of\n" +
622
+ "fractional order \\nu, K_\\nu(x) for x>0,\n" +
623
+ "\\nu>0.\n" +
624
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
625
+ {:func_name=>"gsl_sf_bessel_Knu_e",
626
+ :func_type=>"int",
627
+ :args=>[["double", "nu"], ["double", "x"], ["gsl_sf_result *", "result"]],
628
+ :desc=>
629
+ "These routines compute the irregular modified Bessel function of\n" +
630
+ "fractional order \\nu, K_\\nu(x) for x>0,\n" +
631
+ "\\nu>0.\n" +
632
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
633
+ {:func_name=>"gsl_sf_bessel_Knu_scaled",
634
+ :func_type=>"double",
635
+ :args=>[["double", "nu"], ["double", "x"]],
636
+ :desc=>
637
+ "These routines compute the scaled irregular modified Bessel function of\n" +
638
+ "fractional order \\nu, \\exp(+|x|) K_\\nu(x) for x>0,\n" +
639
+ "\\nu>0.\n" +
640
+ "Exceptional Return Values: GSL_EDOM"},
641
+ {:func_name=>"gsl_sf_bessel_Knu_scaled_e",
642
+ :func_type=>"int",
643
+ :args=>[["double", "nu"], ["double", "x"], ["gsl_sf_result *", "result"]],
644
+ :desc=>
645
+ "These routines compute the scaled irregular modified Bessel function of\n" +
646
+ "fractional order \\nu, \\exp(+|x|) K_\\nu(x) for x>0,\n" +
647
+ "\\nu>0.\n" +
648
+ "Exceptional Return Values: GSL_EDOM"},
649
+ {:func_name=>"gsl_sf_bessel_Y0",
650
+ :func_type=>"double",
651
+ :args=>[["double", "x"]],
652
+ :desc=>
653
+ "These routines compute the irregular cylindrical Bessel function of zeroth\n" +
654
+ "order, Y_0(x), for x>0.\n" +
655
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
656
+ {:func_name=>"gsl_sf_bessel_Y0_e",
657
+ :func_type=>"int",
658
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
659
+ :desc=>
660
+ "These routines compute the irregular cylindrical Bessel function of zeroth\n" +
661
+ "order, Y_0(x), for x>0.\n" +
662
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
663
+ {:func_name=>"gsl_sf_bessel_Y1",
664
+ :func_type=>"double",
665
+ :args=>[["double", "x"]],
666
+ :desc=>
667
+ "These routines compute the irregular cylindrical Bessel function of first\n" +
668
+ "order, Y_1(x), for x>0.\n" +
669
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
670
+ {:func_name=>"gsl_sf_bessel_Y1_e",
671
+ :func_type=>"int",
672
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
673
+ :desc=>
674
+ "These routines compute the irregular cylindrical Bessel function of first\n" +
675
+ "order, Y_1(x), for x>0.\n" +
676
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
677
+ {:func_name=>"gsl_sf_bessel_Yn",
678
+ :func_type=>"double",
679
+ :args=>[["int", "n"], ["double", "x"]],
680
+ :desc=>
681
+ "These routines compute the irregular cylindrical Bessel function of \n" +
682
+ "order n, Y_n(x), for x>0.\n" +
683
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
684
+ {:func_name=>"gsl_sf_bessel_Yn_array",
685
+ :func_type=>"int",
686
+ :args=>
687
+ [["int", "nmin"],
688
+ ["int", "nmax"],
689
+ ["double", "x"],
690
+ ["double", "result_array[]"]],
691
+ :desc=>
692
+ "This routine computes the values of the irregular cylindrical Bessel\n" +
693
+ "functions Y_n(x) for n from nmin to nmax\n" +
694
+ "inclusive, storing the results in the array result_array. The\n" +
695
+ "domain of the function is x>0. The values are computed using\n" +
696
+ "recurrence relations for efficiency, and therefore may differ slightly\n" +
697
+ "from the exact values.\n" +
698
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
699
+ {:func_name=>"gsl_sf_bessel_Yn_e",
700
+ :func_type=>"int",
701
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
702
+ :desc=>
703
+ "These routines compute the irregular cylindrical Bessel function of \n" +
704
+ "order n, Y_n(x), for x>0.\n" +
705
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
706
+ {:func_name=>"gsl_sf_bessel_Ynu",
707
+ :func_type=>"double",
708
+ :args=>[["double", "nu"], ["double", "x"]],
709
+ :desc=>
710
+ "These routines compute the irregular cylindrical Bessel function of\n" +
711
+ "fractional order \\nu, Y_\\nu(x).\n" +
712
+ "Exceptional Return Values: "},
713
+ {:func_name=>"gsl_sf_bessel_Ynu_e",
714
+ :func_type=>"int",
715
+ :args=>[["double", "nu"], ["double", "x"], ["gsl_sf_result *", "result"]],
716
+ :desc=>
717
+ "These routines compute the irregular cylindrical Bessel function of\n" +
718
+ "fractional order \\nu, Y_\\nu(x).\n" +
719
+ "Exceptional Return Values: "},
720
+ {:func_name=>"gsl_sf_bessel_i0_scaled",
721
+ :func_type=>"double",
722
+ :args=>[["double", "x"]],
723
+ :desc=>
724
+ "These routines compute the scaled regular modified spherical Bessel\n" +
725
+ "function of zeroth order, \\exp(-|x|) i_0(x).\n" +
726
+ "Exceptional Return Values: none"},
727
+ {:func_name=>"gsl_sf_bessel_i0_scaled_e",
728
+ :func_type=>"int",
729
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
730
+ :desc=>
731
+ "These routines compute the scaled regular modified spherical Bessel\n" +
732
+ "function of zeroth order, \\exp(-|x|) i_0(x).\n" +
733
+ "Exceptional Return Values: none"},
734
+ {:func_name=>"gsl_sf_bessel_i1_scaled",
735
+ :func_type=>"double",
736
+ :args=>[["double", "x"]],
737
+ :desc=>
738
+ "These routines compute the scaled regular modified spherical Bessel\n" +
739
+ "function of first order, \\exp(-|x|) i_1(x).\n" +
740
+ "Exceptional Return Values: GSL_EUNDRFLW"},
741
+ {:func_name=>"gsl_sf_bessel_i1_scaled_e",
742
+ :func_type=>"int",
743
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
744
+ :desc=>
745
+ "These routines compute the scaled regular modified spherical Bessel\n" +
746
+ "function of first order, \\exp(-|x|) i_1(x).\n" +
747
+ "Exceptional Return Values: GSL_EUNDRFLW"},
748
+ {:func_name=>"gsl_sf_bessel_i2_scaled",
749
+ :func_type=>"double",
750
+ :args=>[["double", "x"]],
751
+ :desc=>
752
+ "These routines compute the scaled regular modified spherical Bessel\n" +
753
+ "function of second order, \\exp(-|x|) i_2(x) \n" +
754
+ "Exceptional Return Values: GSL_EUNDRFLW"},
755
+ {:func_name=>"gsl_sf_bessel_i2_scaled_e",
756
+ :func_type=>"int",
757
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
758
+ :desc=>
759
+ "These routines compute the scaled regular modified spherical Bessel\n" +
760
+ "function of second order, \\exp(-|x|) i_2(x) \n" +
761
+ "Exceptional Return Values: GSL_EUNDRFLW"},
762
+ {:func_name=>"gsl_sf_bessel_il_scaled",
763
+ :func_type=>"double",
764
+ :args=>[["int", "l"], ["double", "x"]],
765
+ :desc=>
766
+ "These routines compute the scaled regular modified spherical Bessel\n" +
767
+ "function of order l, \\exp(-|x|) i_l(x)\n" +
768
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
769
+ {:func_name=>"gsl_sf_bessel_il_scaled_array",
770
+ :func_type=>"int",
771
+ :args=>[["int", "lmax"], ["double", "x"], ["double", "result_array[]"]],
772
+ :desc=>
773
+ "This routine computes the values of the scaled regular modified\n" +
774
+ "spherical Bessel functions \\exp(-|x|) i_l(x) for l from\n" +
775
+ "0 to lmax inclusive for\n" +
776
+ "lmax \\geq 0, storing the results in\n" +
777
+ "the array result_array. \n" +
778
+ "The values are computed using recurrence relations for\n" +
779
+ "efficiency, and therefore may differ slightly from the exact values.\n" +
780
+ "Exceptional Return Values: GSL_EUNDRFLW"},
781
+ {:func_name=>"gsl_sf_bessel_il_scaled_e",
782
+ :func_type=>"int",
783
+ :args=>[["int", "l"], ["double", "x"], ["gsl_sf_result *", "result"]],
784
+ :desc=>
785
+ "These routines compute the scaled regular modified spherical Bessel\n" +
786
+ "function of order l, \\exp(-|x|) i_l(x)\n" +
787
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
788
+ {:func_name=>"gsl_sf_bessel_j0",
789
+ :func_type=>"double",
790
+ :args=>[["double", "x"]],
791
+ :desc=>
792
+ "These routines compute the regular spherical Bessel function of zeroth\n" +
793
+ "order, j_0(x) = \\sin(x)/x.\n" +
794
+ "Exceptional Return Values: none"},
795
+ {:func_name=>"gsl_sf_bessel_j0_e",
796
+ :func_type=>"int",
797
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
798
+ :desc=>
799
+ "These routines compute the regular spherical Bessel function of zeroth\n" +
800
+ "order, j_0(x) = \\sin(x)/x.\n" +
801
+ "Exceptional Return Values: none"},
802
+ {:func_name=>"gsl_sf_bessel_j1",
803
+ :func_type=>"double",
804
+ :args=>[["double", "x"]],
805
+ :desc=>
806
+ "These routines compute the regular spherical Bessel function of first\n" +
807
+ "order, j_1(x) = (\\sin(x)/x - \\cos(x))/x.\n" +
808
+ "Exceptional Return Values: GSL_EUNDRFLW"},
809
+ {:func_name=>"gsl_sf_bessel_j1_e",
810
+ :func_type=>"int",
811
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
812
+ :desc=>
813
+ "These routines compute the regular spherical Bessel function of first\n" +
814
+ "order, j_1(x) = (\\sin(x)/x - \\cos(x))/x.\n" +
815
+ "Exceptional Return Values: GSL_EUNDRFLW"},
816
+ {:func_name=>"gsl_sf_bessel_j2",
817
+ :func_type=>"double",
818
+ :args=>[["double", "x"]],
819
+ :desc=>
820
+ "These routines compute the regular spherical Bessel function of second\n" +
821
+ "order, j_2(x) = ((3/x^2 - 1)\\sin(x) - 3\\cos(x)/x)/x.\n" +
822
+ "Exceptional Return Values: GSL_EUNDRFLW"},
823
+ {:func_name=>"gsl_sf_bessel_j2_e",
824
+ :func_type=>"int",
825
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
826
+ :desc=>
827
+ "These routines compute the regular spherical Bessel function of second\n" +
828
+ "order, j_2(x) = ((3/x^2 - 1)\\sin(x) - 3\\cos(x)/x)/x.\n" +
829
+ "Exceptional Return Values: GSL_EUNDRFLW"},
830
+ {:func_name=>"gsl_sf_bessel_jl",
831
+ :func_type=>"double",
832
+ :args=>[["int", "l"], ["double", "x"]],
833
+ :desc=>
834
+ "These routines compute the regular spherical Bessel function of \n" +
835
+ "order l, j_l(x), for\n" +
836
+ "l \\geq 0 and x \\geq 0.\n" +
837
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
838
+ {:func_name=>"gsl_sf_bessel_jl_array",
839
+ :func_type=>"int",
840
+ :args=>[["int", "lmax"], ["double", "x"], ["double", "result_array[]"]],
841
+ :desc=>
842
+ "This routine computes the values of the regular spherical Bessel\n" +
843
+ "functions j_l(x) for l from 0 to lmax\n" +
844
+ "inclusive for\n" +
845
+ "lmax \\geq 0 and\n" +
846
+ "x \\geq 0, storing the results in the array result_array.\n" +
847
+ "The values are computed using recurrence relations for\n" +
848
+ "efficiency, and therefore may differ slightly from the exact values.\n" +
849
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
850
+ {:func_name=>"gsl_sf_bessel_jl_e",
851
+ :func_type=>"int",
852
+ :args=>[["int", "l"], ["double", "x"], ["gsl_sf_result *", "result"]],
853
+ :desc=>
854
+ "These routines compute the regular spherical Bessel function of \n" +
855
+ "order l, j_l(x), for\n" +
856
+ "l \\geq 0 and x \\geq 0.\n" +
857
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
858
+ {:func_name=>"gsl_sf_bessel_jl_steed_array",
859
+ :func_type=>"int",
860
+ :args=>[["int", "lmax"], ["double", "x"], ["double *", "result_array"]],
861
+ :desc=>
862
+ "This routine uses Steed's method to compute the values of the regular\n" +
863
+ "spherical Bessel functions j_l(x) for l from 0 to\n" +
864
+ "lmax inclusive for\n" +
865
+ "lmax \\geq 0 and\n" +
866
+ "x \\geq 0, storing the results in the array\n" +
867
+ "result_array.\n" +
868
+ "The Steed/Barnett algorithm is described in Comp. Phys. Comm. 21,\n" +
869
+ "297 (1981). Steed's method is more stable than the\n" +
870
+ "recurrence used in the other functions but is also slower.\n" +
871
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
872
+ {:func_name=>"gsl_sf_bessel_k0_scaled",
873
+ :func_type=>"double",
874
+ :args=>[["double", "x"]],
875
+ :desc=>
876
+ "These routines compute the scaled irregular modified spherical Bessel\n" +
877
+ "function of zeroth order, \\exp(x) k_0(x), for x>0.\n" +
878
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
879
+ {:func_name=>"gsl_sf_bessel_k0_scaled_e",
880
+ :func_type=>"int",
881
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
882
+ :desc=>
883
+ "These routines compute the scaled irregular modified spherical Bessel\n" +
884
+ "function of zeroth order, \\exp(x) k_0(x), for x>0.\n" +
885
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
886
+ {:func_name=>"gsl_sf_bessel_k1_scaled",
887
+ :func_type=>"double",
888
+ :args=>[["double", "x"]],
889
+ :desc=>
890
+ "These routines compute the scaled irregular modified spherical Bessel\n" +
891
+ "function of first order, \\exp(x) k_1(x), for x>0.\n" +
892
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW, GSL_EOVRFLW"},
893
+ {:func_name=>"gsl_sf_bessel_k1_scaled_e",
894
+ :func_type=>"int",
895
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
896
+ :desc=>
897
+ "These routines compute the scaled irregular modified spherical Bessel\n" +
898
+ "function of first order, \\exp(x) k_1(x), for x>0.\n" +
899
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW, GSL_EOVRFLW"},
900
+ {:func_name=>"gsl_sf_bessel_k2_scaled",
901
+ :func_type=>"double",
902
+ :args=>[["double", "x"]],
903
+ :desc=>
904
+ "These routines compute the scaled irregular modified spherical Bessel\n" +
905
+ "function of second order, \\exp(x) k_2(x), for x>0.\n" +
906
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW, GSL_EOVRFLW"},
907
+ {:func_name=>"gsl_sf_bessel_k2_scaled_e",
908
+ :func_type=>"int",
909
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
910
+ :desc=>
911
+ "These routines compute the scaled irregular modified spherical Bessel\n" +
912
+ "function of second order, \\exp(x) k_2(x), for x>0.\n" +
913
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW, GSL_EOVRFLW"},
914
+ {:func_name=>"gsl_sf_bessel_kl_scaled",
915
+ :func_type=>"double",
916
+ :args=>[["int", "l"], ["double", "x"]],
917
+ :desc=>
918
+ "These routines compute the scaled irregular modified spherical Bessel\n" +
919
+ "function of order l, \\exp(x) k_l(x), for x>0.\n" +
920
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
921
+ {:func_name=>"gsl_sf_bessel_kl_scaled_array",
922
+ :func_type=>"int",
923
+ :args=>[["int", "lmax"], ["double", "x"], ["double", "result_array[]"]],
924
+ :desc=>
925
+ "This routine computes the values of the scaled irregular modified\n" +
926
+ "spherical Bessel functions \\exp(x) k_l(x) for l from\n" +
927
+ "0 to lmax inclusive for\n" +
928
+ "lmax \\geq 0 and x>0, storing the results in\n" +
929
+ "the array result_array. \n" +
930
+ "The values are computed using recurrence relations for\n" +
931
+ "efficiency, and therefore may differ slightly from the exact values.\n" +
932
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
933
+ {:func_name=>"gsl_sf_bessel_kl_scaled_e",
934
+ :func_type=>"int",
935
+ :args=>[["int", "l"], ["double", "x"], ["gsl_sf_result *", "result"]],
936
+ :desc=>
937
+ "These routines compute the scaled irregular modified spherical Bessel\n" +
938
+ "function of order l, \\exp(x) k_l(x), for x>0.\n" +
939
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
940
+ {:func_name=>"gsl_sf_bessel_lnKnu",
941
+ :func_type=>"double",
942
+ :args=>[["double", "nu"], ["double", "x"]],
943
+ :desc=>
944
+ "These routines compute the logarithm of the irregular modified Bessel\n" +
945
+ "function of fractional order \\nu, \\ln(K_\\nu(x)) for\n" +
946
+ "x>0, \\nu>0. \n" +
947
+ "Exceptional Return Values: GSL_EDOM"},
948
+ {:func_name=>"gsl_sf_bessel_lnKnu_e",
949
+ :func_type=>"int",
950
+ :args=>[["double", "nu"], ["double", "x"], ["gsl_sf_result *", "result"]],
951
+ :desc=>
952
+ "These routines compute the logarithm of the irregular modified Bessel\n" +
953
+ "function of fractional order \\nu, \\ln(K_\\nu(x)) for\n" +
954
+ "x>0, \\nu>0. \n" +
955
+ "Exceptional Return Values: GSL_EDOM"},
956
+ {:func_name=>"gsl_sf_bessel_sequence_Jnu_e",
957
+ :func_type=>"int",
958
+ :args=>
959
+ [["double", "nu"],
960
+ ["gsl_mode_t", "mode"],
961
+ ["size_t", "size"],
962
+ ["double", "v[]"]],
963
+ :desc=>
964
+ "This function computes the regular cylindrical Bessel function of\n" +
965
+ "fractional order \\nu, J_\\nu(x), evaluated at a series of\n" +
966
+ "x values. The array v of length size contains the\n" +
967
+ "x values. They are assumed to be strictly ordered and positive.\n" +
968
+ "The array is over-written with the values of J_\\nu(x_i).\n" +
969
+ "Exceptional Return Values: GSL_EDOM, GSL_EINVAL"},
970
+ {:func_name=>"gsl_sf_bessel_y0",
971
+ :func_type=>"double",
972
+ :args=>[["double", "x"]],
973
+ :desc=>
974
+ "These routines compute the irregular spherical Bessel function of zeroth\n" +
975
+ "order, y_0(x) = -\\cos(x)/x.\n" +
976
+ "Exceptional Return Values: none"},
977
+ {:func_name=>"gsl_sf_bessel_y0_e",
978
+ :func_type=>"int",
979
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
980
+ :desc=>
981
+ "These routines compute the irregular spherical Bessel function of zeroth\n" +
982
+ "order, y_0(x) = -\\cos(x)/x.\n" +
983
+ "Exceptional Return Values: none"},
984
+ {:func_name=>"gsl_sf_bessel_y1",
985
+ :func_type=>"double",
986
+ :args=>[["double", "x"]],
987
+ :desc=>
988
+ "These routines compute the irregular spherical Bessel function of first\n" +
989
+ "order, y_1(x) = -(\\cos(x)/x + \\sin(x))/x.\n" +
990
+ "Exceptional Return Values: GSL_EUNDRFLW"},
991
+ {:func_name=>"gsl_sf_bessel_y1_e",
992
+ :func_type=>"int",
993
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
994
+ :desc=>
995
+ "These routines compute the irregular spherical Bessel function of first\n" +
996
+ "order, y_1(x) = -(\\cos(x)/x + \\sin(x))/x.\n" +
997
+ "Exceptional Return Values: GSL_EUNDRFLW"},
998
+ {:func_name=>"gsl_sf_bessel_y2",
999
+ :func_type=>"double",
1000
+ :args=>[["double", "x"]],
1001
+ :desc=>
1002
+ "These routines compute the irregular spherical Bessel function of second\n" +
1003
+ "order, y_2(x) = (-3/x^3 + 1/x)\\cos(x) - (3/x^2)\\sin(x).\n" +
1004
+ "Exceptional Return Values: GSL_EUNDRFLW"},
1005
+ {:func_name=>"gsl_sf_bessel_y2_e",
1006
+ :func_type=>"int",
1007
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1008
+ :desc=>
1009
+ "These routines compute the irregular spherical Bessel function of second\n" +
1010
+ "order, y_2(x) = (-3/x^3 + 1/x)\\cos(x) - (3/x^2)\\sin(x).\n" +
1011
+ "Exceptional Return Values: GSL_EUNDRFLW"},
1012
+ {:func_name=>"gsl_sf_bessel_yl",
1013
+ :func_type=>"double",
1014
+ :args=>[["int", "l"], ["double", "x"]],
1015
+ :desc=>
1016
+ "These routines compute the irregular spherical Bessel function of \n" +
1017
+ "order l, y_l(x), for\n" +
1018
+ "l \\geq 0.\n" +
1019
+ "Exceptional Return Values: GSL_EUNDRFLW"},
1020
+ {:func_name=>"gsl_sf_bessel_yl_array",
1021
+ :func_type=>"int",
1022
+ :args=>[["int", "lmax"], ["double", "x"], ["double", "result_array[]"]],
1023
+ :desc=>
1024
+ "This routine computes the values of the irregular spherical Bessel\n" +
1025
+ "functions y_l(x) for l from 0 to lmax\n" +
1026
+ "inclusive for\n" +
1027
+ "lmax \\geq 0, storing the results in the array result_array.\n" +
1028
+ "The values are computed using recurrence relations for\n" +
1029
+ "efficiency, and therefore may differ slightly from the exact values.\n" +
1030
+ "Exceptional Return Values: GSL_EUNDRFLW"},
1031
+ {:func_name=>"gsl_sf_bessel_yl_e",
1032
+ :func_type=>"int",
1033
+ :args=>[["int", "l"], ["double", "x"], ["gsl_sf_result *", "result"]],
1034
+ :desc=>
1035
+ "These routines compute the irregular spherical Bessel function of \n" +
1036
+ "order l, y_l(x), for\n" +
1037
+ "l \\geq 0.\n" +
1038
+ "Exceptional Return Values: GSL_EUNDRFLW"},
1039
+ {:func_name=>"gsl_sf_bessel_zero_J0",
1040
+ :func_type=>"double",
1041
+ :args=>[["unsigned int", "s"]],
1042
+ :desc=>
1043
+ "These routines compute the location of the s-th positive zero of\n" +
1044
+ "the Bessel function J_0(x).\n" +
1045
+ "Exceptional Return Values: "},
1046
+ {:func_name=>"gsl_sf_bessel_zero_J0_e",
1047
+ :func_type=>"int",
1048
+ :args=>[["unsigned int", "s"], ["gsl_sf_result *", "result"]],
1049
+ :desc=>
1050
+ "These routines compute the location of the s-th positive zero of\n" +
1051
+ "the Bessel function J_0(x).\n" +
1052
+ "Exceptional Return Values: "},
1053
+ {:func_name=>"gsl_sf_bessel_zero_J1",
1054
+ :func_type=>"double",
1055
+ :args=>[["unsigned int", "s"]],
1056
+ :desc=>
1057
+ "These routines compute the location of the s-th positive zero of\n" +
1058
+ "the Bessel function J_1(x).\n" +
1059
+ "Exceptional Return Values: "},
1060
+ {:func_name=>"gsl_sf_bessel_zero_J1_e",
1061
+ :func_type=>"int",
1062
+ :args=>[["unsigned int", "s"], ["gsl_sf_result *", "result"]],
1063
+ :desc=>
1064
+ "These routines compute the location of the s-th positive zero of\n" +
1065
+ "the Bessel function J_1(x).\n" +
1066
+ "Exceptional Return Values: "},
1067
+ {:func_name=>"gsl_sf_bessel_zero_Jnu",
1068
+ :func_type=>"double",
1069
+ :args=>[["double", "nu"], ["unsigned int", "s"]],
1070
+ :desc=>
1071
+ "These routines compute the location of the s-th positive zero of\n" +
1072
+ "the Bessel function J_\\nu(x). The current implementation does not\n" +
1073
+ "support negative values of nu. \n" +
1074
+ "Exceptional Return Values: "},
1075
+ {:func_name=>"gsl_sf_bessel_zero_Jnu_e",
1076
+ :func_type=>"int",
1077
+ :args=>
1078
+ [["double", "nu"], ["unsigned int", "s"], ["gsl_sf_result *", "result"]],
1079
+ :desc=>
1080
+ "These routines compute the location of the s-th positive zero of\n" +
1081
+ "the Bessel function J_\\nu(x). The current implementation does not\n" +
1082
+ "support negative values of nu. \n" +
1083
+ "Exceptional Return Values: "},
1084
+ {:func_name=>"gsl_sf_beta",
1085
+ :func_type=>"double",
1086
+ :args=>[["double", "a"], ["double", "b"]],
1087
+ :desc=>
1088
+ "These routines compute the Beta Function, B(a,b) = \\Gamma(a)\\Gamma(b)/\\Gamma(a+b)\n" +
1089
+ "subject to a and b not being negative integers."},
1090
+ {:func_name=>"gsl_sf_beta_e",
1091
+ :func_type=>"int",
1092
+ :args=>[["double", "a"], ["double", "b"], ["gsl_sf_result *", "result"]],
1093
+ :desc=>
1094
+ "These routines compute the Beta Function, B(a,b) = \\Gamma(a)\\Gamma(b)/\\Gamma(a+b)\n" +
1095
+ "subject to a and b not being negative integers."},
1096
+ {:func_name=>"gsl_sf_beta_inc",
1097
+ :func_type=>"double",
1098
+ :args=>[["double", "a"], ["double", "b"], ["double", "x"]],
1099
+ :desc=>
1100
+ "These routines compute the normalized incomplete Beta function\n" +
1101
+ "I_x(a,b) = B_x(a,b) / B(a,b) where\n" +
1102
+ ".. math:: B_x(a,b) = \\int_0^x t^{a-1} (1-t)^{b-1} dt\n" +
1103
+ "for 0 \\le x \\le 1.\n" +
1104
+ "For a > 0, b > 0 the value is computed using\n" +
1105
+ "a continued fraction expansion. For all other values it is computed using \n" +
1106
+ "the relation\n" +
1107
+ ".. only:: not texinfo\n" +
1108
+ ".. only:: texinfo"},
1109
+ {:func_name=>"gsl_sf_beta_inc_e",
1110
+ :func_type=>"int",
1111
+ :args=>
1112
+ [["double", "a"],
1113
+ ["double", "b"],
1114
+ ["double", "x"],
1115
+ ["gsl_sf_result *", "result"]],
1116
+ :desc=>
1117
+ "These routines compute the normalized incomplete Beta function\n" +
1118
+ "I_x(a,b) = B_x(a,b) / B(a,b) where\n" +
1119
+ ".. math:: B_x(a,b) = \\int_0^x t^{a-1} (1-t)^{b-1} dt\n" +
1120
+ "for 0 \\le x \\le 1.\n" +
1121
+ "For a > 0, b > 0 the value is computed using\n" +
1122
+ "a continued fraction expansion. For all other values it is computed using \n" +
1123
+ "the relation\n" +
1124
+ ".. only:: not texinfo\n" +
1125
+ ".. only:: texinfo"},
1126
+ {:func_name=>"gsl_sf_choose",
1127
+ :func_type=>"double",
1128
+ :args=>[["unsigned int", "n"], ["unsigned int", "m"]],
1129
+ :desc=>
1130
+ "These routines compute the combinatorial factor n choose m\n" +
1131
+ "= n!/(m!(n-m)!)"},
1132
+ {:func_name=>"gsl_sf_choose_e",
1133
+ :func_type=>"int",
1134
+ :args=>
1135
+ [["unsigned int", "n"],
1136
+ ["unsigned int", "m"],
1137
+ ["gsl_sf_result *", "result"]],
1138
+ :desc=>
1139
+ "These routines compute the combinatorial factor n choose m\n" +
1140
+ "= n!/(m!(n-m)!)"},
1141
+ {:func_name=>"gsl_sf_clausen",
1142
+ :func_type=>"double",
1143
+ :args=>[["double", "x"]],
1144
+ :desc=>"These routines compute the Clausen integral Cl_2(x)."},
1145
+ {:func_name=>"gsl_sf_clausen_e",
1146
+ :func_type=>"int",
1147
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1148
+ :desc=>"These routines compute the Clausen integral Cl_2(x)."},
1149
+ {:func_name=>"gsl_sf_complex_cos_e",
1150
+ :func_type=>"int",
1151
+ :args=>
1152
+ [["double", "zr"],
1153
+ ["double", "zi"],
1154
+ ["gsl_sf_result *", "czr"],
1155
+ ["gsl_sf_result *", "czi"]],
1156
+ :desc=>
1157
+ "This function computes the complex cosine, \\cos(z_r + i z_i) storing\n" +
1158
+ "the real and imaginary parts in czr, czi.\n" +
1159
+ "Exceptional Return Values: GSL_EOVRFLW"},
1160
+ {:func_name=>"gsl_sf_complex_dilog_e",
1161
+ :func_type=>"int",
1162
+ :args=>
1163
+ [["double", "r"],
1164
+ ["double", "theta"],
1165
+ ["gsl_sf_result *", "result_re"],
1166
+ ["gsl_sf_result *", "result_im"]],
1167
+ :desc=>
1168
+ "This function computes the full complex-valued dilogarithm for the\n" +
1169
+ "complex argument z = r \\exp(i \\theta). The real and imaginary\n" +
1170
+ "parts of the result are returned in result_re, result_im."},
1171
+ {:func_name=>"gsl_sf_complex_log_e",
1172
+ :func_type=>"int",
1173
+ :args=>
1174
+ [["double", "zr"],
1175
+ ["double", "zi"],
1176
+ ["gsl_sf_result *", "lnr"],
1177
+ ["gsl_sf_result *", "theta"]],
1178
+ :desc=>
1179
+ "This routine computes the complex logarithm of z = z_r + i z_i.\n" +
1180
+ "The results are returned as lnr, theta such that\n" +
1181
+ "\\exp(lnr + i \\theta) = z_r + i z_i, where \\theta lies in\n" +
1182
+ "the range [-\\pi,\\pi].\n" +
1183
+ "Exceptional Return Values: GSL_EDOM"},
1184
+ {:func_name=>"gsl_sf_complex_logsin_e",
1185
+ :func_type=>"int",
1186
+ :args=>
1187
+ [["double", "zr"],
1188
+ ["double", "zi"],
1189
+ ["gsl_sf_result *", "lszr"],
1190
+ ["gsl_sf_result *", "lszi"]],
1191
+ :desc=>
1192
+ "This function computes the logarithm of the complex sine,\n" +
1193
+ "\\log(\\sin(z_r + i z_i)) storing the real and imaginary parts in\n" +
1194
+ "lszr, lszi.\n" +
1195
+ "Exceptional Return Values: GSL_EDOM, GSL_ELOSS"},
1196
+ {:func_name=>"gsl_sf_complex_sin_e",
1197
+ :func_type=>"int",
1198
+ :args=>
1199
+ [["double", "zr"],
1200
+ ["double", "zi"],
1201
+ ["gsl_sf_result *", "szr"],
1202
+ ["gsl_sf_result *", "szi"]],
1203
+ :desc=>
1204
+ "This function computes the complex sine, \\sin(z_r + i z_i) storing\n" +
1205
+ "the real and imaginary parts in szr, szi.\n" +
1206
+ "Exceptional Return Values: GSL_EOVRFLW"},
1207
+ {:func_name=>"gsl_sf_conicalP_0",
1208
+ :func_type=>"double",
1209
+ :args=>[["double", "lambda"], ["double", "x"]],
1210
+ :desc=>
1211
+ "These routines compute the conical function\n" +
1212
+ "P^0_{-1/2 + i \\lambda}(x) for x > -1.\n" +
1213
+ "Exceptional Return Values: GSL_EDOM"},
1214
+ {:func_name=>"gsl_sf_conicalP_0_e",
1215
+ :func_type=>"int",
1216
+ :args=>
1217
+ [["double", "lambda"], ["double", "x"], ["gsl_sf_result *", "result"]],
1218
+ :desc=>
1219
+ "These routines compute the conical function\n" +
1220
+ "P^0_{-1/2 + i \\lambda}(x) for x > -1.\n" +
1221
+ "Exceptional Return Values: GSL_EDOM"},
1222
+ {:func_name=>"gsl_sf_conicalP_1",
1223
+ :func_type=>"double",
1224
+ :args=>[["double", "lambda"], ["double", "x"]],
1225
+ :desc=>
1226
+ "These routines compute the conical function \n" +
1227
+ "P^1_{-1/2 + i \\lambda}(x) for x > -1.\n" +
1228
+ "Exceptional Return Values: GSL_EDOM"},
1229
+ {:func_name=>"gsl_sf_conicalP_1_e",
1230
+ :func_type=>"int",
1231
+ :args=>
1232
+ [["double", "lambda"], ["double", "x"], ["gsl_sf_result *", "result"]],
1233
+ :desc=>
1234
+ "These routines compute the conical function \n" +
1235
+ "P^1_{-1/2 + i \\lambda}(x) for x > -1.\n" +
1236
+ "Exceptional Return Values: GSL_EDOM"},
1237
+ {:func_name=>"gsl_sf_conicalP_cyl_reg",
1238
+ :func_type=>"double",
1239
+ :args=>[["int", "m"], ["double", "lambda"], ["double", "x"]],
1240
+ :desc=>
1241
+ "These routines compute the Regular Cylindrical Conical Function\n" +
1242
+ "P^{-m}_{-1/2 + i \\lambda}(x)\n" +
1243
+ "for x > -1 and m \\ge -1.\n" +
1244
+ "Exceptional Return Values: GSL_EDOM"},
1245
+ {:func_name=>"gsl_sf_conicalP_cyl_reg_e",
1246
+ :func_type=>"int",
1247
+ :args=>
1248
+ [["int", "m"],
1249
+ ["double", "lambda"],
1250
+ ["double", "x"],
1251
+ ["gsl_sf_result *", "result"]],
1252
+ :desc=>
1253
+ "These routines compute the Regular Cylindrical Conical Function\n" +
1254
+ "P^{-m}_{-1/2 + i \\lambda}(x)\n" +
1255
+ "for x > -1 and m \\ge -1.\n" +
1256
+ "Exceptional Return Values: GSL_EDOM"},
1257
+ {:func_name=>"gsl_sf_conicalP_half",
1258
+ :func_type=>"double",
1259
+ :args=>[["double", "lambda"], ["double", "x"]],
1260
+ :desc=>
1261
+ "These routines compute the irregular Spherical Conical Function\n" +
1262
+ "P^{1/2}_{-1/2 + i \\lambda}(x) for x > -1.\n" +
1263
+ "Exceptional Return Values: GSL_EDOM"},
1264
+ {:func_name=>"gsl_sf_conicalP_half_e",
1265
+ :func_type=>"int",
1266
+ :args=>
1267
+ [["double", "lambda"], ["double", "x"], ["gsl_sf_result *", "result"]],
1268
+ :desc=>
1269
+ "These routines compute the irregular Spherical Conical Function\n" +
1270
+ "P^{1/2}_{-1/2 + i \\lambda}(x) for x > -1.\n" +
1271
+ "Exceptional Return Values: GSL_EDOM"},
1272
+ {:func_name=>"gsl_sf_conicalP_mhalf",
1273
+ :func_type=>"double",
1274
+ :args=>[["double", "lambda"], ["double", "x"]],
1275
+ :desc=>
1276
+ "These routines compute the regular Spherical Conical Function\n" +
1277
+ "P^{-1/2}_{-1/2 + i \\lambda}(x) for x > -1.\n" +
1278
+ "Exceptional Return Values: GSL_EDOM"},
1279
+ {:func_name=>"gsl_sf_conicalP_mhalf_e",
1280
+ :func_type=>"int",
1281
+ :args=>
1282
+ [["double", "lambda"], ["double", "x"], ["gsl_sf_result *", "result"]],
1283
+ :desc=>
1284
+ "These routines compute the regular Spherical Conical Function\n" +
1285
+ "P^{-1/2}_{-1/2 + i \\lambda}(x) for x > -1.\n" +
1286
+ "Exceptional Return Values: GSL_EDOM"},
1287
+ {:func_name=>"gsl_sf_conicalP_sph_reg",
1288
+ :func_type=>"double",
1289
+ :args=>[["int", "l"], ["double", "lambda"], ["double", "x"]],
1290
+ :desc=>
1291
+ "These routines compute the Regular Spherical Conical Function\n" +
1292
+ "P^{-1/2-l}_{-1/2 + i \\lambda}(x)\n" +
1293
+ "for x > -1 and l \\ge -1.\n" +
1294
+ "Exceptional Return Values: GSL_EDOM"},
1295
+ {:func_name=>"gsl_sf_conicalP_sph_reg_e",
1296
+ :func_type=>"int",
1297
+ :args=>
1298
+ [["int", "l"],
1299
+ ["double", "lambda"],
1300
+ ["double", "x"],
1301
+ ["gsl_sf_result *", "result"]],
1302
+ :desc=>
1303
+ "These routines compute the Regular Spherical Conical Function\n" +
1304
+ "P^{-1/2-l}_{-1/2 + i \\lambda}(x)\n" +
1305
+ "for x > -1 and l \\ge -1.\n" +
1306
+ "Exceptional Return Values: GSL_EDOM"},
1307
+ {:func_name=>"gsl_sf_cos",
1308
+ :func_type=>"double",
1309
+ :args=>[["double", "x"]],
1310
+ :desc=>
1311
+ "These routines compute the cosine function \\cos(x).\n" +
1312
+ "Exceptional Return Values:"},
1313
+ {:func_name=>"gsl_sf_cos_e",
1314
+ :func_type=>"int",
1315
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1316
+ :desc=>
1317
+ "These routines compute the cosine function \\cos(x).\n" +
1318
+ "Exceptional Return Values:"},
1319
+ {:func_name=>"gsl_sf_cos_err_e",
1320
+ :func_type=>"int",
1321
+ :args=>[["double", "x"], ["double", "dx"], ["gsl_sf_result *", "result"]],
1322
+ :desc=>
1323
+ "This routine computes the cosine of an angle x with an associated\n" +
1324
+ "absolute error dx, \n" +
1325
+ "\\cos(x \\pm dx). Note that this function is provided in the error-handling form only since\n" +
1326
+ "its purpose is to compute the propagated error."},
1327
+ {:func_name=>"gsl_sf_coulomb_CL_array",
1328
+ :func_type=>"int",
1329
+ :args=>
1330
+ [["double", "Lmin"],
1331
+ ["int", "kmax"],
1332
+ ["double", "eta"],
1333
+ ["double", "cl[]"]],
1334
+ :desc=>
1335
+ "This function computes the Coulomb wave function normalization constant\n" +
1336
+ "C_L(\\eta) for L = Lmin \\dots Lmin + kmax, Lmin > -1."},
1337
+ {:func_name=>"gsl_sf_coulomb_CL_e",
1338
+ :func_type=>"int",
1339
+ :args=>[["double", "L"], ["double", "eta"], ["gsl_sf_result *", "result"]],
1340
+ :desc=>
1341
+ "This function computes the Coulomb wave function normalization constant\n" +
1342
+ "C_L(\\eta) for L > -1."},
1343
+ {:func_name=>"gsl_sf_coulomb_wave_FG_array",
1344
+ :func_type=>"int",
1345
+ :args=>
1346
+ [["double", "L_min"],
1347
+ ["int", "kmax"],
1348
+ ["double", "eta"],
1349
+ ["double", "x"],
1350
+ ["double", "fc_array[]"],
1351
+ ["double", "gc_array[]"],
1352
+ ["double *", "F_exponent"],
1353
+ ["double *", "G_exponent"]],
1354
+ :desc=>
1355
+ "This function computes the functions F_L(\\eta,x),\n" +
1356
+ "G_L(\\eta,x) for L = Lmin \\dots Lmin + kmax storing the\n" +
1357
+ "results in fc_array and gc_array. In the case of overflow the\n" +
1358
+ "exponents are stored in F_exponent and G_exponent."},
1359
+ {:func_name=>"gsl_sf_coulomb_wave_FG_e",
1360
+ :func_type=>"int",
1361
+ :args=>
1362
+ [["double", "eta"],
1363
+ ["double", "x"],
1364
+ ["double", "L_F"],
1365
+ ["int", "k"],
1366
+ ["gsl_sf_result *", "F"],
1367
+ ["gsl_sf_result *", "Fp"],
1368
+ ["gsl_sf_result *", "G"],
1369
+ ["gsl_sf_result *", "Gp"],
1370
+ ["double *", "exp_F"],
1371
+ ["double *", "exp_G"]],
1372
+ :desc=>
1373
+ "This function computes the Coulomb wave functions F_L(\\eta,x),\n" +
1374
+ "G_{L-k}(\\eta,x) and their derivatives \n" +
1375
+ "F'_L(\\eta,x), \n" +
1376
+ "G'_{L-k}(\\eta,x)\n" +
1377
+ "with respect to x. The parameters are restricted to L, L-k > -1/2,\n" +
1378
+ "x > 0 and integer k. Note that L\n" +
1379
+ "itself is not restricted to being an integer. The results are stored in\n" +
1380
+ "the parameters F, G for the function values and Fp,\n" +
1381
+ "Gp for the derivative values. If an overflow occurs,\n" +
1382
+ "GSL_EOVRFLW is returned and scaling exponents are stored in\n" +
1383
+ "the modifiable parameters exp_F, exp_G."},
1384
+ {:func_name=>"gsl_sf_coulomb_wave_FGp_array",
1385
+ :func_type=>"int",
1386
+ :args=>
1387
+ [["double", "L_min"],
1388
+ ["int", "kmax"],
1389
+ ["double", "eta"],
1390
+ ["double", "x"],
1391
+ ["double", "fc_array[]"],
1392
+ ["double", "fcp_array[]"],
1393
+ ["double", "gc_array[]"],
1394
+ ["double", "gcp_array[]"],
1395
+ ["double *", "F_exponent"],
1396
+ ["double *", "G_exponent"]],
1397
+ :desc=>
1398
+ "This function computes the functions F_L(\\eta,x),\n" +
1399
+ "G_L(\\eta,x) and their derivatives F'_L(\\eta,x),\n" +
1400
+ "G'_L(\\eta,x) for L = Lmin \\dots Lmin + kmax storing the\n" +
1401
+ "results in fc_array, gc_array, fcp_array and gcp_array.\n" +
1402
+ "In the case of overflow the exponents are stored in F_exponent \n" +
1403
+ "and G_exponent."},
1404
+ {:func_name=>"gsl_sf_coulomb_wave_F_array",
1405
+ :func_type=>"int",
1406
+ :args=>
1407
+ [["double", "L_min"],
1408
+ ["int", "kmax"],
1409
+ ["double", "eta"],
1410
+ ["double", "x"],
1411
+ ["double", "fc_array[]"],
1412
+ ["double *", "F_exponent"]],
1413
+ :desc=>
1414
+ "This function computes the Coulomb wave function F_L(\\eta,x) for\n" +
1415
+ "L = Lmin \\dots Lmin + kmax, storing the results in fc_array.\n" +
1416
+ "In the case of overflow the exponent is stored in F_exponent."},
1417
+ {:func_name=>"gsl_sf_coulomb_wave_sphF_array",
1418
+ :func_type=>"int",
1419
+ :args=>
1420
+ [["double", "L_min"],
1421
+ ["int", "kmax"],
1422
+ ["double", "eta"],
1423
+ ["double", "x"],
1424
+ ["double", "fc_array[]"],
1425
+ ["double", "F_exponent[]"]],
1426
+ :desc=>
1427
+ "This function computes the Coulomb wave function divided by the argument\n" +
1428
+ "F_L(\\eta, x)/x for L = Lmin \\dots Lmin + kmax, storing the\n" +
1429
+ "results in fc_array. In the case of overflow the exponent is\n" +
1430
+ "stored in F_exponent. This function reduces to spherical Bessel\n" +
1431
+ "functions in the limit \\eta \\to 0."},
1432
+ {:func_name=>"gsl_sf_coupling_3j",
1433
+ :func_type=>"double",
1434
+ :args=>
1435
+ [["int", "two_ja"],
1436
+ ["int", "two_jb"],
1437
+ ["int", "two_jc"],
1438
+ ["int", "two_ma"],
1439
+ ["int", "two_mb"],
1440
+ ["int", "two_mc"]],
1441
+ :desc=>
1442
+ "These routines compute the Wigner 3-j coefficient, \n" +
1443
+ ".. only:: not texinfo\n" +
1444
+ ".. only:: texinfo\n" +
1445
+ "where the arguments are given in half-integer units, ja =\n" +
1446
+ "two_ja/2, ma = two_ma/2, etc.\n" +
1447
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
1448
+ {:func_name=>"gsl_sf_coupling_3j_e",
1449
+ :func_type=>"int",
1450
+ :args=>
1451
+ [["int", "two_ja"],
1452
+ ["int", "two_jb"],
1453
+ ["int", "two_jc"],
1454
+ ["int", "two_ma"],
1455
+ ["int", "two_mb"],
1456
+ ["int", "two_mc"],
1457
+ ["gsl_sf_result *", "result"]],
1458
+ :desc=>
1459
+ "These routines compute the Wigner 3-j coefficient, \n" +
1460
+ ".. only:: not texinfo\n" +
1461
+ ".. only:: texinfo\n" +
1462
+ "where the arguments are given in half-integer units, ja =\n" +
1463
+ "two_ja/2, ma = two_ma/2, etc.\n" +
1464
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
1465
+ {:func_name=>"gsl_sf_coupling_6j",
1466
+ :func_type=>"double",
1467
+ :args=>
1468
+ [["int", "two_ja"],
1469
+ ["int", "two_jb"],
1470
+ ["int", "two_jc"],
1471
+ ["int", "two_jd"],
1472
+ ["int", "two_je"],
1473
+ ["int", "two_jf"]],
1474
+ :desc=>
1475
+ "These routines compute the Wigner 6-j coefficient, \n" +
1476
+ ".. only:: not texinfo\n" +
1477
+ ".. only:: texinfo\n" +
1478
+ "where the arguments are given in half-integer units, ja =\n" +
1479
+ "two_ja/2, ma = two_ma/2, etc.\n" +
1480
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
1481
+ {:func_name=>"gsl_sf_coupling_6j_e",
1482
+ :func_type=>"int",
1483
+ :args=>
1484
+ [["int", "two_ja"],
1485
+ ["int", "two_jb"],
1486
+ ["int", "two_jc"],
1487
+ ["int", "two_jd"],
1488
+ ["int", "two_je"],
1489
+ ["int", "two_jf"],
1490
+ ["gsl_sf_result *", "result"]],
1491
+ :desc=>
1492
+ "These routines compute the Wigner 6-j coefficient, \n" +
1493
+ ".. only:: not texinfo\n" +
1494
+ ".. only:: texinfo\n" +
1495
+ "where the arguments are given in half-integer units, ja =\n" +
1496
+ "two_ja/2, ma = two_ma/2, etc.\n" +
1497
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
1498
+ {:func_name=>"gsl_sf_coupling_9j",
1499
+ :func_type=>"double",
1500
+ :args=>
1501
+ [["int", "two_ja"],
1502
+ ["int", "two_jb"],
1503
+ ["int", "two_jc"],
1504
+ ["int", "two_jd"],
1505
+ ["int", "two_je"],
1506
+ ["int", "two_jf"],
1507
+ ["int", "two_jg"],
1508
+ ["int", "two_jh"],
1509
+ ["int", "two_ji"]],
1510
+ :desc=>
1511
+ "These routines compute the Wigner 9-j coefficient, \n" +
1512
+ ".. only:: not texinfo\n" +
1513
+ ".. only:: texinfo\n" +
1514
+ "where the arguments are given in half-integer units, ja =\n" +
1515
+ "two_ja/2, ma = two_ma/2, etc.\n" +
1516
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
1517
+ {:func_name=>"gsl_sf_coupling_9j_e",
1518
+ :func_type=>"int",
1519
+ :args=>
1520
+ [["int", "two_ja"],
1521
+ ["int", "two_jb"],
1522
+ ["int", "two_jc"],
1523
+ ["int", "two_jd"],
1524
+ ["int", "two_je"],
1525
+ ["int", "two_jf"],
1526
+ ["int", "two_jg"],
1527
+ ["int", "two_jh"],
1528
+ ["int", "two_ji"],
1529
+ ["gsl_sf_result *", "result"]],
1530
+ :desc=>
1531
+ "These routines compute the Wigner 9-j coefficient, \n" +
1532
+ ".. only:: not texinfo\n" +
1533
+ ".. only:: texinfo\n" +
1534
+ "where the arguments are given in half-integer units, ja =\n" +
1535
+ "two_ja/2, ma = two_ma/2, etc.\n" +
1536
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
1537
+ {:func_name=>"gsl_sf_dawson",
1538
+ :func_type=>"double",
1539
+ :args=>[["double", "x"]],
1540
+ :desc=>
1541
+ "These routines compute the value of Dawson's integral for x.\n" +
1542
+ "Exceptional Return Values: GSL_EUNDRFLW"},
1543
+ {:func_name=>"gsl_sf_dawson_e",
1544
+ :func_type=>"int",
1545
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1546
+ :desc=>
1547
+ "These routines compute the value of Dawson's integral for x.\n" +
1548
+ "Exceptional Return Values: GSL_EUNDRFLW"},
1549
+ {:func_name=>"gsl_sf_debye_1",
1550
+ :func_type=>"double",
1551
+ :args=>[["double", "x"]],
1552
+ :desc=>
1553
+ "These routines compute the first-order Debye function D_1(x).\n" +
1554
+ "Exceptional Return Values: GSL_EDOM"},
1555
+ {:func_name=>"gsl_sf_debye_1_e",
1556
+ :func_type=>"int",
1557
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1558
+ :desc=>
1559
+ "These routines compute the first-order Debye function D_1(x).\n" +
1560
+ "Exceptional Return Values: GSL_EDOM"},
1561
+ {:func_name=>"gsl_sf_debye_2",
1562
+ :func_type=>"double",
1563
+ :args=>[["double", "x"]],
1564
+ :desc=>
1565
+ "These routines compute the second-order Debye function D_2(x).\n" +
1566
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1567
+ {:func_name=>"gsl_sf_debye_2_e",
1568
+ :func_type=>"int",
1569
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1570
+ :desc=>
1571
+ "These routines compute the second-order Debye function D_2(x).\n" +
1572
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1573
+ {:func_name=>"gsl_sf_debye_3",
1574
+ :func_type=>"double",
1575
+ :args=>[["double", "x"]],
1576
+ :desc=>
1577
+ "These routines compute the third-order Debye function D_3(x).\n" +
1578
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1579
+ {:func_name=>"gsl_sf_debye_3_e",
1580
+ :func_type=>"int",
1581
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1582
+ :desc=>
1583
+ "These routines compute the third-order Debye function D_3(x).\n" +
1584
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1585
+ {:func_name=>"gsl_sf_debye_4",
1586
+ :func_type=>"double",
1587
+ :args=>[["double", "x"]],
1588
+ :desc=>
1589
+ "These routines compute the fourth-order Debye function D_4(x).\n" +
1590
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1591
+ {:func_name=>"gsl_sf_debye_4_e",
1592
+ :func_type=>"int",
1593
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1594
+ :desc=>
1595
+ "These routines compute the fourth-order Debye function D_4(x).\n" +
1596
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1597
+ {:func_name=>"gsl_sf_debye_5",
1598
+ :func_type=>"double",
1599
+ :args=>[["double", "x"]],
1600
+ :desc=>
1601
+ "These routines compute the fifth-order Debye function D_5(x).\n" +
1602
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1603
+ {:func_name=>"gsl_sf_debye_5_e",
1604
+ :func_type=>"int",
1605
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1606
+ :desc=>
1607
+ "These routines compute the fifth-order Debye function D_5(x).\n" +
1608
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1609
+ {:func_name=>"gsl_sf_debye_6",
1610
+ :func_type=>"double",
1611
+ :args=>[["double", "x"]],
1612
+ :desc=>
1613
+ "These routines compute the sixth-order Debye function D_6(x).\n" +
1614
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1615
+ {:func_name=>"gsl_sf_debye_6_e",
1616
+ :func_type=>"int",
1617
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1618
+ :desc=>
1619
+ "These routines compute the sixth-order Debye function D_6(x).\n" +
1620
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
1621
+ {:func_name=>"gsl_sf_dilog",
1622
+ :func_type=>"double",
1623
+ :args=>[["double", "x"]],
1624
+ :desc=>
1625
+ "These routines compute the dilogarithm for a real argument. In Lewin's\n" +
1626
+ "notation this is Li_2(x), the real part of the dilogarithm of a\n" +
1627
+ "real x. It is defined by the integral representation\n" +
1628
+ ".. math:: Li_2(x) = - \\Re \\int_0^x ds \\log(1-s) / s\n" +
1629
+ "Note that \\Im(Li_2(x)) = 0 for\n" +
1630
+ "x \\le 1, and -\\pi\\log(x) for x > 1.\n" +
1631
+ "Note that Abramowitz & Stegun refer to the Spence integral\n" +
1632
+ "S(x) = Li_2(1 - x) as the dilogarithm rather than Li_2(x)."},
1633
+ {:func_name=>"gsl_sf_dilog_e",
1634
+ :func_type=>"int",
1635
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1636
+ :desc=>
1637
+ "These routines compute the dilogarithm for a real argument. In Lewin's\n" +
1638
+ "notation this is Li_2(x), the real part of the dilogarithm of a\n" +
1639
+ "real x. It is defined by the integral representation\n" +
1640
+ ".. math:: Li_2(x) = - \\Re \\int_0^x ds \\log(1-s) / s\n" +
1641
+ "Note that \\Im(Li_2(x)) = 0 for\n" +
1642
+ "x \\le 1, and -\\pi\\log(x) for x > 1.\n" +
1643
+ "Note that Abramowitz & Stegun refer to the Spence integral\n" +
1644
+ "S(x) = Li_2(1 - x) as the dilogarithm rather than Li_2(x)."},
1645
+ {:func_name=>"gsl_sf_doublefact",
1646
+ :func_type=>"double",
1647
+ :args=>[["unsigned int", "n"]],
1648
+ :desc=>
1649
+ "These routines compute the double factorial n!! = n(n-2)(n-4) \\dots. \n" +
1650
+ "The maximum value of n such that n!! is not\n" +
1651
+ "considered an overflow is given by the macro GSL_SF_DOUBLEFACT_NMAX\n" +
1652
+ "and is 297."},
1653
+ {:func_name=>"gsl_sf_doublefact_e",
1654
+ :func_type=>"int",
1655
+ :args=>[["unsigned int", "n"], ["gsl_sf_result *", "result"]],
1656
+ :desc=>
1657
+ "These routines compute the double factorial n!! = n(n-2)(n-4) \\dots. \n" +
1658
+ "The maximum value of n such that n!! is not\n" +
1659
+ "considered an overflow is given by the macro GSL_SF_DOUBLEFACT_NMAX\n" +
1660
+ "and is 297."},
1661
+ {:func_name=>"gsl_sf_ellint_D",
1662
+ :func_type=>"double",
1663
+ :args=>[["double", "phi"], ["double", "k"], ["gsl_mode_t", "mode"]],
1664
+ :desc=>
1665
+ "These functions compute the incomplete elliptic integral\n" +
1666
+ "D(\\phi,k) which is defined through the Carlson form RD(x,y,z)\n" +
1667
+ "by the following relation, \n" +
1668
+ ".. only:: not texinfo\n" +
1669
+ ".. only:: texinfo\n" +
1670
+ "Exceptional Return Values: GSL_EDOM"},
1671
+ {:func_name=>"gsl_sf_ellint_D_e",
1672
+ :func_type=>"int",
1673
+ :args=>
1674
+ [["double", "phi"],
1675
+ ["double", "k"],
1676
+ ["gsl_mode_t", "mode"],
1677
+ ["gsl_sf_result *", "result"]],
1678
+ :desc=>
1679
+ "These functions compute the incomplete elliptic integral\n" +
1680
+ "D(\\phi,k) which is defined through the Carlson form RD(x,y,z)\n" +
1681
+ "by the following relation, \n" +
1682
+ ".. only:: not texinfo\n" +
1683
+ ".. only:: texinfo\n" +
1684
+ "Exceptional Return Values: GSL_EDOM"},
1685
+ {:func_name=>"gsl_sf_ellint_E",
1686
+ :func_type=>"double",
1687
+ :args=>[["double", "phi"], ["double", "k"], ["gsl_mode_t", "mode"]],
1688
+ :desc=>
1689
+ "These routines compute the incomplete elliptic integral E(\\phi,k)\n" +
1690
+ "to the accuracy specified by the mode variable mode.\n" +
1691
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1692
+ "parameter m = k^2.\n" +
1693
+ "Exceptional Return Values: GSL_EDOM"},
1694
+ {:func_name=>"gsl_sf_ellint_E_e",
1695
+ :func_type=>"int",
1696
+ :args=>
1697
+ [["double", "phi"],
1698
+ ["double", "k"],
1699
+ ["gsl_mode_t", "mode"],
1700
+ ["gsl_sf_result *", "result"]],
1701
+ :desc=>
1702
+ "These routines compute the incomplete elliptic integral E(\\phi,k)\n" +
1703
+ "to the accuracy specified by the mode variable mode.\n" +
1704
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1705
+ "parameter m = k^2.\n" +
1706
+ "Exceptional Return Values: GSL_EDOM"},
1707
+ {:func_name=>"gsl_sf_ellint_Ecomp",
1708
+ :func_type=>"double",
1709
+ :args=>[["double", "k"], ["gsl_mode_t", "mode"]],
1710
+ :desc=>
1711
+ "These routines compute the complete elliptic integral E(k) to the\n" +
1712
+ "accuracy specified by the mode variable mode.\n" +
1713
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1714
+ "parameter m = k^2.\n" +
1715
+ "Exceptional Return Values: GSL_EDOM"},
1716
+ {:func_name=>"gsl_sf_ellint_Ecomp_e",
1717
+ :func_type=>"int",
1718
+ :args=>
1719
+ [["double", "k"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
1720
+ :desc=>
1721
+ "These routines compute the complete elliptic integral E(k) to the\n" +
1722
+ "accuracy specified by the mode variable mode.\n" +
1723
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1724
+ "parameter m = k^2.\n" +
1725
+ "Exceptional Return Values: GSL_EDOM"},
1726
+ {:func_name=>"gsl_sf_ellint_F",
1727
+ :func_type=>"double",
1728
+ :args=>[["double", "phi"], ["double", "k"], ["gsl_mode_t", "mode"]],
1729
+ :desc=>
1730
+ "These routines compute the incomplete elliptic integral F(\\phi,k)\n" +
1731
+ "to the accuracy specified by the mode variable mode.\n" +
1732
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1733
+ "parameter m = k^2.\n" +
1734
+ "Exceptional Return Values: GSL_EDOM"},
1735
+ {:func_name=>"gsl_sf_ellint_F_e",
1736
+ :func_type=>"int",
1737
+ :args=>
1738
+ [["double", "phi"],
1739
+ ["double", "k"],
1740
+ ["gsl_mode_t", "mode"],
1741
+ ["gsl_sf_result *", "result"]],
1742
+ :desc=>
1743
+ "These routines compute the incomplete elliptic integral F(\\phi,k)\n" +
1744
+ "to the accuracy specified by the mode variable mode.\n" +
1745
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1746
+ "parameter m = k^2.\n" +
1747
+ "Exceptional Return Values: GSL_EDOM"},
1748
+ {:func_name=>"gsl_sf_ellint_Kcomp",
1749
+ :func_type=>"double",
1750
+ :args=>[["double", "k"], ["gsl_mode_t", "mode"]],
1751
+ :desc=>
1752
+ "These routines compute the complete elliptic integral K(k) to\n" +
1753
+ "the accuracy specified by the mode variable mode. \n" +
1754
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1755
+ "parameter m = k^2.\n" +
1756
+ "Exceptional Return Values: GSL_EDOM"},
1757
+ {:func_name=>"gsl_sf_ellint_Kcomp_e",
1758
+ :func_type=>"int",
1759
+ :args=>
1760
+ [["double", "k"], ["gsl_mode_t", "mode"], ["gsl_sf_result *", "result"]],
1761
+ :desc=>
1762
+ "These routines compute the complete elliptic integral K(k) to\n" +
1763
+ "the accuracy specified by the mode variable mode. \n" +
1764
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1765
+ "parameter m = k^2.\n" +
1766
+ "Exceptional Return Values: GSL_EDOM"},
1767
+ {:func_name=>"gsl_sf_ellint_P",
1768
+ :func_type=>"double",
1769
+ :args=>
1770
+ [["double", "phi"],
1771
+ ["double", "k"],
1772
+ ["double", "n"],
1773
+ ["gsl_mode_t", "mode"]],
1774
+ :desc=>
1775
+ "These routines compute the incomplete elliptic integral \\Pi(\\phi,k,n)\n" +
1776
+ "to the accuracy specified by the mode variable mode.\n" +
1777
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1778
+ "parameters m = k^2 and \\sin^2(\\alpha) = k^2, with the\n" +
1779
+ "change of sign n \\to -n.\n" +
1780
+ "Exceptional Return Values: GSL_EDOM"},
1781
+ {:func_name=>"gsl_sf_ellint_P_e",
1782
+ :func_type=>"int",
1783
+ :args=>
1784
+ [["double", "phi"],
1785
+ ["double", "k"],
1786
+ ["double", "n"],
1787
+ ["gsl_mode_t", "mode"],
1788
+ ["gsl_sf_result *", "result"]],
1789
+ :desc=>
1790
+ "These routines compute the incomplete elliptic integral \\Pi(\\phi,k,n)\n" +
1791
+ "to the accuracy specified by the mode variable mode.\n" +
1792
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1793
+ "parameters m = k^2 and \\sin^2(\\alpha) = k^2, with the\n" +
1794
+ "change of sign n \\to -n.\n" +
1795
+ "Exceptional Return Values: GSL_EDOM"},
1796
+ {:func_name=>"gsl_sf_ellint_Pcomp",
1797
+ :func_type=>"double",
1798
+ :args=>[["double", "k"], ["double", "n"], ["gsl_mode_t", "mode"]],
1799
+ :desc=>
1800
+ "These routines compute the complete elliptic integral \\Pi(k,n) to the\n" +
1801
+ "accuracy specified by the mode variable mode.\n" +
1802
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1803
+ "parameters m = k^2 and \\sin^2(\\alpha) = k^2, with the\n" +
1804
+ "change of sign n \\to -n.\n" +
1805
+ "Exceptional Return Values: GSL_EDOM"},
1806
+ {:func_name=>"gsl_sf_ellint_Pcomp_e",
1807
+ :func_type=>"int",
1808
+ :args=>
1809
+ [["double", "k"],
1810
+ ["double", "n"],
1811
+ ["gsl_mode_t", "mode"],
1812
+ ["gsl_sf_result *", "result"]],
1813
+ :desc=>
1814
+ "These routines compute the complete elliptic integral \\Pi(k,n) to the\n" +
1815
+ "accuracy specified by the mode variable mode.\n" +
1816
+ "Note that Abramowitz & Stegun define this function in terms of the\n" +
1817
+ "parameters m = k^2 and \\sin^2(\\alpha) = k^2, with the\n" +
1818
+ "change of sign n \\to -n.\n" +
1819
+ "Exceptional Return Values: GSL_EDOM"},
1820
+ {:func_name=>"gsl_sf_ellint_RC",
1821
+ :func_type=>"double",
1822
+ :args=>[["double", "x"], ["double", "y"], ["gsl_mode_t", "mode"]],
1823
+ :desc=>
1824
+ "These routines compute the incomplete elliptic integral RC(x,y)\n" +
1825
+ "to the accuracy specified by the mode variable mode.\n" +
1826
+ "Exceptional Return Values: GSL_EDOM"},
1827
+ {:func_name=>"gsl_sf_ellint_RC_e",
1828
+ :func_type=>"int",
1829
+ :args=>
1830
+ [["double", "x"],
1831
+ ["double", "y"],
1832
+ ["gsl_mode_t", "mode"],
1833
+ ["gsl_sf_result *", "result"]],
1834
+ :desc=>
1835
+ "These routines compute the incomplete elliptic integral RC(x,y)\n" +
1836
+ "to the accuracy specified by the mode variable mode.\n" +
1837
+ "Exceptional Return Values: GSL_EDOM"},
1838
+ {:func_name=>"gsl_sf_ellint_RD",
1839
+ :func_type=>"double",
1840
+ :args=>
1841
+ [["double", "x"], ["double", "y"], ["double", "z"], ["gsl_mode_t", "mode"]],
1842
+ :desc=>
1843
+ "These routines compute the incomplete elliptic integral RD(x,y,z)\n" +
1844
+ "to the accuracy specified by the mode variable mode.\n" +
1845
+ "Exceptional Return Values: GSL_EDOM"},
1846
+ {:func_name=>"gsl_sf_ellint_RD_e",
1847
+ :func_type=>"int",
1848
+ :args=>
1849
+ [["double", "x"],
1850
+ ["double", "y"],
1851
+ ["double", "z"],
1852
+ ["gsl_mode_t", "mode"],
1853
+ ["gsl_sf_result *", "result"]],
1854
+ :desc=>
1855
+ "These routines compute the incomplete elliptic integral RD(x,y,z)\n" +
1856
+ "to the accuracy specified by the mode variable mode.\n" +
1857
+ "Exceptional Return Values: GSL_EDOM"},
1858
+ {:func_name=>"gsl_sf_ellint_RF",
1859
+ :func_type=>"double",
1860
+ :args=>
1861
+ [["double", "x"], ["double", "y"], ["double", "z"], ["gsl_mode_t", "mode"]],
1862
+ :desc=>
1863
+ "These routines compute the incomplete elliptic integral RF(x,y,z)\n" +
1864
+ "to the accuracy specified by the mode variable mode.\n" +
1865
+ "Exceptional Return Values: GSL_EDOM"},
1866
+ {:func_name=>"gsl_sf_ellint_RF_e",
1867
+ :func_type=>"int",
1868
+ :args=>
1869
+ [["double", "x"],
1870
+ ["double", "y"],
1871
+ ["double", "z"],
1872
+ ["gsl_mode_t", "mode"],
1873
+ ["gsl_sf_result *", "result"]],
1874
+ :desc=>
1875
+ "These routines compute the incomplete elliptic integral RF(x,y,z)\n" +
1876
+ "to the accuracy specified by the mode variable mode.\n" +
1877
+ "Exceptional Return Values: GSL_EDOM"},
1878
+ {:func_name=>"gsl_sf_ellint_RJ",
1879
+ :func_type=>"double",
1880
+ :args=>
1881
+ [["double", "x"],
1882
+ ["double", "y"],
1883
+ ["double", "z"],
1884
+ ["double", "p"],
1885
+ ["gsl_mode_t", "mode"]],
1886
+ :desc=>
1887
+ "These routines compute the incomplete elliptic integral RJ(x,y,z,p)\n" +
1888
+ "to the accuracy specified by the mode variable mode.\n" +
1889
+ "Exceptional Return Values: GSL_EDOM"},
1890
+ {:func_name=>"gsl_sf_ellint_RJ_e",
1891
+ :func_type=>"int",
1892
+ :args=>
1893
+ [["double", "x"],
1894
+ ["double", "y"],
1895
+ ["double", "z"],
1896
+ ["double", "p"],
1897
+ ["gsl_mode_t", "mode"],
1898
+ ["gsl_sf_result *", "result"]],
1899
+ :desc=>
1900
+ "These routines compute the incomplete elliptic integral RJ(x,y,z,p)\n" +
1901
+ "to the accuracy specified by the mode variable mode.\n" +
1902
+ "Exceptional Return Values: GSL_EDOM"},
1903
+ {:func_name=>"gsl_sf_elljac_e",
1904
+ :func_type=>"int",
1905
+ :args=>
1906
+ [["double", "u"],
1907
+ ["double", "m"],
1908
+ ["double *", "sn"],
1909
+ ["double *", "cn"],
1910
+ ["double *", "dn"]],
1911
+ :desc=>
1912
+ "This function computes the Jacobian elliptic functions sn(u|m),\n" +
1913
+ "cn(u|m), dn(u|m) by descending Landen\n" +
1914
+ "transformations.\n" +
1915
+ "Exceptional Return Values: GSL_EDOM"},
1916
+ {:func_name=>"gsl_sf_erf",
1917
+ :func_type=>"double",
1918
+ :args=>[["double", "x"]],
1919
+ :desc=>
1920
+ "These routines compute the error function \\erf(x),\n" +
1921
+ "where\n" +
1922
+ "\\erf(x) = (2/\\sqrt{\\pi}) \\int_0^x dt \\exp(-t^2).\n" +
1923
+ "Exceptional Return Values: none"},
1924
+ {:func_name=>"gsl_sf_erf_Q",
1925
+ :func_type=>"double",
1926
+ :args=>[["double", "x"]],
1927
+ :desc=>
1928
+ "These routines compute the upper tail of the Gaussian probability function \n" +
1929
+ "Q(x) = (1/\\sqrt{2\\pi}) \\int_x^\\infty dt \\exp(-t^2/2)\n" +
1930
+ "Exceptional Return Values: none"},
1931
+ {:func_name=>"gsl_sf_erf_Q_e",
1932
+ :func_type=>"int",
1933
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1934
+ :desc=>
1935
+ "These routines compute the upper tail of the Gaussian probability function \n" +
1936
+ "Q(x) = (1/\\sqrt{2\\pi}) \\int_x^\\infty dt \\exp(-t^2/2)\n" +
1937
+ "Exceptional Return Values: none"},
1938
+ {:func_name=>"gsl_sf_erf_Z",
1939
+ :func_type=>"double",
1940
+ :args=>[["double", "x"]],
1941
+ :desc=>
1942
+ "These routines compute the Gaussian probability density function \n" +
1943
+ "Z(x) = (1/\\sqrt{2\\pi}) \\exp(-x^2/2)"},
1944
+ {:func_name=>"gsl_sf_erf_Z_e",
1945
+ :func_type=>"int",
1946
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1947
+ :desc=>
1948
+ "These routines compute the Gaussian probability density function \n" +
1949
+ "Z(x) = (1/\\sqrt{2\\pi}) \\exp(-x^2/2)"},
1950
+ {:func_name=>"gsl_sf_erf_e",
1951
+ :func_type=>"int",
1952
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1953
+ :desc=>
1954
+ "These routines compute the error function \\erf(x),\n" +
1955
+ "where\n" +
1956
+ "\\erf(x) = (2/\\sqrt{\\pi}) \\int_0^x dt \\exp(-t^2).\n" +
1957
+ "Exceptional Return Values: none"},
1958
+ {:func_name=>"gsl_sf_erfc",
1959
+ :func_type=>"double",
1960
+ :args=>[["double", "x"]],
1961
+ :desc=>
1962
+ "These routines compute the complementary error function \n" +
1963
+ "\\erfc(x) = 1 - \\erf(x) = (2/\\sqrt{\\pi}) \\int_x^\\infty \\exp(-t^2)\n" +
1964
+ "Exceptional Return Values: none"},
1965
+ {:func_name=>"gsl_sf_erfc_e",
1966
+ :func_type=>"int",
1967
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
1968
+ :desc=>
1969
+ "These routines compute the complementary error function \n" +
1970
+ "\\erfc(x) = 1 - \\erf(x) = (2/\\sqrt{\\pi}) \\int_x^\\infty \\exp(-t^2)\n" +
1971
+ "Exceptional Return Values: none"},
1972
+ {:func_name=>"gsl_sf_eta",
1973
+ :func_type=>"double",
1974
+ :args=>[["double", "s"]],
1975
+ :desc=>
1976
+ "These routines compute the eta function \\eta(s) for arbitrary s.\n" +
1977
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
1978
+ {:func_name=>"gsl_sf_eta_e",
1979
+ :func_type=>"int",
1980
+ :args=>[["double", "s"], ["gsl_sf_result *", "result"]],
1981
+ :desc=>
1982
+ "These routines compute the eta function \\eta(s) for arbitrary s.\n" +
1983
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
1984
+ {:func_name=>"gsl_sf_eta_int",
1985
+ :func_type=>"double",
1986
+ :args=>[["int", "n"]],
1987
+ :desc=>
1988
+ "These routines compute the eta function \\eta(n) for integer n.\n" +
1989
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
1990
+ {:func_name=>"gsl_sf_eta_int_e",
1991
+ :func_type=>"int",
1992
+ :args=>[["int", "n"], ["gsl_sf_result *", "result"]],
1993
+ :desc=>
1994
+ "These routines compute the eta function \\eta(n) for integer n.\n" +
1995
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
1996
+ {:func_name=>"gsl_sf_exp",
1997
+ :func_type=>"double",
1998
+ :args=>[["double", "x"]],
1999
+ :desc=>
2000
+ "These routines provide an exponential function \\exp(x) using GSL\n" +
2001
+ "semantics and error checking.\n" +
2002
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
2003
+ {:func_name=>"gsl_sf_exp_e",
2004
+ :func_type=>"int",
2005
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2006
+ :desc=>
2007
+ "These routines provide an exponential function \\exp(x) using GSL\n" +
2008
+ "semantics and error checking.\n" +
2009
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
2010
+ {:func_name=>"gsl_sf_exp_e10_e",
2011
+ :func_type=>"int",
2012
+ :args=>[["double", "x"], ["gsl_sf_result_e10 *", "result"]],
2013
+ :desc=>
2014
+ "This function computes the exponential \\exp(x) using the\n" +
2015
+ ":type:`gsl_sf_result_e10` type to return a result with extended range.\n" +
2016
+ "This function may be useful if the value of \\exp(x) would\n" +
2017
+ "overflow the numeric range of double.\n" +
2018
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
2019
+ {:func_name=>"gsl_sf_exp_err_e",
2020
+ :func_type=>"int",
2021
+ :args=>[["double", "x"], ["double", "dx"], ["gsl_sf_result *", "result"]],
2022
+ :desc=>
2023
+ "This function exponentiates x with an associated absolute error\n" +
2024
+ "dx.\n" +
2025
+ "Exceptional Return Values: "},
2026
+ {:func_name=>"gsl_sf_exp_err_e10_e",
2027
+ :func_type=>"int",
2028
+ :args=>
2029
+ [["double", "x"], ["double", "dx"], ["gsl_sf_result_e10 *", "result"]],
2030
+ :desc=>
2031
+ "This function exponentiates a quantity x with an associated absolute \n" +
2032
+ "error dx using the :type:`gsl_sf_result_e10` type to return a result with\n" +
2033
+ "extended range.\n" +
2034
+ "Exceptional Return Values: "},
2035
+ {:func_name=>"gsl_sf_exp_mult",
2036
+ :func_type=>"double",
2037
+ :args=>[["double", "x"], ["double", "y"]],
2038
+ :desc=>
2039
+ "These routines exponentiate x and multiply by the factor y\n" +
2040
+ "to return the product y \\exp(x).\n" +
2041
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
2042
+ {:func_name=>"gsl_sf_exp_mult_e",
2043
+ :func_type=>"int",
2044
+ :args=>[["double", "x"], ["double", "y"], ["gsl_sf_result *", "result"]],
2045
+ :desc=>
2046
+ "These routines exponentiate x and multiply by the factor y\n" +
2047
+ "to return the product y \\exp(x).\n" +
2048
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
2049
+ {:func_name=>"gsl_sf_exp_mult_e10_e",
2050
+ :func_type=>"int",
2051
+ :args=>
2052
+ [["const double", "x"],
2053
+ ["const double", "y"],
2054
+ ["gsl_sf_result_e10 *", "result"]],
2055
+ :desc=>
2056
+ "This function computes the product y \\exp(x) using the\n" +
2057
+ ":type:`gsl_sf_result_e10` type to return a result with extended numeric\n" +
2058
+ "range.\n" +
2059
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
2060
+ {:func_name=>"gsl_sf_exp_mult_err_e",
2061
+ :func_type=>"int",
2062
+ :args=>
2063
+ [["double", "x"],
2064
+ ["double", "dx"],
2065
+ ["double", "y"],
2066
+ ["double", "dy"],
2067
+ ["gsl_sf_result *", "result"]],
2068
+ :desc=>
2069
+ "This routine computes the product y \\exp(x) for the quantities\n" +
2070
+ "x, y with associated absolute errors dx, dy.\n" +
2071
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
2072
+ {:func_name=>"gsl_sf_exp_mult_err_e10_e",
2073
+ :func_type=>"int",
2074
+ :args=>
2075
+ [["double", "x"],
2076
+ ["double", "dx"],
2077
+ ["double", "y"],
2078
+ ["double", "dy"],
2079
+ ["gsl_sf_result_e10 *", "result"]],
2080
+ :desc=>
2081
+ "This routine computes the product y \\exp(x) for the quantities\n" +
2082
+ "x, y with associated absolute errors dx, dy using the\n" +
2083
+ ":type:`gsl_sf_result_e10` type to return a result with extended range.\n" +
2084
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
2085
+ {:func_name=>"gsl_sf_expint_3",
2086
+ :func_type=>"double",
2087
+ :args=>[["double", "x"]],
2088
+ :desc=>
2089
+ "These routines compute the third-order exponential integral\n" +
2090
+ ".. only:: not texinfo\n" +
2091
+ ".. only:: texinfo\n" +
2092
+ "for x \\ge 0.\n" +
2093
+ "Exceptional Return Values: GSL_EDOM"},
2094
+ {:func_name=>"gsl_sf_expint_3_e",
2095
+ :func_type=>"int",
2096
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2097
+ :desc=>
2098
+ "These routines compute the third-order exponential integral\n" +
2099
+ ".. only:: not texinfo\n" +
2100
+ ".. only:: texinfo\n" +
2101
+ "for x \\ge 0.\n" +
2102
+ "Exceptional Return Values: GSL_EDOM"},
2103
+ {:func_name=>"gsl_sf_expint_E1",
2104
+ :func_type=>"double",
2105
+ :args=>[["double", "x"]],
2106
+ :desc=>
2107
+ "These routines compute the exponential integral E_1(x),\n" +
2108
+ ".. math:: E_1(x) := \\Re \\int_1^\\infty dt \\exp(-xt)/t.\n" +
2109
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
2110
+ {:func_name=>"gsl_sf_expint_E1_e",
2111
+ :func_type=>"int",
2112
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2113
+ :desc=>
2114
+ "These routines compute the exponential integral E_1(x),\n" +
2115
+ ".. math:: E_1(x) := \\Re \\int_1^\\infty dt \\exp(-xt)/t.\n" +
2116
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
2117
+ {:func_name=>"gsl_sf_expint_E2",
2118
+ :func_type=>"double",
2119
+ :args=>[["double", "x"]],
2120
+ :desc=>
2121
+ "These routines compute the second-order exponential integral E_2(x),\n" +
2122
+ ".. math:: E_2(x) := \\Re \\int_1^\\infty dt \\exp(-xt)/t^2\n" +
2123
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
2124
+ {:func_name=>"gsl_sf_expint_E2_e",
2125
+ :func_type=>"int",
2126
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2127
+ :desc=>
2128
+ "These routines compute the second-order exponential integral E_2(x),\n" +
2129
+ ".. math:: E_2(x) := \\Re \\int_1^\\infty dt \\exp(-xt)/t^2\n" +
2130
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
2131
+ {:func_name=>"gsl_sf_expint_Ei",
2132
+ :func_type=>"double",
2133
+ :args=>[["double", "x"]],
2134
+ :desc=>
2135
+ "These routines compute the exponential integral Ei(x),\n" +
2136
+ ".. only:: not texinfo\n" +
2137
+ ".. only:: texinfo\n" +
2138
+ "where PV denotes the principal value of the integral.\n" +
2139
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
2140
+ {:func_name=>"gsl_sf_expint_Ei_e",
2141
+ :func_type=>"int",
2142
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2143
+ :desc=>
2144
+ "These routines compute the exponential integral Ei(x),\n" +
2145
+ ".. only:: not texinfo\n" +
2146
+ ".. only:: texinfo\n" +
2147
+ "where PV denotes the principal value of the integral.\n" +
2148
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
2149
+ {:func_name=>"gsl_sf_expint_En",
2150
+ :func_type=>"double",
2151
+ :args=>[["int", "n"], ["double", "x"]],
2152
+ :desc=>
2153
+ "These routines compute the exponential integral E_n(x) of order n, \n" +
2154
+ ".. math:: E_n(x) := \\Re \\int_1^\\infty dt \\exp(-xt)/t^n.\n" +
2155
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
2156
+ {:func_name=>"gsl_sf_expint_En_e",
2157
+ :func_type=>"int",
2158
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
2159
+ :desc=>
2160
+ "These routines compute the exponential integral E_n(x) of order n, \n" +
2161
+ ".. math:: E_n(x) := \\Re \\int_1^\\infty dt \\exp(-xt)/t^n.\n" +
2162
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW"},
2163
+ {:func_name=>"gsl_sf_expm1",
2164
+ :func_type=>"double",
2165
+ :args=>[["double", "x"]],
2166
+ :desc=>
2167
+ "These routines compute the quantity \\exp(x)-1 using an algorithm\n" +
2168
+ "that is accurate for small x.\n" +
2169
+ "Exceptional Return Values: GSL_EOVRFLW"},
2170
+ {:func_name=>"gsl_sf_expm1_e",
2171
+ :func_type=>"int",
2172
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2173
+ :desc=>
2174
+ "These routines compute the quantity \\exp(x)-1 using an algorithm\n" +
2175
+ "that is accurate for small x.\n" +
2176
+ "Exceptional Return Values: GSL_EOVRFLW"},
2177
+ {:func_name=>"gsl_sf_exprel",
2178
+ :func_type=>"double",
2179
+ :args=>[["double", "x"]],
2180
+ :desc=>
2181
+ "These routines compute the quantity (\\exp(x)-1)/x using an\n" +
2182
+ "algorithm that is accurate for small x. For small x the\n" +
2183
+ "algorithm is based on the expansion\n" +
2184
+ "(\\exp(x)-1)/x = 1 + x/2 + x^2/(2*3) + x^3/(2*3*4) + \\dots.\n" +
2185
+ "Exceptional Return Values: GSL_EOVRFLW"},
2186
+ {:func_name=>"gsl_sf_exprel_2",
2187
+ :func_type=>"double",
2188
+ :args=>[["double", "x"]],
2189
+ :desc=>
2190
+ "These routines compute the quantity 2(\\exp(x)-1-x)/x^2 using an\n" +
2191
+ "algorithm that is accurate for small x. For small x the\n" +
2192
+ "algorithm is based on the expansion\n" +
2193
+ "2(\\exp(x)-1-x)/x^2 = 1 + x/3 + x^2/(3*4) + x^3/(3*4*5) + \\dots.\n" +
2194
+ "Exceptional Return Values: GSL_EOVRFLW"},
2195
+ {:func_name=>"gsl_sf_exprel_2_e",
2196
+ :func_type=>"int",
2197
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2198
+ :desc=>
2199
+ "These routines compute the quantity 2(\\exp(x)-1-x)/x^2 using an\n" +
2200
+ "algorithm that is accurate for small x. For small x the\n" +
2201
+ "algorithm is based on the expansion\n" +
2202
+ "2(\\exp(x)-1-x)/x^2 = 1 + x/3 + x^2/(3*4) + x^3/(3*4*5) + \\dots.\n" +
2203
+ "Exceptional Return Values: GSL_EOVRFLW"},
2204
+ {:func_name=>"gsl_sf_exprel_e",
2205
+ :func_type=>"int",
2206
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2207
+ :desc=>
2208
+ "These routines compute the quantity (\\exp(x)-1)/x using an\n" +
2209
+ "algorithm that is accurate for small x. For small x the\n" +
2210
+ "algorithm is based on the expansion\n" +
2211
+ "(\\exp(x)-1)/x = 1 + x/2 + x^2/(2*3) + x^3/(2*3*4) + \\dots.\n" +
2212
+ "Exceptional Return Values: GSL_EOVRFLW"},
2213
+ {:func_name=>"gsl_sf_exprel_n",
2214
+ :func_type=>"double",
2215
+ :args=>[["int", "n"], ["double", "x"]],
2216
+ :desc=>
2217
+ "These routines compute the N-relative exponential, which is the\n" +
2218
+ "n-th generalization of the functions gsl_sf_exprel and\n" +
2219
+ "gsl_sf_exprel_2. The N-relative exponential is given by,\n" +
2220
+ ".. only:: not texinfo\n" +
2221
+ ".. only:: texinfo\n" +
2222
+ "Exceptional Return Values: "},
2223
+ {:func_name=>"gsl_sf_exprel_n_e",
2224
+ :func_type=>"int",
2225
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
2226
+ :desc=>
2227
+ "These routines compute the N-relative exponential, which is the\n" +
2228
+ "n-th generalization of the functions gsl_sf_exprel and\n" +
2229
+ "gsl_sf_exprel_2. The N-relative exponential is given by,\n" +
2230
+ ".. only:: not texinfo\n" +
2231
+ ".. only:: texinfo\n" +
2232
+ "Exceptional Return Values: "},
2233
+ {:func_name=>"gsl_sf_fact",
2234
+ :func_type=>"double",
2235
+ :args=>[["unsigned int", "n"]],
2236
+ :desc=>
2237
+ "These routines compute the factorial n!. The factorial is\n" +
2238
+ "related to the Gamma function by n! = \\Gamma(n+1).\n" +
2239
+ "The maximum value of n such that n! is not\n" +
2240
+ "considered an overflow is given by the macro GSL_SF_FACT_NMAX\n" +
2241
+ "and is 170."},
2242
+ {:func_name=>"gsl_sf_fact_e",
2243
+ :func_type=>"int",
2244
+ :args=>[["unsigned int", "n"], ["gsl_sf_result *", "result"]],
2245
+ :desc=>
2246
+ "These routines compute the factorial n!. The factorial is\n" +
2247
+ "related to the Gamma function by n! = \\Gamma(n+1).\n" +
2248
+ "The maximum value of n such that n! is not\n" +
2249
+ "considered an overflow is given by the macro GSL_SF_FACT_NMAX\n" +
2250
+ "and is 170."},
2251
+ {:func_name=>"gsl_sf_fermi_dirac_0",
2252
+ :func_type=>"double",
2253
+ :args=>[["double", "x"]],
2254
+ :desc=>
2255
+ "These routines compute the complete Fermi-Dirac integral with an index of 0. \n" +
2256
+ "This integral is given by F_0(x) = \\ln(1 + e^x).\n" +
2257
+ "Exceptional Return Values: GSL_EUNDRFLW"},
2258
+ {:func_name=>"gsl_sf_fermi_dirac_0_e",
2259
+ :func_type=>"int",
2260
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2261
+ :desc=>
2262
+ "These routines compute the complete Fermi-Dirac integral with an index of 0. \n" +
2263
+ "This integral is given by F_0(x) = \\ln(1 + e^x).\n" +
2264
+ "Exceptional Return Values: GSL_EUNDRFLW"},
2265
+ {:func_name=>"gsl_sf_fermi_dirac_1",
2266
+ :func_type=>"double",
2267
+ :args=>[["double", "x"]],
2268
+ :desc=>
2269
+ "These routines compute the complete Fermi-Dirac integral with an index of 1,\n" +
2270
+ "F_1(x) = \\int_0^\\infty dt (t /(\\exp(t-x)+1)).\n" +
2271
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2272
+ {:func_name=>"gsl_sf_fermi_dirac_1_e",
2273
+ :func_type=>"int",
2274
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2275
+ :desc=>
2276
+ "These routines compute the complete Fermi-Dirac integral with an index of 1,\n" +
2277
+ "F_1(x) = \\int_0^\\infty dt (t /(\\exp(t-x)+1)).\n" +
2278
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2279
+ {:func_name=>"gsl_sf_fermi_dirac_2",
2280
+ :func_type=>"double",
2281
+ :args=>[["double", "x"]],
2282
+ :desc=>
2283
+ "These routines compute the complete Fermi-Dirac integral with an index\n" +
2284
+ "of 2,\n" +
2285
+ "F_2(x) = (1/2) \\int_0^\\infty dt (t^2 /(\\exp(t-x)+1)).\n" +
2286
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2287
+ {:func_name=>"gsl_sf_fermi_dirac_2_e",
2288
+ :func_type=>"int",
2289
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2290
+ :desc=>
2291
+ "These routines compute the complete Fermi-Dirac integral with an index\n" +
2292
+ "of 2,\n" +
2293
+ "F_2(x) = (1/2) \\int_0^\\infty dt (t^2 /(\\exp(t-x)+1)).\n" +
2294
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2295
+ {:func_name=>"gsl_sf_fermi_dirac_3half",
2296
+ :func_type=>"double",
2297
+ :args=>[["double", "x"]],
2298
+ :desc=>
2299
+ "These routines compute the complete Fermi-Dirac integral \n" +
2300
+ "F_{3/2}(x).\n" +
2301
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2302
+ {:func_name=>"gsl_sf_fermi_dirac_3half_e",
2303
+ :func_type=>"int",
2304
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2305
+ :desc=>
2306
+ "These routines compute the complete Fermi-Dirac integral \n" +
2307
+ "F_{3/2}(x).\n" +
2308
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2309
+ {:func_name=>"gsl_sf_fermi_dirac_half",
2310
+ :func_type=>"double",
2311
+ :args=>[["double", "x"]],
2312
+ :desc=>
2313
+ "These routines compute the complete Fermi-Dirac integral \n" +
2314
+ "F_{1/2}(x).\n" +
2315
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2316
+ {:func_name=>"gsl_sf_fermi_dirac_half_e",
2317
+ :func_type=>"int",
2318
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2319
+ :desc=>
2320
+ "These routines compute the complete Fermi-Dirac integral \n" +
2321
+ "F_{1/2}(x).\n" +
2322
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2323
+ {:func_name=>"gsl_sf_fermi_dirac_inc_0",
2324
+ :func_type=>"double",
2325
+ :args=>[["double", "x"], ["double", "b"]],
2326
+ :desc=>
2327
+ "These routines compute the incomplete Fermi-Dirac integral with an index\n" +
2328
+ "of zero,\n" +
2329
+ "F_0(x,b) = \\ln(1 + e^{b-x}) - (b-x)\n" +
2330
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EDOM"},
2331
+ {:func_name=>"gsl_sf_fermi_dirac_inc_0_e",
2332
+ :func_type=>"int",
2333
+ :args=>[["double", "x"], ["double", "b"], ["gsl_sf_result *", "result"]],
2334
+ :desc=>
2335
+ "These routines compute the incomplete Fermi-Dirac integral with an index\n" +
2336
+ "of zero,\n" +
2337
+ "F_0(x,b) = \\ln(1 + e^{b-x}) - (b-x)\n" +
2338
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EDOM"},
2339
+ {:func_name=>"gsl_sf_fermi_dirac_int",
2340
+ :func_type=>"double",
2341
+ :args=>[["int", "j"], ["double", "x"]],
2342
+ :desc=>
2343
+ "These routines compute the complete Fermi-Dirac integral with an integer\n" +
2344
+ "index of j,\n" +
2345
+ "F_j(x) = (1/\\Gamma(j+1)) \\int_0^\\infty dt (t^j /(\\exp(t-x)+1)).\n" +
2346
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2347
+ {:func_name=>"gsl_sf_fermi_dirac_int_e",
2348
+ :func_type=>"int",
2349
+ :args=>[["int", "j"], ["double", "x"], ["gsl_sf_result *", "result"]],
2350
+ :desc=>
2351
+ "These routines compute the complete Fermi-Dirac integral with an integer\n" +
2352
+ "index of j,\n" +
2353
+ "F_j(x) = (1/\\Gamma(j+1)) \\int_0^\\infty dt (t^j /(\\exp(t-x)+1)).\n" +
2354
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2355
+ {:func_name=>"gsl_sf_fermi_dirac_m1",
2356
+ :func_type=>"double",
2357
+ :args=>[["double", "x"]],
2358
+ :desc=>
2359
+ "These routines compute the complete Fermi-Dirac integral with an index of -1. \n" +
2360
+ "This integral is given by \n" +
2361
+ "F_{-1}(x) = e^x / (1 + e^x).\n" +
2362
+ "Exceptional Return Values: GSL_EUNDRFLW"},
2363
+ {:func_name=>"gsl_sf_fermi_dirac_m1_e",
2364
+ :func_type=>"int",
2365
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2366
+ :desc=>
2367
+ "These routines compute the complete Fermi-Dirac integral with an index of -1. \n" +
2368
+ "This integral is given by \n" +
2369
+ "F_{-1}(x) = e^x / (1 + e^x).\n" +
2370
+ "Exceptional Return Values: GSL_EUNDRFLW"},
2371
+ {:func_name=>"gsl_sf_fermi_dirac_mhalf",
2372
+ :func_type=>"double",
2373
+ :args=>[["double", "x"]],
2374
+ :desc=>
2375
+ "These routines compute the complete Fermi-Dirac integral \n" +
2376
+ "F_{-1/2}(x).\n" +
2377
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2378
+ {:func_name=>"gsl_sf_fermi_dirac_mhalf_e",
2379
+ :func_type=>"int",
2380
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2381
+ :desc=>
2382
+ "These routines compute the complete Fermi-Dirac integral \n" +
2383
+ "F_{-1/2}(x).\n" +
2384
+ "Exceptional Return Values: GSL_EUNDRFLW, GSL_EOVRFLW"},
2385
+ {:func_name=>"gsl_sf_gamma",
2386
+ :func_type=>"double",
2387
+ :args=>[["double", "x"]],
2388
+ :desc=>
2389
+ "These routines compute the Gamma function \\Gamma(x), subject to x\n" +
2390
+ "not being a negative integer or zero. The function is computed using the real\n" +
2391
+ "Lanczos method. The maximum value of x such that \\Gamma(x) is not\n" +
2392
+ "considered an overflow is given by the macro GSL_SF_GAMMA_XMAX\n" +
2393
+ "and is 171.0."},
2394
+ {:func_name=>"gsl_sf_gamma_e",
2395
+ :func_type=>"int",
2396
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2397
+ :desc=>
2398
+ "These routines compute the Gamma function \\Gamma(x), subject to x\n" +
2399
+ "not being a negative integer or zero. The function is computed using the real\n" +
2400
+ "Lanczos method. The maximum value of x such that \\Gamma(x) is not\n" +
2401
+ "considered an overflow is given by the macro GSL_SF_GAMMA_XMAX\n" +
2402
+ "and is 171.0."},
2403
+ {:func_name=>"gsl_sf_gamma_inc",
2404
+ :func_type=>"double",
2405
+ :args=>[["double", "a"], ["double", "x"]],
2406
+ :desc=>
2407
+ "These functions compute the unnormalized incomplete Gamma Function\n" +
2408
+ "\\Gamma(a,x) = \\int_x^\\infty dt t^{(a-1)} \\exp(-t)\n" +
2409
+ "for a real and x \\ge 0."},
2410
+ {:func_name=>"gsl_sf_gamma_inc_P",
2411
+ :func_type=>"double",
2412
+ :args=>[["double", "a"], ["double", "x"]],
2413
+ :desc=>
2414
+ "These routines compute the complementary normalized incomplete Gamma Function\n" +
2415
+ "P(a,x) = 1 - Q(a,x) = 1/\\Gamma(a) \\int_0^x dt t^{(a-1)} \\exp(-t)\n" +
2416
+ "for a > 0, x \\ge 0.\n" +
2417
+ "Note that Abramowitz & Stegun call P(a,x) the incomplete gamma\n" +
2418
+ "function (section 6.5)."},
2419
+ {:func_name=>"gsl_sf_gamma_inc_P_e",
2420
+ :func_type=>"int",
2421
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
2422
+ :desc=>
2423
+ "These routines compute the complementary normalized incomplete Gamma Function\n" +
2424
+ "P(a,x) = 1 - Q(a,x) = 1/\\Gamma(a) \\int_0^x dt t^{(a-1)} \\exp(-t)\n" +
2425
+ "for a > 0, x \\ge 0.\n" +
2426
+ "Note that Abramowitz & Stegun call P(a,x) the incomplete gamma\n" +
2427
+ "function (section 6.5)."},
2428
+ {:func_name=>"gsl_sf_gamma_inc_Q",
2429
+ :func_type=>"double",
2430
+ :args=>[["double", "a"], ["double", "x"]],
2431
+ :desc=>
2432
+ "These routines compute the normalized incomplete Gamma Function\n" +
2433
+ "Q(a,x) = 1/\\Gamma(a) \\int_x^\\infty dt t^{(a-1)} \\exp(-t)\n" +
2434
+ "for a > 0, x \\ge 0."},
2435
+ {:func_name=>"gsl_sf_gamma_inc_Q_e",
2436
+ :func_type=>"int",
2437
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
2438
+ :desc=>
2439
+ "These routines compute the normalized incomplete Gamma Function\n" +
2440
+ "Q(a,x) = 1/\\Gamma(a) \\int_x^\\infty dt t^{(a-1)} \\exp(-t)\n" +
2441
+ "for a > 0, x \\ge 0."},
2442
+ {:func_name=>"gsl_sf_gamma_inc_e",
2443
+ :func_type=>"int",
2444
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
2445
+ :desc=>
2446
+ "These functions compute the unnormalized incomplete Gamma Function\n" +
2447
+ "\\Gamma(a,x) = \\int_x^\\infty dt t^{(a-1)} \\exp(-t)\n" +
2448
+ "for a real and x \\ge 0."},
2449
+ {:func_name=>"gsl_sf_gammainv",
2450
+ :func_type=>"double",
2451
+ :args=>[["double", "x"]],
2452
+ :desc=>
2453
+ "These routines compute the reciprocal of the gamma function,\n" +
2454
+ "1/\\Gamma(x) using the real Lanczos method."},
2455
+ {:func_name=>"gsl_sf_gammainv_e",
2456
+ :func_type=>"int",
2457
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2458
+ :desc=>
2459
+ "These routines compute the reciprocal of the gamma function,\n" +
2460
+ "1/\\Gamma(x) using the real Lanczos method."},
2461
+ {:func_name=>"gsl_sf_gammastar",
2462
+ :func_type=>"double",
2463
+ :args=>[["double", "x"]],
2464
+ :desc=>
2465
+ "These routines compute the regulated Gamma Function \\Gamma^*(x)\n" +
2466
+ "for x > 0. The regulated gamma function is given by,\n" +
2467
+ ".. only:: not texinfo\n" +
2468
+ ".. only:: texinfo\n" +
2469
+ "and is a useful suggestion of Temme."},
2470
+ {:func_name=>"gsl_sf_gammastar_e",
2471
+ :func_type=>"int",
2472
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2473
+ :desc=>
2474
+ "These routines compute the regulated Gamma Function \\Gamma^*(x)\n" +
2475
+ "for x > 0. The regulated gamma function is given by,\n" +
2476
+ ".. only:: not texinfo\n" +
2477
+ ".. only:: texinfo\n" +
2478
+ "and is a useful suggestion of Temme."},
2479
+ {:func_name=>"gsl_sf_gegenpoly_1",
2480
+ :func_type=>"double",
2481
+ :args=>[["double", "lambda"], ["double", "x"]],
2482
+ :desc=>
2483
+ "These functions evaluate the Gegenbauer polynomials\n" +
2484
+ "C^{(\\lambda)}_n(x) using explicit\n" +
2485
+ "representations for n = 1, 2, 3.\n" +
2486
+ "Exceptional Return Values: none"},
2487
+ {:func_name=>"gsl_sf_gegenpoly_1_e",
2488
+ :func_type=>"int",
2489
+ :args=>
2490
+ [["double", "lambda"], ["double", "x"], ["gsl_sf_result *", "result"]],
2491
+ :desc=>
2492
+ "These functions evaluate the Gegenbauer polynomials\n" +
2493
+ "C^{(\\lambda)}_n(x) using explicit\n" +
2494
+ "representations for n = 1, 2, 3.\n" +
2495
+ "Exceptional Return Values: none"},
2496
+ {:func_name=>"gsl_sf_gegenpoly_2",
2497
+ :func_type=>"double",
2498
+ :args=>[["double", "lambda"], ["double", "x"]],
2499
+ :desc=>
2500
+ "These functions evaluate the Gegenbauer polynomials\n" +
2501
+ "C^{(\\lambda)}_n(x) using explicit\n" +
2502
+ "representations for n = 1, 2, 3.\n" +
2503
+ "Exceptional Return Values: none"},
2504
+ {:func_name=>"gsl_sf_gegenpoly_2_e",
2505
+ :func_type=>"int",
2506
+ :args=>
2507
+ [["double", "lambda"], ["double", "x"], ["gsl_sf_result *", "result"]],
2508
+ :desc=>
2509
+ "These functions evaluate the Gegenbauer polynomials\n" +
2510
+ "C^{(\\lambda)}_n(x) using explicit\n" +
2511
+ "representations for n = 1, 2, 3.\n" +
2512
+ "Exceptional Return Values: none"},
2513
+ {:func_name=>"gsl_sf_gegenpoly_3",
2514
+ :func_type=>"double",
2515
+ :args=>[["double", "lambda"], ["double", "x"]],
2516
+ :desc=>
2517
+ "These functions evaluate the Gegenbauer polynomials\n" +
2518
+ "C^{(\\lambda)}_n(x) using explicit\n" +
2519
+ "representations for n = 1, 2, 3.\n" +
2520
+ "Exceptional Return Values: none"},
2521
+ {:func_name=>"gsl_sf_gegenpoly_3_e",
2522
+ :func_type=>"int",
2523
+ :args=>
2524
+ [["double", "lambda"], ["double", "x"], ["gsl_sf_result *", "result"]],
2525
+ :desc=>
2526
+ "These functions evaluate the Gegenbauer polynomials\n" +
2527
+ "C^{(\\lambda)}_n(x) using explicit\n" +
2528
+ "representations for n = 1, 2, 3.\n" +
2529
+ "Exceptional Return Values: none"},
2530
+ {:func_name=>"gsl_sf_gegenpoly_array",
2531
+ :func_type=>"int",
2532
+ :args=>
2533
+ [["int", "nmax"],
2534
+ ["double", "lambda"],
2535
+ ["double", "x"],
2536
+ ["double", "result_array[]"]],
2537
+ :desc=>
2538
+ "This function computes an array of Gegenbauer polynomials\n" +
2539
+ "C^{(\\lambda)}_n(x)\n" +
2540
+ "for n = 0, 1, 2, \\dots, nmax, subject\n" +
2541
+ "to \\lambda > -1/2, nmax \\ge 0.\n" +
2542
+ "Exceptional Return Values: GSL_EDOM"},
2543
+ {:func_name=>"gsl_sf_gegenpoly_n",
2544
+ :func_type=>"double",
2545
+ :args=>[["int", "n"], ["double", "lambda"], ["double", "x"]],
2546
+ :desc=>
2547
+ "These functions evaluate the Gegenbauer polynomial C^{(\\lambda)}_n(x)\n" +
2548
+ "for a specific value of n,\n" +
2549
+ "lambda, x subject to \\lambda > -1/2, n \\ge 0.\n" +
2550
+ "Exceptional Return Values: GSL_EDOM"},
2551
+ {:func_name=>"gsl_sf_gegenpoly_n_e",
2552
+ :func_type=>"int",
2553
+ :args=>
2554
+ [["int", "n"],
2555
+ ["double", "lambda"],
2556
+ ["double", "x"],
2557
+ ["gsl_sf_result *", "result"]],
2558
+ :desc=>
2559
+ "These functions evaluate the Gegenbauer polynomial C^{(\\lambda)}_n(x)\n" +
2560
+ "for a specific value of n,\n" +
2561
+ "lambda, x subject to \\lambda > -1/2, n \\ge 0.\n" +
2562
+ "Exceptional Return Values: GSL_EDOM"},
2563
+ {:func_name=>"gsl_sf_hazard",
2564
+ :func_type=>"double",
2565
+ :args=>[["double", "x"]],
2566
+ :desc=>
2567
+ "These routines compute the hazard function for the normal distribution.\n" +
2568
+ "Exceptional Return Values: GSL_EUNDRFLW"},
2569
+ {:func_name=>"gsl_sf_hazard_e",
2570
+ :func_type=>"int",
2571
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
2572
+ :desc=>
2573
+ "These routines compute the hazard function for the normal distribution.\n" +
2574
+ "Exceptional Return Values: GSL_EUNDRFLW"},
2575
+ {:func_name=>"gsl_sf_hermite_func",
2576
+ :func_type=>"double",
2577
+ :args=>[["const int", "n"], ["const double", "x"]],
2578
+ :desc=>
2579
+ "These routines evaluate the Hermite function \\psi_n(x) of order n at position x.\r"},
2580
+ {:func_name=>"gsl_sf_hermite_func_array",
2581
+ :func_type=>"int",
2582
+ :args=>
2583
+ [["const int", "nmax"],
2584
+ ["const double", "x"],
2585
+ ["double *", "result_array"]],
2586
+ :desc=>
2587
+ "This routine evaluates all Hermite functions \\psi_n(x) up to order nmax at position x.\r\n" +
2588
+ "The results are stored in result_array.\r"},
2589
+ {:func_name=>"gsl_sf_hermite_func_der",
2590
+ :func_type=>"double",
2591
+ :args=>[["const int", "m"], ["const int", "n"], ["const double", "x"]],
2592
+ :desc=>
2593
+ "These routines evaluate the m-th derivative of the Hermite function \\psi_n(x) of order n at position x.\r"},
2594
+ {:func_name=>"gsl_sf_hermite_func_der_e",
2595
+ :func_type=>"int",
2596
+ :args=>
2597
+ [["const int", "m"],
2598
+ ["const int", "n"],
2599
+ ["const double", "x"],
2600
+ ["gsl_sf_result *", "result"]],
2601
+ :desc=>
2602
+ "These routines evaluate the m-th derivative of the Hermite function \\psi_n(x) of order n at position x.\r"},
2603
+ {:func_name=>"gsl_sf_hermite_func_e",
2604
+ :func_type=>"int",
2605
+ :args=>
2606
+ [["const int", "n"], ["const double", "x"], ["gsl_sf_result *", "result"]],
2607
+ :desc=>
2608
+ "These routines evaluate the Hermite function \\psi_n(x) of order n at position x.\r"},
2609
+ {:func_name=>"gsl_sf_hermite_func_series",
2610
+ :func_type=>"double",
2611
+ :args=>[["const int", "n"], ["const double", "x"], ["const double *", "a"]],
2612
+ :desc=>
2613
+ "These routines evaluate the series \\sum_{j=0}^n a_j \\psi_j(x) with \\psi_j being\r\n" +
2614
+ "the j-th Hermite function using the Clenshaw algorithm.\r"},
2615
+ {:func_name=>"gsl_sf_hermite_func_series_e",
2616
+ :func_type=>"int",
2617
+ :args=>
2618
+ [["const int", "n"],
2619
+ ["const double", "x"],
2620
+ ["const double *", "a"],
2621
+ ["gsl_sf_result *", "result"]],
2622
+ :desc=>
2623
+ "These routines evaluate the series \\sum_{j=0}^n a_j \\psi_j(x) with \\psi_j being\r\n" +
2624
+ "the j-th Hermite function using the Clenshaw algorithm.\r"},
2625
+ {:func_name=>"gsl_sf_hermite_func_zero",
2626
+ :func_type=>"double",
2627
+ :args=>[["const int", "n"], ["const int", "s"]],
2628
+ :desc=>
2629
+ "These routines evaluate the s-th zero of the Hermite function \\psi_n(x) of order n.\r"},
2630
+ {:func_name=>"gsl_sf_hermite_func_zero_e",
2631
+ :func_type=>"int",
2632
+ :args=>
2633
+ [["const int", "n"], ["const int", "s"], ["gsl_sf_result *", "result"]],
2634
+ :desc=>
2635
+ "These routines evaluate the s-th zero of the Hermite function \\psi_n(x) of order n.\r"},
2636
+ {:func_name=>"gsl_sf_hermite_phys",
2637
+ :func_type=>"double",
2638
+ :args=>[["const int", "n"], ["const double", "x"]],
2639
+ :desc=>
2640
+ "These routines evaluate the physicists' Hermite polynomial H_n(x) of order n at position x.\r"},
2641
+ {:func_name=>"gsl_sf_hermite_phys_array",
2642
+ :func_type=>"int",
2643
+ :args=>
2644
+ [["const int", "nmax"],
2645
+ ["const double", "x"],
2646
+ ["double *", "result_array"]],
2647
+ :desc=>
2648
+ "This routine evaluates all physicists' Hermite polynomials H_n up to order nmax at position x.\r\n" +
2649
+ "The results are stored in result_array.\r"},
2650
+ {:func_name=>"gsl_sf_hermite_phys_array_der",
2651
+ :func_type=>"int",
2652
+ :args=>
2653
+ [["const int", "m"],
2654
+ ["const int", "nmax"],
2655
+ ["const double", "x"],
2656
+ ["double *", "result_array"]],
2657
+ :desc=>
2658
+ "This routine evaluates the m-th derivative of all physicists' Hermite polynomials H_n up to order nmax at position x.\r\n" +
2659
+ "The results are stored in result_array.\r"},
2660
+ {:func_name=>"gsl_sf_hermite_phys_der",
2661
+ :func_type=>"double",
2662
+ :args=>[["const int", "m"], ["const int", "n"], ["const double", "x"]],
2663
+ :desc=>
2664
+ "These routines evaluate the m-th derivative of the physicists' Hermite polynomial H_n(x) of order n at position x.\r"},
2665
+ {:func_name=>"gsl_sf_hermite_phys_der_array",
2666
+ :func_type=>"int",
2667
+ :args=>
2668
+ [["const int", "mmax"],
2669
+ ["const int", "n"],
2670
+ ["const double", "x"],
2671
+ ["double *", "result_array"]],
2672
+ :desc=>
2673
+ "This routine evaluates all derivatives (starting from 0) up to the mmax-th derivative of the\r\n" +
2674
+ "physicists' Hermite polynomial of order n H_n at position x. The results are stored in result_array.\r"},
2675
+ {:func_name=>"gsl_sf_hermite_phys_der_e",
2676
+ :func_type=>"int",
2677
+ :args=>
2678
+ [["const int", "m"],
2679
+ ["const int", "n"],
2680
+ ["const double", "x"],
2681
+ ["gsl_sf_result *", "result"]],
2682
+ :desc=>
2683
+ "These routines evaluate the m-th derivative of the physicists' Hermite polynomial H_n(x) of order n at position x.\r"},
2684
+ {:func_name=>"gsl_sf_hermite_phys_e",
2685
+ :func_type=>"int",
2686
+ :args=>
2687
+ [["const int", "n"], ["const double", "x"], ["gsl_sf_result *", "result"]],
2688
+ :desc=>
2689
+ "These routines evaluate the physicists' Hermite polynomial H_n(x) of order n at position x.\r"},
2690
+ {:func_name=>"gsl_sf_hermite_phys_series",
2691
+ :func_type=>"double",
2692
+ :args=>[["const int", "n"], ["const double", "x"], ["const double *", "a"]],
2693
+ :desc=>
2694
+ "These routines evaluate the series \\sum_{j=0}^n a_j H_j(x) with H_j being\r\n" +
2695
+ "the j-th physicists' Hermite polynomial using the Clenshaw algorithm.\r"},
2696
+ {:func_name=>"gsl_sf_hermite_phys_series_e",
2697
+ :func_type=>"int",
2698
+ :args=>
2699
+ [["const int", "n"],
2700
+ ["const double", "x"],
2701
+ ["const double *", "a"],
2702
+ ["gsl_sf_result *", "result"]],
2703
+ :desc=>
2704
+ "These routines evaluate the series \\sum_{j=0}^n a_j H_j(x) with H_j being\r\n" +
2705
+ "the j-th physicists' Hermite polynomial using the Clenshaw algorithm.\r"},
2706
+ {:func_name=>"gsl_sf_hermite_phys_zero",
2707
+ :func_type=>"double",
2708
+ :args=>[["const int", "n"], ["const int", "s"]],
2709
+ :desc=>
2710
+ "These routines evaluate the s-th zero of the physicists' Hermite polynomial H_n(x) of order n.\r"},
2711
+ {:func_name=>"gsl_sf_hermite_phys_zero_e",
2712
+ :func_type=>"int",
2713
+ :args=>
2714
+ [["const int", "n"], ["const int", "s"], ["gsl_sf_result *", "result"]],
2715
+ :desc=>
2716
+ "These routines evaluate the s-th zero of the physicists' Hermite polynomial H_n(x) of order n.\r"},
2717
+ {:func_name=>"gsl_sf_hermite_prob",
2718
+ :func_type=>"double",
2719
+ :args=>[["const int", "n"], ["const double", "x"]],
2720
+ :desc=>
2721
+ "These routines evaluate the probabilists' Hermite polynomial He_n(x) of order n at position x.\r"},
2722
+ {:func_name=>"gsl_sf_hermite_prob_array",
2723
+ :func_type=>"int",
2724
+ :args=>
2725
+ [["const int", "nmax"],
2726
+ ["const double", "x"],
2727
+ ["double *", "result_array"]],
2728
+ :desc=>
2729
+ "This routine evaluates all probabilists' Hermite polynomials He_n(x) up to order nmax at position x.\r\n" +
2730
+ "The results are stored in result_array.\r"},
2731
+ {:func_name=>"gsl_sf_hermite_prob_array_der",
2732
+ :func_type=>"int",
2733
+ :args=>
2734
+ [["const int", "m"],
2735
+ ["const int", "nmax"],
2736
+ ["const double", "x"],
2737
+ ["double *", "result_array"]],
2738
+ :desc=>
2739
+ "This routine evaluates the m-th derivative of all probabilists' Hermite polynomials He_n(x) up to\r\n" +
2740
+ "order nmax at position x. The results are stored in result_array.\r"},
2741
+ {:func_name=>"gsl_sf_hermite_prob_der",
2742
+ :func_type=>"double",
2743
+ :args=>[["const int", "m"], ["const int", "n"], ["const double", "x"]],
2744
+ :desc=>
2745
+ "These routines evaluate the m-th derivative of the probabilists' Hermite polynomial He_n(x)\r\n" +
2746
+ "of order n at position x.\r"},
2747
+ {:func_name=>"gsl_sf_hermite_prob_der_array",
2748
+ :func_type=>"int",
2749
+ :args=>
2750
+ [["const int", "mmax"],
2751
+ ["const int", "n"],
2752
+ ["const double", "x"],
2753
+ ["double *", "result_array"]],
2754
+ :desc=>
2755
+ "This routine evaluates all derivatives (starting from 0) up to the mmax-th derivative of the probabilists' Hermite\r\n" +
2756
+ "polynomial of order n He_n(x) at position x. The results are stored in result_array.\r"},
2757
+ {:func_name=>"gsl_sf_hermite_prob_der_e",
2758
+ :func_type=>"int",
2759
+ :args=>
2760
+ [["const int", "m"],
2761
+ ["const int", "n"],
2762
+ ["const double", "x"],
2763
+ ["gsl_sf_result *", "result"]],
2764
+ :desc=>
2765
+ "These routines evaluate the m-th derivative of the probabilists' Hermite polynomial He_n(x)\r\n" +
2766
+ "of order n at position x.\r"},
2767
+ {:func_name=>"gsl_sf_hermite_prob_e",
2768
+ :func_type=>"int",
2769
+ :args=>
2770
+ [["const int", "n"], ["const double", "x"], ["gsl_sf_result *", "result"]],
2771
+ :desc=>
2772
+ "These routines evaluate the probabilists' Hermite polynomial He_n(x) of order n at position x.\r"},
2773
+ {:func_name=>"gsl_sf_hermite_prob_series",
2774
+ :func_type=>"double",
2775
+ :args=>[["const int", "n"], ["const double", "x"], ["const double *", "a"]],
2776
+ :desc=>
2777
+ "These routines evaluate the series \\sum_{j=0}^n a_j He_j(x) with He_j being the\r\n" +
2778
+ "j-th probabilists' Hermite polynomial using the Clenshaw algorithm.\r"},
2779
+ {:func_name=>"gsl_sf_hermite_prob_series_e",
2780
+ :func_type=>"int",
2781
+ :args=>
2782
+ [["const int", "n"],
2783
+ ["const double", "x"],
2784
+ ["const double *", "a"],
2785
+ ["gsl_sf_result *", "result"]],
2786
+ :desc=>
2787
+ "These routines evaluate the series \\sum_{j=0}^n a_j He_j(x) with He_j being the\r\n" +
2788
+ "j-th probabilists' Hermite polynomial using the Clenshaw algorithm.\r"},
2789
+ {:func_name=>"gsl_sf_hermite_prob_zero",
2790
+ :func_type=>"double",
2791
+ :args=>[["const int", "n"], ["const int", "s"]],
2792
+ :desc=>
2793
+ "These routines evaluate the s-th zero of the probabilists' Hermite polynomial He_n(x) of order n.\r"},
2794
+ {:func_name=>"gsl_sf_hermite_prob_zero_e",
2795
+ :func_type=>"int",
2796
+ :args=>
2797
+ [["const int", "n"], ["const int", "s"], ["gsl_sf_result *", "result"]],
2798
+ :desc=>
2799
+ "These routines evaluate the s-th zero of the probabilists' Hermite polynomial He_n(x) of order n.\r"},
2800
+ {:func_name=>"gsl_sf_hydrogenicR",
2801
+ :func_type=>"double",
2802
+ :args=>[["int", "n"], ["int", "l"], ["double", "Z"], ["double", "r"]],
2803
+ :desc=>
2804
+ "These routines compute the n-th normalized hydrogenic bound state\n" +
2805
+ "radial wavefunction,\n" +
2806
+ ".. only:: not texinfo\n" +
2807
+ ".. only:: texinfo\n" +
2808
+ "where L^a_b(x) is the :ref:`generalized Laguerre polynomial <laguerre-functions>`.\n" +
2809
+ "The normalization is chosen such that the wavefunction \\psi is\n" +
2810
+ "given by \\psi(n,l,r) = R_n Y_{lm}. "},
2811
+ {:func_name=>"gsl_sf_hydrogenicR_1",
2812
+ :func_type=>"double",
2813
+ :args=>[["double", "Z"], ["double", "r"]],
2814
+ :desc=>
2815
+ "These routines compute the lowest-order normalized hydrogenic bound\n" +
2816
+ "state radial wavefunction\n" +
2817
+ "R_1 := 2Z \\sqrt{Z} \\exp(-Z r)."},
2818
+ {:func_name=>"gsl_sf_hydrogenicR_1_e",
2819
+ :func_type=>"int",
2820
+ :args=>[["double", "Z"], ["double", "r"], ["gsl_sf_result *", "result"]],
2821
+ :desc=>
2822
+ "These routines compute the lowest-order normalized hydrogenic bound\n" +
2823
+ "state radial wavefunction\n" +
2824
+ "R_1 := 2Z \\sqrt{Z} \\exp(-Z r)."},
2825
+ {:func_name=>"gsl_sf_hydrogenicR_e",
2826
+ :func_type=>"int",
2827
+ :args=>
2828
+ [["int", "n"],
2829
+ ["int", "l"],
2830
+ ["double", "Z"],
2831
+ ["double", "r"],
2832
+ ["gsl_sf_result *", "result"]],
2833
+ :desc=>
2834
+ "These routines compute the n-th normalized hydrogenic bound state\n" +
2835
+ "radial wavefunction,\n" +
2836
+ ".. only:: not texinfo\n" +
2837
+ ".. only:: texinfo\n" +
2838
+ "where L^a_b(x) is the :ref:`generalized Laguerre polynomial <laguerre-functions>`.\n" +
2839
+ "The normalization is chosen such that the wavefunction \\psi is\n" +
2840
+ "given by \\psi(n,l,r) = R_n Y_{lm}. "},
2841
+ {:func_name=>"gsl_sf_hyperg_0F1",
2842
+ :func_type=>"double",
2843
+ :args=>[["double", "c"], ["double", "x"]],
2844
+ :desc=>"These routines compute the hypergeometric function {}_0F_1(c,x)."},
2845
+ {:func_name=>"gsl_sf_hyperg_0F1_e",
2846
+ :func_type=>"int",
2847
+ :args=>[["double", "c"], ["double", "x"], ["gsl_sf_result *", "result"]],
2848
+ :desc=>"These routines compute the hypergeometric function {}_0F_1(c,x)."},
2849
+ {:func_name=>"gsl_sf_hyperg_1F1",
2850
+ :func_type=>"double",
2851
+ :args=>[["double", "a"], ["double", "b"], ["double", "x"]],
2852
+ :desc=>
2853
+ "These routines compute the confluent hypergeometric function\n" +
2854
+ "{}_1F_1(a,b,x) = M(a,b,x)\n" +
2855
+ "for general parameters a, b."},
2856
+ {:func_name=>"gsl_sf_hyperg_1F1_e",
2857
+ :func_type=>"int",
2858
+ :args=>
2859
+ [["double", "a"],
2860
+ ["double", "b"],
2861
+ ["double", "x"],
2862
+ ["gsl_sf_result *", "result"]],
2863
+ :desc=>
2864
+ "These routines compute the confluent hypergeometric function\n" +
2865
+ "{}_1F_1(a,b,x) = M(a,b,x)\n" +
2866
+ "for general parameters a, b."},
2867
+ {:func_name=>"gsl_sf_hyperg_1F1_int",
2868
+ :func_type=>"double",
2869
+ :args=>[["int", "m"], ["int", "n"], ["double", "x"]],
2870
+ :desc=>
2871
+ "These routines compute the confluent hypergeometric function\n" +
2872
+ "{}_1F_1(m,n,x) = M(m,n,x)\n" +
2873
+ "for integer parameters m, n."},
2874
+ {:func_name=>"gsl_sf_hyperg_1F1_int_e",
2875
+ :func_type=>"int",
2876
+ :args=>
2877
+ [["int", "m"],
2878
+ ["int", "n"],
2879
+ ["double", "x"],
2880
+ ["gsl_sf_result *", "result"]],
2881
+ :desc=>
2882
+ "These routines compute the confluent hypergeometric function\n" +
2883
+ "{}_1F_1(m,n,x) = M(m,n,x)\n" +
2884
+ "for integer parameters m, n."},
2885
+ {:func_name=>"gsl_sf_hyperg_2F0",
2886
+ :func_type=>"double",
2887
+ :args=>[["double", "a"], ["double", "b"], ["double", "x"]],
2888
+ :desc=>
2889
+ "These routines compute the hypergeometric function {}_2F_0(a,b,x)\n" +
2890
+ "The series representation\n" +
2891
+ "is a divergent hypergeometric series. However, for x < 0 we\n" +
2892
+ "have \n" +
2893
+ "{}_2F_0(a,b,x) = (-1/x)^a U(a,1+a-b,-1/x)"},
2894
+ {:func_name=>"gsl_sf_hyperg_2F0_e",
2895
+ :func_type=>"int",
2896
+ :args=>
2897
+ [["double", "a"],
2898
+ ["double", "b"],
2899
+ ["double", "x"],
2900
+ ["gsl_sf_result *", "result"]],
2901
+ :desc=>
2902
+ "These routines compute the hypergeometric function {}_2F_0(a,b,x)\n" +
2903
+ "The series representation\n" +
2904
+ "is a divergent hypergeometric series. However, for x < 0 we\n" +
2905
+ "have \n" +
2906
+ "{}_2F_0(a,b,x) = (-1/x)^a U(a,1+a-b,-1/x)"},
2907
+ {:func_name=>"gsl_sf_hyperg_2F1",
2908
+ :func_type=>"double",
2909
+ :args=>[["double", "a"], ["double", "b"], ["double", "c"], ["double", "x"]],
2910
+ :desc=>
2911
+ "These routines compute the Gauss hypergeometric function \n" +
2912
+ "{}_2F_1(a,b,c,x) = F(a,b,c,x) for |x| < 1.\n" +
2913
+ "If the arguments (a,b,c,x) are too close to a singularity then\n" +
2914
+ "the function can return the error code GSL_EMAXITER when the\n" +
2915
+ "series approximation converges too slowly. This occurs in the region of\n" +
2916
+ "x = 1, c - a - b = m for integer m."},
2917
+ {:func_name=>"gsl_sf_hyperg_2F1_conj",
2918
+ :func_type=>"double",
2919
+ :args=>
2920
+ [["double", "aR"], ["double", "aI"], ["double", "c"], ["double", "x"]],
2921
+ :desc=>
2922
+ "These routines compute the Gauss hypergeometric function\n" +
2923
+ "{}_2F_1(a_R + i a_I, aR - i aI, c, x)\n" +
2924
+ "with complex parameters for |x| < 1."},
2925
+ {:func_name=>"gsl_sf_hyperg_2F1_conj_e",
2926
+ :func_type=>"int",
2927
+ :args=>
2928
+ [["double", "aR"],
2929
+ ["double", "aI"],
2930
+ ["double", "c"],
2931
+ ["double", "x"],
2932
+ ["gsl_sf_result *", "result"]],
2933
+ :desc=>
2934
+ "These routines compute the Gauss hypergeometric function\n" +
2935
+ "{}_2F_1(a_R + i a_I, aR - i aI, c, x)\n" +
2936
+ "with complex parameters for |x| < 1."},
2937
+ {:func_name=>"gsl_sf_hyperg_2F1_conj_renorm",
2938
+ :func_type=>"double",
2939
+ :args=>
2940
+ [["double", "aR"], ["double", "aI"], ["double", "c"], ["double", "x"]],
2941
+ :desc=>
2942
+ "These routines compute the renormalized Gauss hypergeometric function\n" +
2943
+ "{}_2F_1(a_R + i a_I, a_R - i a_I, c, x) / \\Gamma(c) for |x| < 1."},
2944
+ {:func_name=>"gsl_sf_hyperg_2F1_conj_renorm_e",
2945
+ :func_type=>"int",
2946
+ :args=>
2947
+ [["double", "aR"],
2948
+ ["double", "aI"],
2949
+ ["double", "c"],
2950
+ ["double", "x"],
2951
+ ["gsl_sf_result *", "result"]],
2952
+ :desc=>
2953
+ "These routines compute the renormalized Gauss hypergeometric function\n" +
2954
+ "{}_2F_1(a_R + i a_I, a_R - i a_I, c, x) / \\Gamma(c) for |x| < 1."},
2955
+ {:func_name=>"gsl_sf_hyperg_2F1_e",
2956
+ :func_type=>"int",
2957
+ :args=>
2958
+ [["double", "a"],
2959
+ ["double", "b"],
2960
+ ["double", "c"],
2961
+ ["double", "x"],
2962
+ ["gsl_sf_result *", "result"]],
2963
+ :desc=>
2964
+ "These routines compute the Gauss hypergeometric function \n" +
2965
+ "{}_2F_1(a,b,c,x) = F(a,b,c,x) for |x| < 1.\n" +
2966
+ "If the arguments (a,b,c,x) are too close to a singularity then\n" +
2967
+ "the function can return the error code GSL_EMAXITER when the\n" +
2968
+ "series approximation converges too slowly. This occurs in the region of\n" +
2969
+ "x = 1, c - a - b = m for integer m."},
2970
+ {:func_name=>"gsl_sf_hyperg_2F1_renorm",
2971
+ :func_type=>"double",
2972
+ :args=>[["double", "a"], ["double", "b"], ["double", "c"], ["double", "x"]],
2973
+ :desc=>
2974
+ "These routines compute the renormalized Gauss hypergeometric function\n" +
2975
+ "{}_2F_1(a,b,c,x) / \\Gamma(c) for |x| < 1."},
2976
+ {:func_name=>"gsl_sf_hyperg_2F1_renorm_e",
2977
+ :func_type=>"int",
2978
+ :args=>
2979
+ [["double", "a"],
2980
+ ["double", "b"],
2981
+ ["double", "c"],
2982
+ ["double", "x"],
2983
+ ["gsl_sf_result *", "result"]],
2984
+ :desc=>
2985
+ "These routines compute the renormalized Gauss hypergeometric function\n" +
2986
+ "{}_2F_1(a,b,c,x) / \\Gamma(c) for |x| < 1."},
2987
+ {:func_name=>"gsl_sf_hyperg_U",
2988
+ :func_type=>"double",
2989
+ :args=>[["double", "a"], ["double", "b"], ["double", "x"]],
2990
+ :desc=>
2991
+ "These routines compute the confluent hypergeometric function U(a,b,x)."},
2992
+ {:func_name=>"gsl_sf_hyperg_U_e",
2993
+ :func_type=>"int",
2994
+ :args=>
2995
+ [["double", "a"],
2996
+ ["double", "b"],
2997
+ ["double", "x"],
2998
+ ["gsl_sf_result *", "result"]],
2999
+ :desc=>
3000
+ "These routines compute the confluent hypergeometric function U(a,b,x)."},
3001
+ {:func_name=>"gsl_sf_hyperg_U_e10_e",
3002
+ :func_type=>"int",
3003
+ :args=>
3004
+ [["double", "a"],
3005
+ ["double", "b"],
3006
+ ["double", "x"],
3007
+ ["gsl_sf_result_e10 *", "result"]],
3008
+ :desc=>
3009
+ "This routine computes the confluent hypergeometric function\n" +
3010
+ "U(a,b,x) using the :type:`gsl_sf_result_e10` type to return a\n" +
3011
+ "result with extended range. "},
3012
+ {:func_name=>"gsl_sf_hyperg_U_int",
3013
+ :func_type=>"double",
3014
+ :args=>[["int", "m"], ["int", "n"], ["double", "x"]],
3015
+ :desc=>
3016
+ "These routines compute the confluent hypergeometric function\n" +
3017
+ "U(m,n,x) for integer parameters m, n."},
3018
+ {:func_name=>"gsl_sf_hyperg_U_int_e",
3019
+ :func_type=>"int",
3020
+ :args=>
3021
+ [["int", "m"],
3022
+ ["int", "n"],
3023
+ ["double", "x"],
3024
+ ["gsl_sf_result *", "result"]],
3025
+ :desc=>
3026
+ "These routines compute the confluent hypergeometric function\n" +
3027
+ "U(m,n,x) for integer parameters m, n."},
3028
+ {:func_name=>"gsl_sf_hyperg_U_int_e10_e",
3029
+ :func_type=>"int",
3030
+ :args=>
3031
+ [["int", "m"],
3032
+ ["int", "n"],
3033
+ ["double", "x"],
3034
+ ["gsl_sf_result_e10 *", "result"]],
3035
+ :desc=>
3036
+ "This routine computes the confluent hypergeometric function\n" +
3037
+ "U(m,n,x) for integer parameters m, n using the\n" +
3038
+ ":type:`gsl_sf_result_e10` type to return a result with extended range."},
3039
+ {:func_name=>"gsl_sf_hypot",
3040
+ :func_type=>"double",
3041
+ :args=>[["double", "x"], ["double", "y"]],
3042
+ :desc=>
3043
+ "These routines compute the hypotenuse function \\sqrt{x^2 + y^2}\n" +
3044
+ "avoiding overflow and underflow.\n" +
3045
+ "Exceptional Return Values:"},
3046
+ {:func_name=>"gsl_sf_hypot_e",
3047
+ :func_type=>"int",
3048
+ :args=>[["double", "x"], ["double", "y"], ["gsl_sf_result *", "result"]],
3049
+ :desc=>
3050
+ "These routines compute the hypotenuse function \\sqrt{x^2 + y^2}\n" +
3051
+ "avoiding overflow and underflow.\n" +
3052
+ "Exceptional Return Values:"},
3053
+ {:func_name=>"gsl_sf_hzeta",
3054
+ :func_type=>"double",
3055
+ :args=>[["double", "s"], ["double", "q"]],
3056
+ :desc=>
3057
+ "These routines compute the Hurwitz zeta function \\zeta(s,q) for\n" +
3058
+ "s > 1, q > 0.\n" +
3059
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW, GSL_EOVRFLW"},
3060
+ {:func_name=>"gsl_sf_hzeta_e",
3061
+ :func_type=>"int",
3062
+ :args=>[["double", "s"], ["double", "q"], ["gsl_sf_result *", "result"]],
3063
+ :desc=>
3064
+ "These routines compute the Hurwitz zeta function \\zeta(s,q) for\n" +
3065
+ "s > 1, q > 0.\n" +
3066
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW, GSL_EOVRFLW"},
3067
+ {:func_name=>"gsl_sf_laguerre_1",
3068
+ :func_type=>"double",
3069
+ :args=>[["double", "a"], ["double", "x"]],
3070
+ :desc=>
3071
+ "These routines evaluate the generalized Laguerre polynomials\n" +
3072
+ "L^a_1(x), L^a_2(x), L^a_3(x) using explicit\n" +
3073
+ "representations.\n" +
3074
+ "Exceptional Return Values: none"},
3075
+ {:func_name=>"gsl_sf_laguerre_1_e",
3076
+ :func_type=>"int",
3077
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
3078
+ :desc=>
3079
+ "These routines evaluate the generalized Laguerre polynomials\n" +
3080
+ "L^a_1(x), L^a_2(x), L^a_3(x) using explicit\n" +
3081
+ "representations.\n" +
3082
+ "Exceptional Return Values: none"},
3083
+ {:func_name=>"gsl_sf_laguerre_2",
3084
+ :func_type=>"double",
3085
+ :args=>[["double", "a"], ["double", "x"]],
3086
+ :desc=>
3087
+ "These routines evaluate the generalized Laguerre polynomials\n" +
3088
+ "L^a_1(x), L^a_2(x), L^a_3(x) using explicit\n" +
3089
+ "representations.\n" +
3090
+ "Exceptional Return Values: none"},
3091
+ {:func_name=>"gsl_sf_laguerre_2_e",
3092
+ :func_type=>"int",
3093
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
3094
+ :desc=>
3095
+ "These routines evaluate the generalized Laguerre polynomials\n" +
3096
+ "L^a_1(x), L^a_2(x), L^a_3(x) using explicit\n" +
3097
+ "representations.\n" +
3098
+ "Exceptional Return Values: none"},
3099
+ {:func_name=>"gsl_sf_laguerre_3",
3100
+ :func_type=>"double",
3101
+ :args=>[["double", "a"], ["double", "x"]],
3102
+ :desc=>
3103
+ "These routines evaluate the generalized Laguerre polynomials\n" +
3104
+ "L^a_1(x), L^a_2(x), L^a_3(x) using explicit\n" +
3105
+ "representations.\n" +
3106
+ "Exceptional Return Values: none"},
3107
+ {:func_name=>"gsl_sf_laguerre_3_e",
3108
+ :func_type=>"int",
3109
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
3110
+ :desc=>
3111
+ "These routines evaluate the generalized Laguerre polynomials\n" +
3112
+ "L^a_1(x), L^a_2(x), L^a_3(x) using explicit\n" +
3113
+ "representations.\n" +
3114
+ "Exceptional Return Values: none"},
3115
+ {:func_name=>"gsl_sf_laguerre_n",
3116
+ :func_type=>"double",
3117
+ :args=>[["const int", "n"], ["const double", "a"], ["const double", "x"]],
3118
+ :desc=>
3119
+ "These routines evaluate the generalized Laguerre polynomials\n" +
3120
+ "L^a_n(x) for a > -1,\n" +
3121
+ "n \\ge 0.\n" +
3122
+ "Exceptional Return Values: GSL_EDOM"},
3123
+ {:func_name=>"gsl_sf_laguerre_n_e",
3124
+ :func_type=>"int",
3125
+ :args=>
3126
+ [["int", "n"],
3127
+ ["double", "a"],
3128
+ ["double", "x"],
3129
+ ["gsl_sf_result *", "result"]],
3130
+ :desc=>
3131
+ "These routines evaluate the generalized Laguerre polynomials\n" +
3132
+ "L^a_n(x) for a > -1,\n" +
3133
+ "n \\ge 0.\n" +
3134
+ "Exceptional Return Values: GSL_EDOM"},
3135
+ {:func_name=>"gsl_sf_lambert_W0",
3136
+ :func_type=>"double",
3137
+ :args=>[["double", "x"]],
3138
+ :desc=>
3139
+ "These compute the principal branch of the Lambert W function, W_0(x)."},
3140
+ {:func_name=>"gsl_sf_lambert_W0_e",
3141
+ :func_type=>"int",
3142
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3143
+ :desc=>
3144
+ "These compute the principal branch of the Lambert W function, W_0(x)."},
3145
+ {:func_name=>"gsl_sf_lambert_Wm1",
3146
+ :func_type=>"double",
3147
+ :args=>[["double", "x"]],
3148
+ :desc=>
3149
+ "These compute the secondary real-valued branch of the Lambert W function, \n" +
3150
+ "W_{-1}(x)."},
3151
+ {:func_name=>"gsl_sf_lambert_Wm1_e",
3152
+ :func_type=>"int",
3153
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3154
+ :desc=>
3155
+ "These compute the secondary real-valued branch of the Lambert W function, \n" +
3156
+ "W_{-1}(x)."},
3157
+ {:func_name=>"gsl_sf_legendre_H3d",
3158
+ :func_type=>"double",
3159
+ :args=>[["int", "l"], ["double", "lambda"], ["double", "eta"]],
3160
+ :desc=>
3161
+ "These routines compute the l-th radial eigenfunction of the\n" +
3162
+ "Laplacian on the 3-dimensional hyperbolic space \\eta \\ge 0 and\n" +
3163
+ "l \\ge 0.\n" +
3164
+ "In the flat limit this takes the form\n" +
3165
+ "L^{H3d}_l(\\lambda,\\eta) = j_l(\\lambda\\eta).\n" +
3166
+ "Exceptional Return Values: GSL_EDOM"},
3167
+ {:func_name=>"gsl_sf_legendre_H3d_0",
3168
+ :func_type=>"double",
3169
+ :args=>[["double", "lambda"], ["double", "eta"]],
3170
+ :desc=>
3171
+ "These routines compute the zeroth radial eigenfunction of the Laplacian on the\n" +
3172
+ "3-dimensional hyperbolic space,\n" +
3173
+ ".. math:: L^{H3d}_0(\\lambda,\\eta) := {\\sin(\\lambda\\eta) \\over \\lambda\\sinh(\\eta)}\n" +
3174
+ "for \\eta \\ge 0.\n" +
3175
+ "In the flat limit this takes the form\n" +
3176
+ "L^{H3d}_0(\\lambda,\\eta) = j_0(\\lambda\\eta).\n" +
3177
+ "Exceptional Return Values: GSL_EDOM"},
3178
+ {:func_name=>"gsl_sf_legendre_H3d_0_e",
3179
+ :func_type=>"int",
3180
+ :args=>
3181
+ [["double", "lambda"], ["double", "eta"], ["gsl_sf_result *", "result"]],
3182
+ :desc=>
3183
+ "These routines compute the zeroth radial eigenfunction of the Laplacian on the\n" +
3184
+ "3-dimensional hyperbolic space,\n" +
3185
+ ".. math:: L^{H3d}_0(\\lambda,\\eta) := {\\sin(\\lambda\\eta) \\over \\lambda\\sinh(\\eta)}\n" +
3186
+ "for \\eta \\ge 0.\n" +
3187
+ "In the flat limit this takes the form\n" +
3188
+ "L^{H3d}_0(\\lambda,\\eta) = j_0(\\lambda\\eta).\n" +
3189
+ "Exceptional Return Values: GSL_EDOM"},
3190
+ {:func_name=>"gsl_sf_legendre_H3d_1",
3191
+ :func_type=>"double",
3192
+ :args=>[["double", "lambda"], ["double", "eta"]],
3193
+ :desc=>
3194
+ "These routines compute the first radial eigenfunction of the Laplacian on\n" +
3195
+ "the 3-dimensional hyperbolic space,\n" +
3196
+ ".. math:: L^{H3d}_1(\\lambda,\\eta) := {1\\over\\sqrt{\\lambda^2 + 1}} {\\left(\\sin(\\lambda \\eta)\\over \\lambda \\sinh(\\eta)\\right)} \\left(\\coth(\\eta) - \\lambda \\cot(\\lambda\\eta)\\right)\n" +
3197
+ "for \\eta \\ge 0\n" +
3198
+ "In the flat limit this takes the form \n" +
3199
+ "L^{H3d}_1(\\lambda,\\eta) = j_1(\\lambda\\eta).\n" +
3200
+ "Exceptional Return Values: GSL_EDOM"},
3201
+ {:func_name=>"gsl_sf_legendre_H3d_1_e",
3202
+ :func_type=>"int",
3203
+ :args=>
3204
+ [["double", "lambda"], ["double", "eta"], ["gsl_sf_result *", "result"]],
3205
+ :desc=>
3206
+ "These routines compute the first radial eigenfunction of the Laplacian on\n" +
3207
+ "the 3-dimensional hyperbolic space,\n" +
3208
+ ".. math:: L^{H3d}_1(\\lambda,\\eta) := {1\\over\\sqrt{\\lambda^2 + 1}} {\\left(\\sin(\\lambda \\eta)\\over \\lambda \\sinh(\\eta)\\right)} \\left(\\coth(\\eta) - \\lambda \\cot(\\lambda\\eta)\\right)\n" +
3209
+ "for \\eta \\ge 0\n" +
3210
+ "In the flat limit this takes the form \n" +
3211
+ "L^{H3d}_1(\\lambda,\\eta) = j_1(\\lambda\\eta).\n" +
3212
+ "Exceptional Return Values: GSL_EDOM"},
3213
+ {:func_name=>"gsl_sf_legendre_H3d_array",
3214
+ :func_type=>"int",
3215
+ :args=>
3216
+ [["int", "lmax"],
3217
+ ["double", "lambda"],
3218
+ ["double", "eta"],
3219
+ ["double", "result_array[]"]],
3220
+ :desc=>
3221
+ "This function computes an array of radial eigenfunctions\n" +
3222
+ "L^{H3d}_l( \\lambda, \\eta)\n" +
3223
+ "for 0 \\le l \\le lmax.\n" +
3224
+ "Exceptional Return Values:"},
3225
+ {:func_name=>"gsl_sf_legendre_H3d_e",
3226
+ :func_type=>"int",
3227
+ :args=>
3228
+ [["int", "l"],
3229
+ ["double", "lambda"],
3230
+ ["double", "eta"],
3231
+ ["gsl_sf_result *", "result"]],
3232
+ :desc=>
3233
+ "These routines compute the l-th radial eigenfunction of the\n" +
3234
+ "Laplacian on the 3-dimensional hyperbolic space \\eta \\ge 0 and\n" +
3235
+ "l \\ge 0.\n" +
3236
+ "In the flat limit this takes the form\n" +
3237
+ "L^{H3d}_l(\\lambda,\\eta) = j_l(\\lambda\\eta).\n" +
3238
+ "Exceptional Return Values: GSL_EDOM"},
3239
+ {:func_name=>"gsl_sf_legendre_P1",
3240
+ :func_type=>"double",
3241
+ :args=>[["double", "x"]],
3242
+ :desc=>
3243
+ "These functions evaluate the Legendre polynomials\n" +
3244
+ "P_l(x) using explicit representations for l = 1, 2, 3.\n" +
3245
+ "Exceptional Return Values: none"},
3246
+ {:func_name=>"gsl_sf_legendre_P1_e",
3247
+ :func_type=>"int",
3248
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3249
+ :desc=>
3250
+ "These functions evaluate the Legendre polynomials\n" +
3251
+ "P_l(x) using explicit representations for l = 1, 2, 3.\n" +
3252
+ "Exceptional Return Values: none"},
3253
+ {:func_name=>"gsl_sf_legendre_P2",
3254
+ :func_type=>"double",
3255
+ :args=>[["double", "x"]],
3256
+ :desc=>
3257
+ "These functions evaluate the Legendre polynomials\n" +
3258
+ "P_l(x) using explicit representations for l = 1, 2, 3.\n" +
3259
+ "Exceptional Return Values: none"},
3260
+ {:func_name=>"gsl_sf_legendre_P2_e",
3261
+ :func_type=>"int",
3262
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3263
+ :desc=>
3264
+ "These functions evaluate the Legendre polynomials\n" +
3265
+ "P_l(x) using explicit representations for l = 1, 2, 3.\n" +
3266
+ "Exceptional Return Values: none"},
3267
+ {:func_name=>"gsl_sf_legendre_P3",
3268
+ :func_type=>"double",
3269
+ :args=>[["double", "x"]],
3270
+ :desc=>
3271
+ "These functions evaluate the Legendre polynomials\n" +
3272
+ "P_l(x) using explicit representations for l = 1, 2, 3.\n" +
3273
+ "Exceptional Return Values: none"},
3274
+ {:func_name=>"gsl_sf_legendre_P3_e",
3275
+ :func_type=>"int",
3276
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3277
+ :desc=>
3278
+ "These functions evaluate the Legendre polynomials\n" +
3279
+ "P_l(x) using explicit representations for l = 1, 2, 3.\n" +
3280
+ "Exceptional Return Values: none"},
3281
+ {:func_name=>"gsl_sf_legendre_Pl",
3282
+ :func_type=>"double",
3283
+ :args=>[["int", "l"], ["double", "x"]],
3284
+ :desc=>
3285
+ "These functions evaluate the Legendre polynomial P_l(x)\n" +
3286
+ "for a specific value of l, x subject to l \\ge 0 and\n" +
3287
+ "|x| \\le 1.\n" +
3288
+ "Exceptional Return Values: GSL_EDOM"},
3289
+ {:func_name=>"gsl_sf_legendre_Pl_array",
3290
+ :func_type=>"int",
3291
+ :args=>[["int", "lmax"], ["double", "x"], ["double", "result_array[]"]],
3292
+ :desc=>
3293
+ "These functions compute arrays of Legendre polynomials\n" +
3294
+ "P_l(x) and derivatives dP_l(x)/dx\n" +
3295
+ "for l = 0, \\dots, lmax and |x| \\le 1.\n" +
3296
+ "Exceptional Return Values: GSL_EDOM"},
3297
+ {:func_name=>"gsl_sf_legendre_Pl_deriv_array",
3298
+ :func_type=>"int",
3299
+ :args=>
3300
+ [["int", "lmax"],
3301
+ ["double", "x"],
3302
+ ["double", "result_array[]"],
3303
+ ["double", "result_deriv_array[]"]],
3304
+ :desc=>
3305
+ "These functions compute arrays of Legendre polynomials\n" +
3306
+ "P_l(x) and derivatives dP_l(x)/dx\n" +
3307
+ "for l = 0, \\dots, lmax and |x| \\le 1.\n" +
3308
+ "Exceptional Return Values: GSL_EDOM"},
3309
+ {:func_name=>"gsl_sf_legendre_Pl_e",
3310
+ :func_type=>"int",
3311
+ :args=>[["int", "l"], ["double", "x"], ["gsl_sf_result *", "result"]],
3312
+ :desc=>
3313
+ "These functions evaluate the Legendre polynomial P_l(x)\n" +
3314
+ "for a specific value of l, x subject to l \\ge 0 and\n" +
3315
+ "|x| \\le 1.\n" +
3316
+ "Exceptional Return Values: GSL_EDOM"},
3317
+ {:func_name=>"gsl_sf_legendre_Plm",
3318
+ :func_type=>"double",
3319
+ :args=>[["int", "l"], ["int", "m"], ["double", "x"]],
3320
+ :desc=>
3321
+ "These routines compute the associated Legendre polynomial\n" +
3322
+ "P_l^m(x) for m \\ge 0,\n" +
3323
+ "l \\ge m, and |x| \\le 1.\n" +
3324
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
3325
+ {:func_name=>"gsl_sf_legendre_Plm_array",
3326
+ :func_type=>"int",
3327
+ :args=>
3328
+ [["int", "lmax"],
3329
+ ["int", "m"],
3330
+ ["double", "x"],
3331
+ ["double", "result_array[]"]],
3332
+ :desc=>
3333
+ "These functions are now deprecated and will be removed in a future\n" +
3334
+ "release; see gsl_sf_legendre_array and\n" +
3335
+ "gsl_sf_legendre_deriv_array."},
3336
+ {:func_name=>"gsl_sf_legendre_Plm_deriv_array",
3337
+ :func_type=>"int",
3338
+ :args=>
3339
+ [["int", "lmax"],
3340
+ ["int", "m"],
3341
+ ["double", "x"],
3342
+ ["double", "result_array[]"],
3343
+ ["double", "result_deriv_array[]"]],
3344
+ :desc=>
3345
+ "These functions are now deprecated and will be removed in a future\n" +
3346
+ "release; see gsl_sf_legendre_array and\n" +
3347
+ "gsl_sf_legendre_deriv_array."},
3348
+ {:func_name=>"gsl_sf_legendre_Plm_e",
3349
+ :func_type=>"int",
3350
+ :args=>
3351
+ [["int", "l"],
3352
+ ["int", "m"],
3353
+ ["double", "x"],
3354
+ ["gsl_sf_result *", "result"]],
3355
+ :desc=>
3356
+ "These routines compute the associated Legendre polynomial\n" +
3357
+ "P_l^m(x) for m \\ge 0,\n" +
3358
+ "l \\ge m, and |x| \\le 1.\n" +
3359
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
3360
+ {:func_name=>"gsl_sf_legendre_Q0",
3361
+ :func_type=>"double",
3362
+ :args=>[["double", "x"]],
3363
+ :desc=>
3364
+ "These routines compute the Legendre function Q_0(x) for\n" +
3365
+ "x > -1 and x \\ne 1.\n" +
3366
+ "Exceptional Return Values: GSL_EDOM"},
3367
+ {:func_name=>"gsl_sf_legendre_Q0_e",
3368
+ :func_type=>"int",
3369
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3370
+ :desc=>
3371
+ "These routines compute the Legendre function Q_0(x) for\n" +
3372
+ "x > -1 and x \\ne 1.\n" +
3373
+ "Exceptional Return Values: GSL_EDOM"},
3374
+ {:func_name=>"gsl_sf_legendre_Q1",
3375
+ :func_type=>"double",
3376
+ :args=>[["double", "x"]],
3377
+ :desc=>
3378
+ "These routines compute the Legendre function Q_1(x) for\n" +
3379
+ "x > -1 and x \\ne 1.\n" +
3380
+ "Exceptional Return Values: GSL_EDOM"},
3381
+ {:func_name=>"gsl_sf_legendre_Q1_e",
3382
+ :func_type=>"int",
3383
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3384
+ :desc=>
3385
+ "These routines compute the Legendre function Q_1(x) for\n" +
3386
+ "x > -1 and x \\ne 1.\n" +
3387
+ "Exceptional Return Values: GSL_EDOM"},
3388
+ {:func_name=>"gsl_sf_legendre_Ql",
3389
+ :func_type=>"double",
3390
+ :args=>[["int", "l"], ["double", "x"]],
3391
+ :desc=>
3392
+ "These routines compute the Legendre function Q_l(x) for\n" +
3393
+ "x > -1, x \\ne 1 and l \\ge 0.\n" +
3394
+ "Exceptional Return Values: GSL_EDOM"},
3395
+ {:func_name=>"gsl_sf_legendre_Ql_e",
3396
+ :func_type=>"int",
3397
+ :args=>[["int", "l"], ["double", "x"], ["gsl_sf_result *", "result"]],
3398
+ :desc=>
3399
+ "These routines compute the Legendre function Q_l(x) for\n" +
3400
+ "x > -1, x \\ne 1 and l \\ge 0.\n" +
3401
+ "Exceptional Return Values: GSL_EDOM"},
3402
+ {:func_name=>"gsl_sf_legendre_array",
3403
+ :func_type=>"int",
3404
+ :args=>
3405
+ [["const gsl_sf_legendre_t", "norm"],
3406
+ ["const size_t", "lmax"],
3407
+ ["const double", "x"],
3408
+ ["double", "result_array[]"]],
3409
+ :desc=>
3410
+ "These functions calculate all normalized associated Legendre\n" +
3411
+ "polynomials for 0 \\le l \\le lmax and\n" +
3412
+ "0 \\le m \\le l for |x| \\le 1.\n" +
3413
+ "The norm parameter specifies which normalization is used.\n" +
3414
+ "The normalized P_l^m(x) values are stored in result_array, whose\n" +
3415
+ "minimum size can be obtained from calling gsl_sf_legendre_array_n.\n" +
3416
+ "The array index of P_l^m(x) is obtained from calling\n" +
3417
+ "gsl_sf_legendre_array_index(l, m). To include or exclude\n" +
3418
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3419
+ "csphase to either -1 or 1 respectively in the\n" +
3420
+ "_e function. This factor is included by default."},
3421
+ {:func_name=>"gsl_sf_legendre_array_e",
3422
+ :func_type=>"int",
3423
+ :args=>
3424
+ [["const gsl_sf_legendre_t", "norm"],
3425
+ ["const size_t", "lmax"],
3426
+ ["const double", "x"],
3427
+ ["const double", "csphase"],
3428
+ ["double", "result_array[]"]],
3429
+ :desc=>
3430
+ "These functions calculate all normalized associated Legendre\n" +
3431
+ "polynomials for 0 \\le l \\le lmax and\n" +
3432
+ "0 \\le m \\le l for |x| \\le 1.\n" +
3433
+ "The norm parameter specifies which normalization is used.\n" +
3434
+ "The normalized P_l^m(x) values are stored in result_array, whose\n" +
3435
+ "minimum size can be obtained from calling gsl_sf_legendre_array_n.\n" +
3436
+ "The array index of P_l^m(x) is obtained from calling\n" +
3437
+ "gsl_sf_legendre_array_index(l, m). To include or exclude\n" +
3438
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3439
+ "csphase to either -1 or 1 respectively in the\n" +
3440
+ "_e function. This factor is included by default."},
3441
+ {:func_name=>"gsl_sf_legendre_array_index",
3442
+ :func_type=>"size_t",
3443
+ :args=>[["const size_t", "l"], ["const size_t", "m"]],
3444
+ :desc=>
3445
+ "This function returns the index into result_array,\n" +
3446
+ "result_deriv_array, or result_deriv2_array corresponding\n" +
3447
+ "to P_l^m(x), P_l^{'m}(x), or P_l^{''m}(x). The\n" +
3448
+ "index is given by l(l+1)/2 + m."},
3449
+ {:func_name=>"gsl_sf_legendre_array_n",
3450
+ :func_type=>"size_t",
3451
+ :args=>[["const size_t", "lmax"]],
3452
+ :desc=>
3453
+ "This function returns the minimum array size for maximum degree lmax\n" +
3454
+ "needed for the array versions of the associated Legendre functions.\n" +
3455
+ "Size is calculated as the total number of P_l^m(x) functions,\n" +
3456
+ "plus extra space for precomputing multiplicative factors used in the\n" +
3457
+ "recurrence relations."},
3458
+ {:func_name=>"gsl_sf_legendre_array_size",
3459
+ :func_type=>"int",
3460
+ :args=>[["const int", "lmax"], ["const int", "m"]],
3461
+ :desc=>
3462
+ "This function is now deprecated and will be removed in a future\n" +
3463
+ "release."},
3464
+ {:func_name=>"gsl_sf_legendre_deriv2_alt_array",
3465
+ :func_type=>"int",
3466
+ :args=>
3467
+ [["const gsl_sf_legendre_t", "norm"],
3468
+ ["const size_t", "lmax"],
3469
+ ["const double", "x"],
3470
+ ["double", "result_array[]"],
3471
+ ["double", "result_deriv_array[]"],
3472
+ ["double", "result_deriv2_array[]"]],
3473
+ :desc=>
3474
+ "These functions calculate all normalized associated Legendre\n" +
3475
+ "functions and their (alternate) first and second derivatives up to degree\n" +
3476
+ "lmax for\n" +
3477
+ "|x| < 1.\n" +
3478
+ "The parameter norm specifies the normalization used. The\n" +
3479
+ "normalized P_l^m(x), their first derivatives\n" +
3480
+ "dP_l^m(\\cos{\\theta})/d\\theta, and their second derivatives\n" +
3481
+ "d^2 P_l^m(\\cos{\\theta})/d\\theta^2 are stored in result_array,\n" +
3482
+ "result_deriv_array, and result_deriv2_array respectively.\n" +
3483
+ "To include or exclude\n" +
3484
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3485
+ "csphase to either -1 or 1 respectively in the\n" +
3486
+ "_e function. This factor is included by default."},
3487
+ {:func_name=>"gsl_sf_legendre_deriv2_alt_array_e",
3488
+ :func_type=>"int",
3489
+ :args=>
3490
+ [["const gsl_sf_legendre_t", "norm"],
3491
+ ["const size_t", "lmax"],
3492
+ ["const double", "x"],
3493
+ ["const double", "csphase"],
3494
+ ["double", "result_array[]"],
3495
+ ["double", "result_deriv_array[]"],
3496
+ ["double", "result_deriv2_array[]"]],
3497
+ :desc=>
3498
+ "These functions calculate all normalized associated Legendre\n" +
3499
+ "functions and their (alternate) first and second derivatives up to degree\n" +
3500
+ "lmax for\n" +
3501
+ "|x| < 1.\n" +
3502
+ "The parameter norm specifies the normalization used. The\n" +
3503
+ "normalized P_l^m(x), their first derivatives\n" +
3504
+ "dP_l^m(\\cos{\\theta})/d\\theta, and their second derivatives\n" +
3505
+ "d^2 P_l^m(\\cos{\\theta})/d\\theta^2 are stored in result_array,\n" +
3506
+ "result_deriv_array, and result_deriv2_array respectively.\n" +
3507
+ "To include or exclude\n" +
3508
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3509
+ "csphase to either -1 or 1 respectively in the\n" +
3510
+ "_e function. This factor is included by default."},
3511
+ {:func_name=>"gsl_sf_legendre_deriv2_array",
3512
+ :func_type=>"int",
3513
+ :args=>
3514
+ [["const gsl_sf_legendre_t", "norm"],
3515
+ ["const size_t", "lmax"],
3516
+ ["const double", "x"],
3517
+ ["double", "result_array[]"],
3518
+ ["double", "result_deriv_array[]"],
3519
+ ["double", "result_deriv2_array[]"]],
3520
+ :desc=>
3521
+ "These functions calculate all normalized associated Legendre\n" +
3522
+ "functions and their first and second derivatives up to degree lmax for\n" +
3523
+ "|x| < 1.\n" +
3524
+ "The parameter norm specifies the normalization used. The\n" +
3525
+ "normalized P_l^m(x), their first derivatives\n" +
3526
+ "dP_l^m(x)/dx, and their second derivatives\n" +
3527
+ "d^2 P_l^m(x)/dx^2 are stored in result_array,\n" +
3528
+ "result_deriv_array, and result_deriv2_array respectively.\n" +
3529
+ "To include or exclude\n" +
3530
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3531
+ "csphase to either -1 or 1 respectively in the\n" +
3532
+ "_e function. This factor is included by default."},
3533
+ {:func_name=>"gsl_sf_legendre_deriv2_array_e",
3534
+ :func_type=>"int",
3535
+ :args=>
3536
+ [["const gsl_sf_legendre_t", "norm"],
3537
+ ["const size_t", "lmax"],
3538
+ ["const double", "x"],
3539
+ ["const double", "csphase"],
3540
+ ["double", "result_array[]"],
3541
+ ["double", "result_deriv_array[]"],
3542
+ ["double", "result_deriv2_array[]"]],
3543
+ :desc=>
3544
+ "These functions calculate all normalized associated Legendre\n" +
3545
+ "functions and their first and second derivatives up to degree lmax for\n" +
3546
+ "|x| < 1.\n" +
3547
+ "The parameter norm specifies the normalization used. The\n" +
3548
+ "normalized P_l^m(x), their first derivatives\n" +
3549
+ "dP_l^m(x)/dx, and their second derivatives\n" +
3550
+ "d^2 P_l^m(x)/dx^2 are stored in result_array,\n" +
3551
+ "result_deriv_array, and result_deriv2_array respectively.\n" +
3552
+ "To include or exclude\n" +
3553
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3554
+ "csphase to either -1 or 1 respectively in the\n" +
3555
+ "_e function. This factor is included by default."},
3556
+ {:func_name=>"gsl_sf_legendre_deriv_alt_array",
3557
+ :func_type=>"int",
3558
+ :args=>
3559
+ [["const gsl_sf_legendre_t", "norm"],
3560
+ ["const size_t", "lmax"],
3561
+ ["const double", "x"],
3562
+ ["double", "result_array[]"],
3563
+ ["double", "result_deriv_array[]"]],
3564
+ :desc=>
3565
+ "These functions calculate all normalized associated Legendre\n" +
3566
+ "functions and their (alternate) first derivatives up to degree lmax for\n" +
3567
+ "|x| < 1.\n" +
3568
+ "The normalized P_l^m(x) values and their derivatives\n" +
3569
+ "dP_l^m(\\cos{\\theta})/d\\theta are stored in result_array and\n" +
3570
+ "result_deriv_array respectively.\n" +
3571
+ "To include or exclude\n" +
3572
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3573
+ "csphase to either -1 or 1 respectively in the\n" +
3574
+ "_e function. This factor is included by default."},
3575
+ {:func_name=>"gsl_sf_legendre_deriv_alt_array_e",
3576
+ :func_type=>"int",
3577
+ :args=>
3578
+ [["const gsl_sf_legendre_t", "norm"],
3579
+ ["const size_t", "lmax"],
3580
+ ["const double", "x"],
3581
+ ["const double", "csphase"],
3582
+ ["double", "result_array[]"],
3583
+ ["double", "result_deriv_array[]"]],
3584
+ :desc=>
3585
+ "These functions calculate all normalized associated Legendre\n" +
3586
+ "functions and their (alternate) first derivatives up to degree lmax for\n" +
3587
+ "|x| < 1.\n" +
3588
+ "The normalized P_l^m(x) values and their derivatives\n" +
3589
+ "dP_l^m(\\cos{\\theta})/d\\theta are stored in result_array and\n" +
3590
+ "result_deriv_array respectively.\n" +
3591
+ "To include or exclude\n" +
3592
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3593
+ "csphase to either -1 or 1 respectively in the\n" +
3594
+ "_e function. This factor is included by default."},
3595
+ {:func_name=>"gsl_sf_legendre_deriv_array",
3596
+ :func_type=>"int",
3597
+ :args=>
3598
+ [["const gsl_sf_legendre_t", "norm"],
3599
+ ["const size_t", "lmax"],
3600
+ ["const double", "x"],
3601
+ ["double", "result_array[]"],
3602
+ ["double", "result_deriv_array[]"]],
3603
+ :desc=>
3604
+ "These functions calculate all normalized associated Legendre\n" +
3605
+ "functions and their first derivatives up to degree lmax for\n" +
3606
+ "|x| < 1.\n" +
3607
+ "The parameter norm specifies the normalization used. The\n" +
3608
+ "normalized P_l^m(x) values and their derivatives\n" +
3609
+ "dP_l^m(x)/dx are stored in result_array and\n" +
3610
+ "result_deriv_array respectively.\n" +
3611
+ "To include or exclude\n" +
3612
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3613
+ "csphase to either -1 or 1 respectively in the\n" +
3614
+ "_e function. This factor is included by default."},
3615
+ {:func_name=>"gsl_sf_legendre_deriv_array_e",
3616
+ :func_type=>"int",
3617
+ :args=>
3618
+ [["const gsl_sf_legendre_t", "norm"],
3619
+ ["const size_t", "lmax"],
3620
+ ["const double", "x"],
3621
+ ["const double", "csphase"],
3622
+ ["double", "result_array[]"],
3623
+ ["double", "result_deriv_array[]"]],
3624
+ :desc=>
3625
+ "These functions calculate all normalized associated Legendre\n" +
3626
+ "functions and their first derivatives up to degree lmax for\n" +
3627
+ "|x| < 1.\n" +
3628
+ "The parameter norm specifies the normalization used. The\n" +
3629
+ "normalized P_l^m(x) values and their derivatives\n" +
3630
+ "dP_l^m(x)/dx are stored in result_array and\n" +
3631
+ "result_deriv_array respectively.\n" +
3632
+ "To include or exclude\n" +
3633
+ "the Condon-Shortley phase factor of (-1)^m, set the parameter\n" +
3634
+ "csphase to either -1 or 1 respectively in the\n" +
3635
+ "_e function. This factor is included by default."},
3636
+ {:func_name=>"gsl_sf_legendre_sphPlm",
3637
+ :func_type=>"double",
3638
+ :args=>[["int", "l"], ["int", "m"], ["double", "x"]],
3639
+ :desc=>
3640
+ "These routines compute the normalized associated Legendre polynomial\n" +
3641
+ "\\sqrt{(2l+1)/(4\\pi)} \\sqrt{(l-m)!/(l+m)!} P_l^m(x) suitable\n" +
3642
+ "for use in spherical harmonics. The parameters must satisfy m \\ge 0,\n" +
3643
+ "l \\ge m, and |x| \\le 1.\n" +
3644
+ "These routines avoid the overflows\n" +
3645
+ "that occur for the standard normalization of P_l^m(x).\n" +
3646
+ "Exceptional Return Values: GSL_EDOM"},
3647
+ {:func_name=>"gsl_sf_legendre_sphPlm_array",
3648
+ :func_type=>"int",
3649
+ :args=>
3650
+ [["int", "lmax"],
3651
+ ["int", "m"],
3652
+ ["double", "x"],
3653
+ ["double", "result_array[]"]],
3654
+ :desc=>
3655
+ "These functions are now deprecated and will be removed in a future\n" +
3656
+ "release; see gsl_sf_legendre_array and\n" +
3657
+ "gsl_sf_legendre_deriv_array."},
3658
+ {:func_name=>"gsl_sf_legendre_sphPlm_deriv_array",
3659
+ :func_type=>"int",
3660
+ :args=>
3661
+ [["int", "lmax"],
3662
+ ["int", "m"],
3663
+ ["double", "x"],
3664
+ ["double", "result_array[]"],
3665
+ ["double", "result_deriv_array[]"]],
3666
+ :desc=>
3667
+ "These functions are now deprecated and will be removed in a future\n" +
3668
+ "release; see gsl_sf_legendre_array and\n" +
3669
+ "gsl_sf_legendre_deriv_array."},
3670
+ {:func_name=>"gsl_sf_legendre_sphPlm_e",
3671
+ :func_type=>"int",
3672
+ :args=>
3673
+ [["int", "l"],
3674
+ ["int", "m"],
3675
+ ["double", "x"],
3676
+ ["gsl_sf_result *", "result"]],
3677
+ :desc=>
3678
+ "These routines compute the normalized associated Legendre polynomial\n" +
3679
+ "\\sqrt{(2l+1)/(4\\pi)} \\sqrt{(l-m)!/(l+m)!} P_l^m(x) suitable\n" +
3680
+ "for use in spherical harmonics. The parameters must satisfy m \\ge 0,\n" +
3681
+ "l \\ge m, and |x| \\le 1.\n" +
3682
+ "These routines avoid the overflows\n" +
3683
+ "that occur for the standard normalization of P_l^m(x).\n" +
3684
+ "Exceptional Return Values: GSL_EDOM"},
3685
+ {:func_name=>"gsl_sf_lnbeta",
3686
+ :func_type=>"double",
3687
+ :args=>[["double", "a"], ["double", "b"]],
3688
+ :desc=>
3689
+ "These routines compute the logarithm of the Beta Function, \\log(B(a,b))\n" +
3690
+ "subject to a and b not being negative integers."},
3691
+ {:func_name=>"gsl_sf_lnbeta_e",
3692
+ :func_type=>"int",
3693
+ :args=>[["double", "a"], ["double", "b"], ["gsl_sf_result *", "result"]],
3694
+ :desc=>
3695
+ "These routines compute the logarithm of the Beta Function, \\log(B(a,b))\n" +
3696
+ "subject to a and b not being negative integers."},
3697
+ {:func_name=>"gsl_sf_lnchoose",
3698
+ :func_type=>"double",
3699
+ :args=>[["unsigned int", "n"], ["unsigned int", "m"]],
3700
+ :desc=>
3701
+ "These routines compute the logarithm of n choose m. This is\n" +
3702
+ "equivalent to the sum \\log(n!) - \\log(m!) - \\log((n-m)!)."},
3703
+ {:func_name=>"gsl_sf_lnchoose_e",
3704
+ :func_type=>"int",
3705
+ :args=>
3706
+ [["unsigned int", "n"],
3707
+ ["unsigned int", "m"],
3708
+ ["gsl_sf_result *", "result"]],
3709
+ :desc=>
3710
+ "These routines compute the logarithm of n choose m. This is\n" +
3711
+ "equivalent to the sum \\log(n!) - \\log(m!) - \\log((n-m)!)."},
3712
+ {:func_name=>"gsl_sf_lncosh",
3713
+ :func_type=>"double",
3714
+ :args=>[["double", "x"]],
3715
+ :desc=>
3716
+ "These routines compute \\log(\\cosh(x)) for any x.\n" +
3717
+ "Exceptional Return Values: none"},
3718
+ {:func_name=>"gsl_sf_lncosh_e",
3719
+ :func_type=>"int",
3720
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3721
+ :desc=>
3722
+ "These routines compute \\log(\\cosh(x)) for any x.\n" +
3723
+ "Exceptional Return Values: none"},
3724
+ {:func_name=>"gsl_sf_lndoublefact",
3725
+ :func_type=>"double",
3726
+ :args=>[["unsigned int", "n"]],
3727
+ :desc=>
3728
+ "These routines compute the logarithm of the double factorial of n,\n" +
3729
+ "\\log(n!!)."},
3730
+ {:func_name=>"gsl_sf_lndoublefact_e",
3731
+ :func_type=>"int",
3732
+ :args=>[["unsigned int", "n"], ["gsl_sf_result *", "result"]],
3733
+ :desc=>
3734
+ "These routines compute the logarithm of the double factorial of n,\n" +
3735
+ "\\log(n!!)."},
3736
+ {:func_name=>"gsl_sf_lnfact",
3737
+ :func_type=>"double",
3738
+ :args=>[["unsigned int", "n"]],
3739
+ :desc=>
3740
+ "These routines compute the logarithm of the factorial of n,\n" +
3741
+ "\\log(n!). The algorithm is faster than computing\n" +
3742
+ "\\ln(\\Gamma(n+1)) via gsl_sf_lngamma for n < 170,\n" +
3743
+ "but defers for larger n."},
3744
+ {:func_name=>"gsl_sf_lnfact_e",
3745
+ :func_type=>"int",
3746
+ :args=>[["unsigned int", "n"], ["gsl_sf_result *", "result"]],
3747
+ :desc=>
3748
+ "These routines compute the logarithm of the factorial of n,\n" +
3749
+ "\\log(n!). The algorithm is faster than computing\n" +
3750
+ "\\ln(\\Gamma(n+1)) via gsl_sf_lngamma for n < 170,\n" +
3751
+ "but defers for larger n."},
3752
+ {:func_name=>"gsl_sf_lngamma",
3753
+ :func_type=>"double",
3754
+ :args=>[["double", "x"]],
3755
+ :desc=>
3756
+ "These routines compute the logarithm of the Gamma function,\n" +
3757
+ "\\log(\\Gamma(x)), subject to x not being a negative\n" +
3758
+ "integer or zero. For x < 0 the real part of \\log(\\Gamma(x)) is\n" +
3759
+ "returned, which is equivalent to \\log(|\\Gamma(x)|). The function\n" +
3760
+ "is computed using the real Lanczos method."},
3761
+ {:func_name=>"gsl_sf_lngamma_complex_e",
3762
+ :func_type=>"int",
3763
+ :args=>
3764
+ [["double", "zr"],
3765
+ ["double", "zi"],
3766
+ ["gsl_sf_result *", "lnr"],
3767
+ ["gsl_sf_result *", "arg"]],
3768
+ :desc=>
3769
+ "This routine computes \\log(\\Gamma(z)) for complex z = z_r + i z_i\n" +
3770
+ "and z not a negative integer or zero, using the complex Lanczos\n" +
3771
+ "method. The returned parameters are lnr = \\log|\\Gamma(z)| and\n" +
3772
+ "arg = \\arg(\\Gamma(z)) in (-\\pi,\\pi]. Note that the phase\n" +
3773
+ "part (arg) is not well-determined when |z| is very large,\n" +
3774
+ "due to inevitable roundoff in restricting to (-\\pi,\\pi]. This\n" +
3775
+ "will result in a GSL_ELOSS error when it occurs. The absolute\n" +
3776
+ "value part (lnr), however, never suffers from loss of precision."},
3777
+ {:func_name=>"gsl_sf_lngamma_e",
3778
+ :func_type=>"int",
3779
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3780
+ :desc=>
3781
+ "These routines compute the logarithm of the Gamma function,\n" +
3782
+ "\\log(\\Gamma(x)), subject to x not being a negative\n" +
3783
+ "integer or zero. For x < 0 the real part of \\log(\\Gamma(x)) is\n" +
3784
+ "returned, which is equivalent to \\log(|\\Gamma(x)|). The function\n" +
3785
+ "is computed using the real Lanczos method."},
3786
+ {:func_name=>"gsl_sf_lngamma_sgn_e",
3787
+ :func_type=>"int",
3788
+ :args=>
3789
+ [["double", "x"], ["gsl_sf_result *", "result_lg"], ["double *", "sgn"]],
3790
+ :desc=>
3791
+ "This routine computes the sign of the gamma function and the logarithm of\n" +
3792
+ "its magnitude, subject to x not being a negative integer or zero. The\n" +
3793
+ "function is computed using the real Lanczos method. The value of the\n" +
3794
+ "gamma function and its error can be reconstructed using the relation \n" +
3795
+ "\\Gamma(x) = sgn * \\exp(result\\_lg), taking into account the two \n" +
3796
+ "components of result_lg."},
3797
+ {:func_name=>"gsl_sf_lnpoch",
3798
+ :func_type=>"double",
3799
+ :args=>[["double", "a"], ["double", "x"]],
3800
+ :desc=>
3801
+ "These routines compute the logarithm of the Pochhammer symbol,\n" +
3802
+ "\\log((a)_x) = \\log(\\Gamma(a + x)/\\Gamma(a))."},
3803
+ {:func_name=>"gsl_sf_lnpoch_e",
3804
+ :func_type=>"int",
3805
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
3806
+ :desc=>
3807
+ "These routines compute the logarithm of the Pochhammer symbol,\n" +
3808
+ "\\log((a)_x) = \\log(\\Gamma(a + x)/\\Gamma(a))."},
3809
+ {:func_name=>"gsl_sf_lnpoch_sgn_e",
3810
+ :func_type=>"int",
3811
+ :args=>
3812
+ [["double", "a"],
3813
+ ["double", "x"],
3814
+ ["gsl_sf_result *", "result"],
3815
+ ["double *", "sgn"]],
3816
+ :desc=>
3817
+ "These routines compute the sign of the Pochhammer symbol and the\n" +
3818
+ "logarithm of its magnitude. The computed parameters are result = \\log(|(a)_x|)\n" +
3819
+ "with a corresponding error term, and sgn = \\sgn((a)_x) where (a)_x = \\Gamma(a + x)/\\Gamma(a)."},
3820
+ {:func_name=>"gsl_sf_lnsinh",
3821
+ :func_type=>"double",
3822
+ :args=>[["double", "x"]],
3823
+ :desc=>
3824
+ "These routines compute \\log(\\sinh(x)) for x > 0.\n" +
3825
+ "Exceptional Return Values: GSL_EDOM"},
3826
+ {:func_name=>"gsl_sf_lnsinh_e",
3827
+ :func_type=>"int",
3828
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3829
+ :desc=>
3830
+ "These routines compute \\log(\\sinh(x)) for x > 0.\n" +
3831
+ "Exceptional Return Values: GSL_EDOM"},
3832
+ {:func_name=>"gsl_sf_log",
3833
+ :func_type=>"double",
3834
+ :args=>[["double", "x"]],
3835
+ :desc=>
3836
+ "These routines compute the logarithm of x, \\log(x), for\n" +
3837
+ "x > 0.\n" +
3838
+ "Exceptional Return Values: GSL_EDOM"},
3839
+ {:func_name=>"gsl_sf_log_1plusx",
3840
+ :func_type=>"double",
3841
+ :args=>[["double", "x"]],
3842
+ :desc=>
3843
+ "These routines compute \\log(1 + x) for x > -1 using an\n" +
3844
+ "algorithm that is accurate for small x.\n" +
3845
+ "Exceptional Return Values: GSL_EDOM"},
3846
+ {:func_name=>"gsl_sf_log_1plusx_e",
3847
+ :func_type=>"int",
3848
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3849
+ :desc=>
3850
+ "These routines compute \\log(1 + x) for x > -1 using an\n" +
3851
+ "algorithm that is accurate for small x.\n" +
3852
+ "Exceptional Return Values: GSL_EDOM"},
3853
+ {:func_name=>"gsl_sf_log_1plusx_mx",
3854
+ :func_type=>"double",
3855
+ :args=>[["double", "x"]],
3856
+ :desc=>
3857
+ "These routines compute \\log(1 + x) - x for x > -1 using an\n" +
3858
+ "algorithm that is accurate for small x.\n" +
3859
+ "Exceptional Return Values: GSL_EDOM"},
3860
+ {:func_name=>"gsl_sf_log_1plusx_mx_e",
3861
+ :func_type=>"int",
3862
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3863
+ :desc=>
3864
+ "These routines compute \\log(1 + x) - x for x > -1 using an\n" +
3865
+ "algorithm that is accurate for small x.\n" +
3866
+ "Exceptional Return Values: GSL_EDOM"},
3867
+ {:func_name=>"gsl_sf_log_abs",
3868
+ :func_type=>"double",
3869
+ :args=>[["double", "x"]],
3870
+ :desc=>
3871
+ "These routines compute the logarithm of the magnitude of x,\n" +
3872
+ "\\log(|x|), for x \\ne 0.\n" +
3873
+ "Exceptional Return Values: GSL_EDOM"},
3874
+ {:func_name=>"gsl_sf_log_abs_e",
3875
+ :func_type=>"int",
3876
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3877
+ :desc=>
3878
+ "These routines compute the logarithm of the magnitude of x,\n" +
3879
+ "\\log(|x|), for x \\ne 0.\n" +
3880
+ "Exceptional Return Values: GSL_EDOM"},
3881
+ {:func_name=>"gsl_sf_log_e",
3882
+ :func_type=>"int",
3883
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3884
+ :desc=>
3885
+ "These routines compute the logarithm of x, \\log(x), for\n" +
3886
+ "x > 0.\n" +
3887
+ "Exceptional Return Values: GSL_EDOM"},
3888
+ {:func_name=>"gsl_sf_log_erfc",
3889
+ :func_type=>"double",
3890
+ :args=>[["double", "x"]],
3891
+ :desc=>
3892
+ "These routines compute the logarithm of the complementary error function\n" +
3893
+ "\\log(\\erfc(x)).\n" +
3894
+ "Exceptional Return Values: none"},
3895
+ {:func_name=>"gsl_sf_log_erfc_e",
3896
+ :func_type=>"int",
3897
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
3898
+ :desc=>
3899
+ "These routines compute the logarithm of the complementary error function\n" +
3900
+ "\\log(\\erfc(x)).\n" +
3901
+ "Exceptional Return Values: none"},
3902
+ {:func_name=>"gsl_sf_mathieu_Mc",
3903
+ :func_type=>"int",
3904
+ :args=>[["int", "j"], ["int", "n"], ["double", "q"], ["double", "x"]],
3905
+ :desc=>
3906
+ "These routines compute the radial j-th kind Mathieu functions\n" +
3907
+ "Mc_n^{(j)}(q,x) and Ms_n^{(j)}(q,x) of order n.\n" +
3908
+ "The allowed values of j are 1 and 2.\n" +
3909
+ "The functions for j = 3,4 can be computed as \n" +
3910
+ "M_n^{(3)} = M_n^{(1)} + iM_n^{(2)} and\n" +
3911
+ "M_n^{(4)} = M_n^{(1)} - iM_n^{(2)},\n" +
3912
+ "where \n" +
3913
+ "M_n^{(j)} = Mc_n^{(j)} or\n" +
3914
+ "Ms_n^{(j)}."},
3915
+ {:func_name=>"gsl_sf_mathieu_Mc_array",
3916
+ :func_type=>"int",
3917
+ :args=>
3918
+ [["int", "j"],
3919
+ ["int", "nmin"],
3920
+ ["int", "nmax"],
3921
+ ["double", "q"],
3922
+ ["double", "x"],
3923
+ ["gsl_sf_mathieu_workspace *", "work"],
3924
+ ["double", "result_array[]"]],
3925
+ :desc=>
3926
+ "These routines compute a series of the radial Mathieu functions of\n" +
3927
+ "kind j, with order from nmin to nmax inclusive, storing the\n" +
3928
+ "results in the array result_array."},
3929
+ {:func_name=>"gsl_sf_mathieu_Mc_e",
3930
+ :func_type=>"int",
3931
+ :args=>
3932
+ [["int", "j"],
3933
+ ["int", "n"],
3934
+ ["double", "q"],
3935
+ ["double", "x"],
3936
+ ["gsl_sf_result *", "result"]],
3937
+ :desc=>
3938
+ "These routines compute the radial j-th kind Mathieu functions\n" +
3939
+ "Mc_n^{(j)}(q,x) and Ms_n^{(j)}(q,x) of order n.\n" +
3940
+ "The allowed values of j are 1 and 2.\n" +
3941
+ "The functions for j = 3,4 can be computed as \n" +
3942
+ "M_n^{(3)} = M_n^{(1)} + iM_n^{(2)} and\n" +
3943
+ "M_n^{(4)} = M_n^{(1)} - iM_n^{(2)},\n" +
3944
+ "where \n" +
3945
+ "M_n^{(j)} = Mc_n^{(j)} or\n" +
3946
+ "Ms_n^{(j)}."},
3947
+ {:func_name=>"gsl_sf_mathieu_Ms",
3948
+ :func_type=>"int",
3949
+ :args=>[["int", "j"], ["int", "n"], ["double", "q"], ["double", "x"]],
3950
+ :desc=>
3951
+ "These routines compute the radial j-th kind Mathieu functions\n" +
3952
+ "Mc_n^{(j)}(q,x) and Ms_n^{(j)}(q,x) of order n.\n" +
3953
+ "The allowed values of j are 1 and 2.\n" +
3954
+ "The functions for j = 3,4 can be computed as \n" +
3955
+ "M_n^{(3)} = M_n^{(1)} + iM_n^{(2)} and\n" +
3956
+ "M_n^{(4)} = M_n^{(1)} - iM_n^{(2)},\n" +
3957
+ "where \n" +
3958
+ "M_n^{(j)} = Mc_n^{(j)} or\n" +
3959
+ "Ms_n^{(j)}."},
3960
+ {:func_name=>"gsl_sf_mathieu_Ms_array",
3961
+ :func_type=>"int",
3962
+ :args=>
3963
+ [["int", "j"],
3964
+ ["int", "nmin"],
3965
+ ["int", "nmax"],
3966
+ ["double", "q"],
3967
+ ["double", "x"],
3968
+ ["gsl_sf_mathieu_workspace *", "work"],
3969
+ ["double", "result_array[]"]],
3970
+ :desc=>
3971
+ "These routines compute a series of the radial Mathieu functions of\n" +
3972
+ "kind j, with order from nmin to nmax inclusive, storing the\n" +
3973
+ "results in the array result_array."},
3974
+ {:func_name=>"gsl_sf_mathieu_Ms_e",
3975
+ :func_type=>"int",
3976
+ :args=>
3977
+ [["int", "j"],
3978
+ ["int", "n"],
3979
+ ["double", "q"],
3980
+ ["double", "x"],
3981
+ ["gsl_sf_result *", "result"]],
3982
+ :desc=>
3983
+ "These routines compute the radial j-th kind Mathieu functions\n" +
3984
+ "Mc_n^{(j)}(q,x) and Ms_n^{(j)}(q,x) of order n.\n" +
3985
+ "The allowed values of j are 1 and 2.\n" +
3986
+ "The functions for j = 3,4 can be computed as \n" +
3987
+ "M_n^{(3)} = M_n^{(1)} + iM_n^{(2)} and\n" +
3988
+ "M_n^{(4)} = M_n^{(1)} - iM_n^{(2)},\n" +
3989
+ "where \n" +
3990
+ "M_n^{(j)} = Mc_n^{(j)} or\n" +
3991
+ "Ms_n^{(j)}."},
3992
+ {:func_name=>"gsl_sf_mathieu_a",
3993
+ :func_type=>"int",
3994
+ :args=>[["int", "n"], ["double", "q"]],
3995
+ :desc=>
3996
+ "These routines compute the characteristic values a_n(q),\n" +
3997
+ "b_n(q) of the Mathieu functions ce_n(q,x) and\n" +
3998
+ "se_n(q,x), respectively."},
3999
+ {:func_name=>"gsl_sf_mathieu_a_array",
4000
+ :func_type=>"int",
4001
+ :args=>
4002
+ [["int", "order_min"],
4003
+ ["int", "order_max"],
4004
+ ["double", "q"],
4005
+ ["gsl_sf_mathieu_workspace *", "work"],
4006
+ ["double", "result_array[]"]],
4007
+ :desc=>
4008
+ "These routines compute a series of Mathieu characteristic values\n" +
4009
+ "a_n(q), b_n(q) for n from order_min to\n" +
4010
+ "order_max inclusive, storing the results in the array result_array."},
4011
+ {:func_name=>"gsl_sf_mathieu_a_e",
4012
+ :func_type=>"int",
4013
+ :args=>[["int", "n"], ["double", "q"], ["gsl_sf_result *", "result"]],
4014
+ :desc=>
4015
+ "These routines compute the characteristic values a_n(q),\n" +
4016
+ "b_n(q) of the Mathieu functions ce_n(q,x) and\n" +
4017
+ "se_n(q,x), respectively."},
4018
+ {:func_name=>"gsl_sf_mathieu_alloc",
4019
+ :func_type=>"gsl_sf_mathieu_workspace *",
4020
+ :args=>[["size_t", "n"], ["double", "qmax"]],
4021
+ :desc=>
4022
+ "This function returns a workspace for the array versions of the\n" +
4023
+ "Mathieu routines. The arguments n and qmax specify the\n" +
4024
+ "maximum order and q-value of Mathieu functions which can be\n" +
4025
+ "computed with this workspace. "},
4026
+ {:func_name=>"gsl_sf_mathieu_b",
4027
+ :func_type=>"int",
4028
+ :args=>[["int", "n"], ["double", "q"]],
4029
+ :desc=>
4030
+ "These routines compute the characteristic values a_n(q),\n" +
4031
+ "b_n(q) of the Mathieu functions ce_n(q,x) and\n" +
4032
+ "se_n(q,x), respectively."},
4033
+ {:func_name=>"gsl_sf_mathieu_b_array",
4034
+ :func_type=>"int",
4035
+ :args=>
4036
+ [["int", "order_min"],
4037
+ ["int", "order_max"],
4038
+ ["double", "q"],
4039
+ ["gsl_sf_mathieu_workspace *", "work"],
4040
+ ["double", "result_array[]"]],
4041
+ :desc=>
4042
+ "These routines compute a series of Mathieu characteristic values\n" +
4043
+ "a_n(q), b_n(q) for n from order_min to\n" +
4044
+ "order_max inclusive, storing the results in the array result_array."},
4045
+ {:func_name=>"gsl_sf_mathieu_b_e",
4046
+ :func_type=>"int",
4047
+ :args=>[["int", "n"], ["double", "q"], ["gsl_sf_result *", "result"]],
4048
+ :desc=>
4049
+ "These routines compute the characteristic values a_n(q),\n" +
4050
+ "b_n(q) of the Mathieu functions ce_n(q,x) and\n" +
4051
+ "se_n(q,x), respectively."},
4052
+ {:func_name=>"gsl_sf_mathieu_ce",
4053
+ :func_type=>"int",
4054
+ :args=>[["int", "n"], ["double", "q"], ["double", "x"]],
4055
+ :desc=>
4056
+ "These routines compute the angular Mathieu functions ce_n(q,x)\n" +
4057
+ "and se_n(q,x), respectively."},
4058
+ {:func_name=>"gsl_sf_mathieu_ce_array",
4059
+ :func_type=>"int",
4060
+ :args=>
4061
+ [["int", "nmin"],
4062
+ ["int", "nmax"],
4063
+ ["double", "q"],
4064
+ ["double", "x"],
4065
+ ["gsl_sf_mathieu_workspace *", "work"],
4066
+ ["double", "result_array[]"]],
4067
+ :desc=>
4068
+ "These routines compute a series of the angular Mathieu functions\n" +
4069
+ "ce_n(q,x) and se_n(q,x) of order n from\n" +
4070
+ "nmin to nmax inclusive, storing the results in the array\n" +
4071
+ "result_array."},
4072
+ {:func_name=>"gsl_sf_mathieu_ce_e",
4073
+ :func_type=>"int",
4074
+ :args=>
4075
+ [["int", "n"],
4076
+ ["double", "q"],
4077
+ ["double", "x"],
4078
+ ["gsl_sf_result *", "result"]],
4079
+ :desc=>
4080
+ "These routines compute the angular Mathieu functions ce_n(q,x)\n" +
4081
+ "and se_n(q,x), respectively."},
4082
+ {:func_name=>"gsl_sf_mathieu_free",
4083
+ :func_type=>"void",
4084
+ :args=>[["gsl_sf_mathieu_workspace *", "work"]],
4085
+ :desc=>"This function frees the workspace work."},
4086
+ {:func_name=>"gsl_sf_mathieu_se",
4087
+ :func_type=>"int",
4088
+ :args=>[["int", "n"], ["double", "q"], ["double", "x"]],
4089
+ :desc=>
4090
+ "These routines compute the angular Mathieu functions ce_n(q,x)\n" +
4091
+ "and se_n(q,x), respectively."},
4092
+ {:func_name=>"gsl_sf_mathieu_se_array",
4093
+ :func_type=>"int",
4094
+ :args=>
4095
+ [["int", "nmin"],
4096
+ ["int", "nmax"],
4097
+ ["double", "q"],
4098
+ ["double", "x"],
4099
+ ["gsl_sf_mathieu_workspace *", "work"],
4100
+ ["double", "result_array[]"]],
4101
+ :desc=>
4102
+ "These routines compute a series of the angular Mathieu functions\n" +
4103
+ "ce_n(q,x) and se_n(q,x) of order n from\n" +
4104
+ "nmin to nmax inclusive, storing the results in the array\n" +
4105
+ "result_array."},
4106
+ {:func_name=>"gsl_sf_mathieu_se_e",
4107
+ :func_type=>"int",
4108
+ :args=>
4109
+ [["int", "n"],
4110
+ ["double", "q"],
4111
+ ["double", "x"],
4112
+ ["gsl_sf_result *", "result"]],
4113
+ :desc=>
4114
+ "These routines compute the angular Mathieu functions ce_n(q,x)\n" +
4115
+ "and se_n(q,x), respectively."},
4116
+ {:func_name=>"gsl_sf_multiply",
4117
+ :func_type=>"double",
4118
+ :args=>[["double", "x"], ["double", "y"]],
4119
+ :desc=>
4120
+ "This function multiplies x and y storing the product and its\n" +
4121
+ "associated error in result.\n" +
4122
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
4123
+ {:func_name=>"gsl_sf_multiply_e",
4124
+ :func_type=>"int",
4125
+ :args=>[["double", "x"], ["double", "y"], ["gsl_sf_result *", "result"]],
4126
+ :desc=>
4127
+ "This function multiplies x and y storing the product and its\n" +
4128
+ "associated error in result.\n" +
4129
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
4130
+ {:func_name=>"gsl_sf_multiply_err_e",
4131
+ :func_type=>"int",
4132
+ :args=>
4133
+ [["double", "x"],
4134
+ ["double", "dx"],
4135
+ ["double", "y"],
4136
+ ["double", "dy"],
4137
+ ["gsl_sf_result *", "result"]],
4138
+ :desc=>
4139
+ "This function multiplies x and y with associated absolute\n" +
4140
+ "errors dx and dy. The product \n" +
4141
+ "xy \\pm xy \\sqrt{(dx/x)^2 +(dy/y)^2}\n" +
4142
+ "is stored in result.\n" +
4143
+ "Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW"},
4144
+ {:func_name=>"gsl_sf_poch",
4145
+ :func_type=>"double",
4146
+ :args=>[["double", "a"], ["double", "x"]],
4147
+ :desc=>
4148
+ "These routines compute the Pochhammer symbol (a)_x = \\Gamma(a + x)/\\Gamma(a).\n" +
4149
+ "The Pochhammer symbol is also known as the Apell symbol and\n" +
4150
+ "sometimes written as (a,x). When a and a + x \n" +
4151
+ "are negative integers or zero, the limiting value of the ratio is returned. "},
4152
+ {:func_name=>"gsl_sf_poch_e",
4153
+ :func_type=>"int",
4154
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
4155
+ :desc=>
4156
+ "These routines compute the Pochhammer symbol (a)_x = \\Gamma(a + x)/\\Gamma(a).\n" +
4157
+ "The Pochhammer symbol is also known as the Apell symbol and\n" +
4158
+ "sometimes written as (a,x). When a and a + x \n" +
4159
+ "are negative integers or zero, the limiting value of the ratio is returned. "},
4160
+ {:func_name=>"gsl_sf_pochrel",
4161
+ :func_type=>"double",
4162
+ :args=>[["double", "a"], ["double", "x"]],
4163
+ :desc=>
4164
+ "These routines compute the relative Pochhammer symbol ((a)_x - 1)/x\n" +
4165
+ "where (a)_x = \\Gamma(a + x)/\\Gamma(a)."},
4166
+ {:func_name=>"gsl_sf_pochrel_e",
4167
+ :func_type=>"int",
4168
+ :args=>[["double", "a"], ["double", "x"], ["gsl_sf_result *", "result"]],
4169
+ :desc=>
4170
+ "These routines compute the relative Pochhammer symbol ((a)_x - 1)/x\n" +
4171
+ "where (a)_x = \\Gamma(a + x)/\\Gamma(a)."},
4172
+ {:func_name=>"gsl_sf_polar_to_rect",
4173
+ :func_type=>"int",
4174
+ :args=>
4175
+ [["double", "r"],
4176
+ ["double", "theta"],
4177
+ ["gsl_sf_result *", "x"],
4178
+ ["gsl_sf_result *", "y"]],
4179
+ :desc=>
4180
+ "This function converts the polar coordinates (r, theta) to\n" +
4181
+ "rectilinear coordinates (x, y), x = r\\cos(\\theta),\n" +
4182
+ "y = r\\sin(\\theta).\n" +
4183
+ "Exceptional Return Values: GSL_ELOSS"},
4184
+ {:func_name=>"gsl_sf_pow_int",
4185
+ :func_type=>"double",
4186
+ :args=>[["double", "x"], ["int", "n"]],
4187
+ :desc=>
4188
+ "These routines compute the power x^n for integer n. The\n" +
4189
+ "power is computed using the minimum number of multiplications. For\n" +
4190
+ "example, x^8 is computed as ((x^2)^2)^2, requiring only 3\n" +
4191
+ "multiplications. For reasons of efficiency, these functions do not\n" +
4192
+ "check for overflow or underflow conditions. The following is a simple example::"},
4193
+ {:func_name=>"gsl_sf_pow_int_e",
4194
+ :func_type=>"int",
4195
+ :args=>[["double", "x"], ["int", "n"], ["gsl_sf_result *", "result"]],
4196
+ :desc=>
4197
+ "These routines compute the power x^n for integer n. The\n" +
4198
+ "power is computed using the minimum number of multiplications. For\n" +
4199
+ "example, x^8 is computed as ((x^2)^2)^2, requiring only 3\n" +
4200
+ "multiplications. For reasons of efficiency, these functions do not\n" +
4201
+ "check for overflow or underflow conditions. The following is a simple example::"},
4202
+ {:func_name=>"gsl_sf_psi",
4203
+ :func_type=>"double",
4204
+ :args=>[["double", "x"]],
4205
+ :desc=>
4206
+ "These routines compute the digamma function \\psi(x) for general\n" +
4207
+ "x, x \\ne 0.\n" +
4208
+ "Exceptional Return Values: GSL_EDOM, GSL_ELOSS"},
4209
+ {:func_name=>"gsl_sf_psi_1",
4210
+ :func_type=>"double",
4211
+ :args=>[["double", "x"]],
4212
+ :desc=>
4213
+ "These routines compute the Trigamma function \\psi'(x) for\n" +
4214
+ "general x.\n" +
4215
+ "Exceptional Return Values: GSL_EDOM, GSL_ELOSS"},
4216
+ {:func_name=>"gsl_sf_psi_1_e",
4217
+ :func_type=>"int",
4218
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4219
+ :desc=>
4220
+ "These routines compute the Trigamma function \\psi'(x) for\n" +
4221
+ "general x.\n" +
4222
+ "Exceptional Return Values: GSL_EDOM, GSL_ELOSS"},
4223
+ {:func_name=>"gsl_sf_psi_1_int",
4224
+ :func_type=>"double",
4225
+ :args=>[["int", "n"]],
4226
+ :desc=>
4227
+ "These routines compute the Trigamma function \\psi'(n) for\n" +
4228
+ "positive integer n.\n" +
4229
+ "Exceptional Return Values: GSL_EDOM"},
4230
+ {:func_name=>"gsl_sf_psi_1_int_e",
4231
+ :func_type=>"int",
4232
+ :args=>[["int", "n"], ["gsl_sf_result *", "result"]],
4233
+ :desc=>
4234
+ "These routines compute the Trigamma function \\psi'(n) for\n" +
4235
+ "positive integer n.\n" +
4236
+ "Exceptional Return Values: GSL_EDOM"},
4237
+ {:func_name=>"gsl_sf_psi_1piy",
4238
+ :func_type=>"double",
4239
+ :args=>[["double", "y"]],
4240
+ :desc=>
4241
+ "These routines compute the real part of the digamma function on the line\n" +
4242
+ "1 + i y, \\Re[\\psi(1 + i y)].\n" +
4243
+ "Exceptional Return Values: none"},
4244
+ {:func_name=>"gsl_sf_psi_1piy_e",
4245
+ :func_type=>"int",
4246
+ :args=>[["double", "y"], ["gsl_sf_result *", "result"]],
4247
+ :desc=>
4248
+ "These routines compute the real part of the digamma function on the line\n" +
4249
+ "1 + i y, \\Re[\\psi(1 + i y)].\n" +
4250
+ "Exceptional Return Values: none"},
4251
+ {:func_name=>"gsl_sf_psi_e",
4252
+ :func_type=>"int",
4253
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4254
+ :desc=>
4255
+ "These routines compute the digamma function \\psi(x) for general\n" +
4256
+ "x, x \\ne 0.\n" +
4257
+ "Exceptional Return Values: GSL_EDOM, GSL_ELOSS"},
4258
+ {:func_name=>"gsl_sf_psi_int",
4259
+ :func_type=>"double",
4260
+ :args=>[["int", "n"]],
4261
+ :desc=>
4262
+ "These routines compute the digamma function \\psi(n) for positive\n" +
4263
+ "integer n. The digamma function is also called the Psi function.\n" +
4264
+ "Exceptional Return Values: GSL_EDOM"},
4265
+ {:func_name=>"gsl_sf_psi_int_e",
4266
+ :func_type=>"int",
4267
+ :args=>[["int", "n"], ["gsl_sf_result *", "result"]],
4268
+ :desc=>
4269
+ "These routines compute the digamma function \\psi(n) for positive\n" +
4270
+ "integer n. The digamma function is also called the Psi function.\n" +
4271
+ "Exceptional Return Values: GSL_EDOM"},
4272
+ {:func_name=>"gsl_sf_psi_n",
4273
+ :func_type=>"double",
4274
+ :args=>[["int", "n"], ["double", "x"]],
4275
+ :desc=>
4276
+ "These routines compute the polygamma function \\psi^{(n)}(x) for\n" +
4277
+ "n \\ge 0, x > 0.\n" +
4278
+ "Exceptional Return Values: GSL_EDOM"},
4279
+ {:func_name=>"gsl_sf_psi_n_e",
4280
+ :func_type=>"int",
4281
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
4282
+ :desc=>
4283
+ "These routines compute the polygamma function \\psi^{(n)}(x) for\n" +
4284
+ "n \\ge 0, x > 0.\n" +
4285
+ "Exceptional Return Values: GSL_EDOM"},
4286
+ {:func_name=>"gsl_sf_rect_to_polar",
4287
+ :func_type=>"int",
4288
+ :args=>
4289
+ [["double", "x"],
4290
+ ["double", "y"],
4291
+ ["gsl_sf_result *", "r"],
4292
+ ["gsl_sf_result *", "theta"]],
4293
+ :desc=>
4294
+ "This function converts the rectilinear coordinates (x, y) to\n" +
4295
+ "polar coordinates (r, theta), such that x = r\\cos(\\theta),\n" +
4296
+ "y = r\\sin(\\theta). The argument theta\n" +
4297
+ "lies in the range [-\\pi, \\pi].\n" +
4298
+ "Exceptional Return Values: GSL_EDOM"},
4299
+ {:func_name=>"gsl_sf_sin",
4300
+ :func_type=>"double",
4301
+ :args=>[["double", "x"]],
4302
+ :desc=>
4303
+ "These routines compute the sine function \\sin(x).\n" +
4304
+ "Exceptional Return Values:"},
4305
+ {:func_name=>"gsl_sf_sin_e",
4306
+ :func_type=>"int",
4307
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4308
+ :desc=>
4309
+ "These routines compute the sine function \\sin(x).\n" +
4310
+ "Exceptional Return Values:"},
4311
+ {:func_name=>"gsl_sf_sin_err_e",
4312
+ :func_type=>"int",
4313
+ :args=>[["double", "x"], ["double", "dx"], ["gsl_sf_result *", "result"]],
4314
+ :desc=>
4315
+ "This routine computes the sine of an angle x with an associated \n" +
4316
+ "absolute error dx,\n" +
4317
+ "\\sin(x \\pm dx). Note that this function is provided in the error-handling form only since\n" +
4318
+ "its purpose is to compute the propagated error."},
4319
+ {:func_name=>"gsl_sf_sinc",
4320
+ :func_type=>"double",
4321
+ :args=>[["double", "x"]],
4322
+ :desc=>
4323
+ "These routines compute \\sinc(x) = \\sin(\\pi x) / (\\pi x) for any\n" +
4324
+ "value of x.\n" +
4325
+ "Exceptional Return Values: none"},
4326
+ {:func_name=>"gsl_sf_sinc_e",
4327
+ :func_type=>"int",
4328
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4329
+ :desc=>
4330
+ "These routines compute \\sinc(x) = \\sin(\\pi x) / (\\pi x) for any\n" +
4331
+ "value of x.\n" +
4332
+ "Exceptional Return Values: none"},
4333
+ {:func_name=>"gsl_sf_synchrotron_1",
4334
+ :func_type=>"double",
4335
+ :args=>[["double", "x"]],
4336
+ :desc=>
4337
+ "These routines compute the first synchrotron function \n" +
4338
+ "x \\int_x^\\infty dt K_{5/3}(t)\n" +
4339
+ "for x \\ge 0.\n" +
4340
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4341
+ {:func_name=>"gsl_sf_synchrotron_1_e",
4342
+ :func_type=>"int",
4343
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4344
+ :desc=>
4345
+ "These routines compute the first synchrotron function \n" +
4346
+ "x \\int_x^\\infty dt K_{5/3}(t)\n" +
4347
+ "for x \\ge 0.\n" +
4348
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4349
+ {:func_name=>"gsl_sf_synchrotron_2",
4350
+ :func_type=>"double",
4351
+ :args=>[["double", "x"]],
4352
+ :desc=>
4353
+ "These routines compute the second synchrotron function \n" +
4354
+ "x K_{2/3}(x) for x \\ge 0.\n" +
4355
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4356
+ {:func_name=>"gsl_sf_synchrotron_2_e",
4357
+ :func_type=>"int",
4358
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4359
+ :desc=>
4360
+ "These routines compute the second synchrotron function \n" +
4361
+ "x K_{2/3}(x) for x \\ge 0.\n" +
4362
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4363
+ {:func_name=>"gsl_sf_taylorcoeff",
4364
+ :func_type=>"double",
4365
+ :args=>[["int", "n"], ["double", "x"]],
4366
+ :desc=>
4367
+ "These routines compute the Taylor coefficient x^n / n! for \n" +
4368
+ "x \\ge 0, n \\ge 0"},
4369
+ {:func_name=>"gsl_sf_taylorcoeff_e",
4370
+ :func_type=>"int",
4371
+ :args=>[["int", "n"], ["double", "x"], ["gsl_sf_result *", "result"]],
4372
+ :desc=>
4373
+ "These routines compute the Taylor coefficient x^n / n! for \n" +
4374
+ "x \\ge 0, n \\ge 0"},
4375
+ {:func_name=>"gsl_sf_transport_2",
4376
+ :func_type=>"double",
4377
+ :args=>[["double", "x"]],
4378
+ :desc=>
4379
+ "These routines compute the transport function J(2,x).\n" +
4380
+ "Exceptional Return Values: GSL_EDOM"},
4381
+ {:func_name=>"gsl_sf_transport_2_e",
4382
+ :func_type=>"int",
4383
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4384
+ :desc=>
4385
+ "These routines compute the transport function J(2,x).\n" +
4386
+ "Exceptional Return Values: GSL_EDOM"},
4387
+ {:func_name=>"gsl_sf_transport_3",
4388
+ :func_type=>"double",
4389
+ :args=>[["double", "x"]],
4390
+ :desc=>
4391
+ "These routines compute the transport function J(3,x).\n" +
4392
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4393
+ {:func_name=>"gsl_sf_transport_3_e",
4394
+ :func_type=>"int",
4395
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4396
+ :desc=>
4397
+ "These routines compute the transport function J(3,x).\n" +
4398
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4399
+ {:func_name=>"gsl_sf_transport_4",
4400
+ :func_type=>"double",
4401
+ :args=>[["double", "x"]],
4402
+ :desc=>
4403
+ "These routines compute the transport function J(4,x).\n" +
4404
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4405
+ {:func_name=>"gsl_sf_transport_4_e",
4406
+ :func_type=>"int",
4407
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4408
+ :desc=>
4409
+ "These routines compute the transport function J(4,x).\n" +
4410
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4411
+ {:func_name=>"gsl_sf_transport_5",
4412
+ :func_type=>"double",
4413
+ :args=>[["double", "x"]],
4414
+ :desc=>
4415
+ "These routines compute the transport function J(5,x).\n" +
4416
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4417
+ {:func_name=>"gsl_sf_transport_5_e",
4418
+ :func_type=>"int",
4419
+ :args=>[["double", "x"], ["gsl_sf_result *", "result"]],
4420
+ :desc=>
4421
+ "These routines compute the transport function J(5,x).\n" +
4422
+ "Exceptional Return Values: GSL_EDOM, GSL_EUNDRFLW"},
4423
+ {:func_name=>"gsl_sf_zeta",
4424
+ :func_type=>"double",
4425
+ :args=>[["double", "s"]],
4426
+ :desc=>
4427
+ "These routines compute the Riemann zeta function \\zeta(s)\n" +
4428
+ "for arbitrary s,\n" +
4429
+ "s \\ne 1.\n" +
4430
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
4431
+ {:func_name=>"gsl_sf_zeta_e",
4432
+ :func_type=>"int",
4433
+ :args=>[["double", "s"], ["gsl_sf_result *", "result"]],
4434
+ :desc=>
4435
+ "These routines compute the Riemann zeta function \\zeta(s)\n" +
4436
+ "for arbitrary s,\n" +
4437
+ "s \\ne 1.\n" +
4438
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
4439
+ {:func_name=>"gsl_sf_zeta_int",
4440
+ :func_type=>"double",
4441
+ :args=>[["int", "n"]],
4442
+ :desc=>
4443
+ "These routines compute the Riemann zeta function \\zeta(n) \n" +
4444
+ "for integer n,\n" +
4445
+ "n \\ne 1.\n" +
4446
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
4447
+ {:func_name=>"gsl_sf_zeta_int_e",
4448
+ :func_type=>"int",
4449
+ :args=>[["int", "n"], ["gsl_sf_result *", "result"]],
4450
+ :desc=>
4451
+ "These routines compute the Riemann zeta function \\zeta(n) \n" +
4452
+ "for integer n,\n" +
4453
+ "n \\ne 1.\n" +
4454
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
4455
+ {:func_name=>"gsl_sf_zetam1",
4456
+ :func_type=>"double",
4457
+ :args=>[["double", "s"]],
4458
+ :desc=>
4459
+ "These routines compute \\zeta(s) - 1 for arbitrary s,\n" +
4460
+ "s \\ne 1.\n" +
4461
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
4462
+ {:func_name=>"gsl_sf_zetam1_e",
4463
+ :func_type=>"int",
4464
+ :args=>[["double", "s"], ["gsl_sf_result *", "result"]],
4465
+ :desc=>
4466
+ "These routines compute \\zeta(s) - 1 for arbitrary s,\n" +
4467
+ "s \\ne 1.\n" +
4468
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
4469
+ {:func_name=>"gsl_sf_zetam1_int",
4470
+ :func_type=>"double",
4471
+ :args=>[["int", "n"]],
4472
+ :desc=>
4473
+ "These routines compute \\zeta(n) - 1 for integer n,\n" +
4474
+ "n \\ne 1.\n" +
4475
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"},
4476
+ {:func_name=>"gsl_sf_zetam1_int_e",
4477
+ :func_type=>"int",
4478
+ :args=>[["int", "n"], ["gsl_sf_result *", "result"]],
4479
+ :desc=>
4480
+ "These routines compute \\zeta(n) - 1 for integer n,\n" +
4481
+ "n \\ne 1.\n" +
4482
+ "Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW"}]