scipy 1.15.3__cp312-cp312-macosx_14_0_arm64.whl → 1.16.0rc2__cp312-cp312-macosx_14_0_arm64.whl

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 (628) hide show
  1. scipy/__config__.py +4 -4
  2. scipy/__init__.py +3 -6
  3. scipy/_cyutility.cpython-312-darwin.so +0 -0
  4. scipy/_lib/_array_api.py +486 -161
  5. scipy/_lib/_array_api_compat_vendor.py +9 -0
  6. scipy/_lib/_bunch.py +4 -0
  7. scipy/_lib/_ccallback_c.cpython-312-darwin.so +0 -0
  8. scipy/_lib/_docscrape.py +1 -1
  9. scipy/_lib/_elementwise_iterative_method.py +15 -26
  10. scipy/_lib/_sparse.py +41 -0
  11. scipy/_lib/_test_deprecation_call.cpython-312-darwin.so +0 -0
  12. scipy/_lib/_test_deprecation_def.cpython-312-darwin.so +0 -0
  13. scipy/_lib/_testutils.py +6 -2
  14. scipy/_lib/_util.py +222 -125
  15. scipy/_lib/array_api_compat/__init__.py +4 -4
  16. scipy/_lib/array_api_compat/_internal.py +19 -6
  17. scipy/_lib/array_api_compat/common/__init__.py +1 -1
  18. scipy/_lib/array_api_compat/common/_aliases.py +365 -193
  19. scipy/_lib/array_api_compat/common/_fft.py +94 -64
  20. scipy/_lib/array_api_compat/common/_helpers.py +413 -180
  21. scipy/_lib/array_api_compat/common/_linalg.py +116 -40
  22. scipy/_lib/array_api_compat/common/_typing.py +179 -10
  23. scipy/_lib/array_api_compat/cupy/__init__.py +1 -4
  24. scipy/_lib/array_api_compat/cupy/_aliases.py +61 -41
  25. scipy/_lib/array_api_compat/cupy/_info.py +16 -6
  26. scipy/_lib/array_api_compat/cupy/_typing.py +24 -39
  27. scipy/_lib/array_api_compat/dask/array/__init__.py +6 -3
  28. scipy/_lib/array_api_compat/dask/array/_aliases.py +267 -108
  29. scipy/_lib/array_api_compat/dask/array/_info.py +105 -34
  30. scipy/_lib/array_api_compat/dask/array/fft.py +5 -8
  31. scipy/_lib/array_api_compat/dask/array/linalg.py +21 -22
  32. scipy/_lib/array_api_compat/numpy/__init__.py +13 -15
  33. scipy/_lib/array_api_compat/numpy/_aliases.py +98 -49
  34. scipy/_lib/array_api_compat/numpy/_info.py +36 -16
  35. scipy/_lib/array_api_compat/numpy/_typing.py +27 -43
  36. scipy/_lib/array_api_compat/numpy/fft.py +11 -5
  37. scipy/_lib/array_api_compat/numpy/linalg.py +75 -22
  38. scipy/_lib/array_api_compat/torch/__init__.py +3 -5
  39. scipy/_lib/array_api_compat/torch/_aliases.py +262 -159
  40. scipy/_lib/array_api_compat/torch/_info.py +27 -16
  41. scipy/_lib/array_api_compat/torch/_typing.py +3 -0
  42. scipy/_lib/array_api_compat/torch/fft.py +17 -18
  43. scipy/_lib/array_api_compat/torch/linalg.py +16 -16
  44. scipy/_lib/array_api_extra/__init__.py +26 -3
  45. scipy/_lib/array_api_extra/_delegation.py +171 -0
  46. scipy/_lib/array_api_extra/_lib/__init__.py +1 -0
  47. scipy/_lib/array_api_extra/_lib/_at.py +463 -0
  48. scipy/_lib/array_api_extra/_lib/_backends.py +46 -0
  49. scipy/_lib/array_api_extra/_lib/_funcs.py +937 -0
  50. scipy/_lib/array_api_extra/_lib/_lazy.py +357 -0
  51. scipy/_lib/array_api_extra/_lib/_testing.py +278 -0
  52. scipy/_lib/array_api_extra/_lib/_utils/__init__.py +1 -0
  53. scipy/_lib/array_api_extra/_lib/_utils/_compat.py +74 -0
  54. scipy/_lib/array_api_extra/_lib/_utils/_compat.pyi +45 -0
  55. scipy/_lib/array_api_extra/_lib/_utils/_helpers.py +559 -0
  56. scipy/_lib/array_api_extra/_lib/_utils/_typing.py +10 -0
  57. scipy/_lib/array_api_extra/_lib/_utils/_typing.pyi +105 -0
  58. scipy/_lib/array_api_extra/testing.py +359 -0
  59. scipy/_lib/decorator.py +2 -2
  60. scipy/_lib/doccer.py +1 -7
  61. scipy/_lib/messagestream.cpython-312-darwin.so +0 -0
  62. scipy/_lib/pyprima/__init__.py +212 -0
  63. scipy/_lib/pyprima/cobyla/__init__.py +0 -0
  64. scipy/_lib/pyprima/cobyla/cobyla.py +559 -0
  65. scipy/_lib/pyprima/cobyla/cobylb.py +714 -0
  66. scipy/_lib/pyprima/cobyla/geometry.py +226 -0
  67. scipy/_lib/pyprima/cobyla/initialize.py +215 -0
  68. scipy/_lib/pyprima/cobyla/trustregion.py +492 -0
  69. scipy/_lib/pyprima/cobyla/update.py +289 -0
  70. scipy/_lib/pyprima/common/__init__.py +0 -0
  71. scipy/_lib/pyprima/common/_bounds.py +34 -0
  72. scipy/_lib/pyprima/common/_linear_constraints.py +46 -0
  73. scipy/_lib/pyprima/common/_nonlinear_constraints.py +54 -0
  74. scipy/_lib/pyprima/common/_project.py +173 -0
  75. scipy/_lib/pyprima/common/checkbreak.py +93 -0
  76. scipy/_lib/pyprima/common/consts.py +47 -0
  77. scipy/_lib/pyprima/common/evaluate.py +99 -0
  78. scipy/_lib/pyprima/common/history.py +38 -0
  79. scipy/_lib/pyprima/common/infos.py +30 -0
  80. scipy/_lib/pyprima/common/linalg.py +435 -0
  81. scipy/_lib/pyprima/common/message.py +290 -0
  82. scipy/_lib/pyprima/common/powalg.py +131 -0
  83. scipy/_lib/pyprima/common/preproc.py +277 -0
  84. scipy/_lib/pyprima/common/present.py +5 -0
  85. scipy/_lib/pyprima/common/ratio.py +54 -0
  86. scipy/_lib/pyprima/common/redrho.py +47 -0
  87. scipy/_lib/pyprima/common/selectx.py +296 -0
  88. scipy/_lib/tests/test__util.py +105 -121
  89. scipy/_lib/tests/test_array_api.py +166 -35
  90. scipy/_lib/tests/test_bunch.py +7 -0
  91. scipy/_lib/tests/test_ccallback.py +2 -10
  92. scipy/_lib/tests/test_public_api.py +13 -0
  93. scipy/cluster/_hierarchy.cpython-312-darwin.so +0 -0
  94. scipy/cluster/_optimal_leaf_ordering.cpython-312-darwin.so +0 -0
  95. scipy/cluster/_vq.cpython-312-darwin.so +0 -0
  96. scipy/cluster/hierarchy.py +393 -223
  97. scipy/cluster/tests/test_hierarchy.py +273 -335
  98. scipy/cluster/tests/test_vq.py +45 -61
  99. scipy/cluster/vq.py +39 -35
  100. scipy/conftest.py +263 -157
  101. scipy/constants/_constants.py +4 -1
  102. scipy/constants/tests/test_codata.py +2 -2
  103. scipy/constants/tests/test_constants.py +11 -18
  104. scipy/datasets/_download_all.py +15 -1
  105. scipy/datasets/_fetchers.py +7 -1
  106. scipy/datasets/_utils.py +1 -1
  107. scipy/differentiate/_differentiate.py +25 -25
  108. scipy/differentiate/tests/test_differentiate.py +24 -25
  109. scipy/fft/_basic.py +20 -0
  110. scipy/fft/_helper.py +3 -34
  111. scipy/fft/_pocketfft/helper.py +29 -1
  112. scipy/fft/_pocketfft/tests/test_basic.py +2 -4
  113. scipy/fft/_pocketfft/tests/test_real_transforms.py +4 -4
  114. scipy/fft/_realtransforms.py +13 -0
  115. scipy/fft/tests/test_basic.py +27 -25
  116. scipy/fft/tests/test_fftlog.py +16 -7
  117. scipy/fft/tests/test_helper.py +18 -34
  118. scipy/fft/tests/test_real_transforms.py +8 -10
  119. scipy/fftpack/convolve.cpython-312-darwin.so +0 -0
  120. scipy/fftpack/tests/test_basic.py +2 -4
  121. scipy/fftpack/tests/test_real_transforms.py +8 -9
  122. scipy/integrate/_bvp.py +9 -3
  123. scipy/integrate/_cubature.py +3 -2
  124. scipy/integrate/_dop.cpython-312-darwin.so +0 -0
  125. scipy/integrate/_lsoda.cpython-312-darwin.so +0 -0
  126. scipy/integrate/_ode.py +9 -2
  127. scipy/integrate/_odepack.cpython-312-darwin.so +0 -0
  128. scipy/integrate/_quad_vec.py +21 -29
  129. scipy/integrate/_quadpack.cpython-312-darwin.so +0 -0
  130. scipy/integrate/_quadpack_py.py +11 -7
  131. scipy/integrate/_quadrature.py +3 -3
  132. scipy/integrate/_rules/_base.py +2 -2
  133. scipy/integrate/_tanhsinh.py +48 -47
  134. scipy/integrate/_test_odeint_banded.cpython-312-darwin.so +0 -0
  135. scipy/integrate/_vode.cpython-312-darwin.so +0 -0
  136. scipy/integrate/tests/test__quad_vec.py +0 -6
  137. scipy/integrate/tests/test_banded_ode_solvers.py +85 -0
  138. scipy/integrate/tests/test_cubature.py +21 -35
  139. scipy/integrate/tests/test_quadrature.py +6 -8
  140. scipy/integrate/tests/test_tanhsinh.py +56 -48
  141. scipy/interpolate/__init__.py +70 -58
  142. scipy/interpolate/_bary_rational.py +22 -22
  143. scipy/interpolate/_bsplines.py +119 -66
  144. scipy/interpolate/_cubic.py +65 -50
  145. scipy/interpolate/_dfitpack.cpython-312-darwin.so +0 -0
  146. scipy/interpolate/_dierckx.cpython-312-darwin.so +0 -0
  147. scipy/interpolate/_fitpack.cpython-312-darwin.so +0 -0
  148. scipy/interpolate/_fitpack2.py +9 -6
  149. scipy/interpolate/_fitpack_impl.py +32 -26
  150. scipy/interpolate/_fitpack_repro.py +23 -19
  151. scipy/interpolate/_interpnd.cpython-312-darwin.so +0 -0
  152. scipy/interpolate/_interpolate.py +30 -12
  153. scipy/interpolate/_ndbspline.py +13 -18
  154. scipy/interpolate/_ndgriddata.py +5 -8
  155. scipy/interpolate/_polyint.py +95 -31
  156. scipy/interpolate/_ppoly.cpython-312-darwin.so +0 -0
  157. scipy/interpolate/_rbf.py +2 -2
  158. scipy/interpolate/_rbfinterp.py +1 -1
  159. scipy/interpolate/_rbfinterp_pythran.cpython-312-darwin.so +0 -0
  160. scipy/interpolate/_rgi.py +31 -26
  161. scipy/interpolate/_rgi_cython.cpython-312-darwin.so +0 -0
  162. scipy/interpolate/dfitpack.py +0 -20
  163. scipy/interpolate/interpnd.py +1 -2
  164. scipy/interpolate/tests/test_bary_rational.py +2 -2
  165. scipy/interpolate/tests/test_bsplines.py +97 -1
  166. scipy/interpolate/tests/test_fitpack2.py +39 -1
  167. scipy/interpolate/tests/test_interpnd.py +32 -20
  168. scipy/interpolate/tests/test_interpolate.py +48 -4
  169. scipy/interpolate/tests/test_rgi.py +2 -1
  170. scipy/io/_fast_matrix_market/__init__.py +2 -0
  171. scipy/io/_harwell_boeing/_fortran_format_parser.py +19 -16
  172. scipy/io/_harwell_boeing/hb.py +7 -11
  173. scipy/io/_idl.py +5 -7
  174. scipy/io/_netcdf.py +15 -5
  175. scipy/io/_test_fortran.cpython-312-darwin.so +0 -0
  176. scipy/io/arff/tests/test_arffread.py +3 -3
  177. scipy/io/matlab/__init__.py +5 -3
  178. scipy/io/matlab/_mio.py +4 -1
  179. scipy/io/matlab/_mio5.py +19 -13
  180. scipy/io/matlab/_mio5_utils.cpython-312-darwin.so +0 -0
  181. scipy/io/matlab/_mio_utils.cpython-312-darwin.so +0 -0
  182. scipy/io/matlab/_miobase.py +4 -1
  183. scipy/io/matlab/_streams.cpython-312-darwin.so +0 -0
  184. scipy/io/matlab/tests/test_mio.py +46 -18
  185. scipy/io/matlab/tests/test_mio_funcs.py +1 -1
  186. scipy/io/tests/test_mmio.py +7 -1
  187. scipy/io/tests/test_wavfile.py +41 -0
  188. scipy/io/wavfile.py +57 -10
  189. scipy/linalg/_basic.py +113 -86
  190. scipy/linalg/_cythonized_array_utils.cpython-312-darwin.so +0 -0
  191. scipy/linalg/_decomp.py +22 -9
  192. scipy/linalg/_decomp_cholesky.py +28 -13
  193. scipy/linalg/_decomp_cossin.py +45 -30
  194. scipy/linalg/_decomp_interpolative.cpython-312-darwin.so +0 -0
  195. scipy/linalg/_decomp_ldl.py +4 -1
  196. scipy/linalg/_decomp_lu.py +18 -6
  197. scipy/linalg/_decomp_lu_cython.cpython-312-darwin.so +0 -0
  198. scipy/linalg/_decomp_polar.py +2 -0
  199. scipy/linalg/_decomp_qr.py +6 -2
  200. scipy/linalg/_decomp_qz.py +3 -0
  201. scipy/linalg/_decomp_schur.py +3 -1
  202. scipy/linalg/_decomp_svd.py +13 -2
  203. scipy/linalg/_decomp_update.cpython-312-darwin.so +0 -0
  204. scipy/linalg/_expm_frechet.py +4 -0
  205. scipy/linalg/_fblas.cpython-312-darwin.so +0 -0
  206. scipy/linalg/_flapack.cpython-312-darwin.so +0 -0
  207. scipy/linalg/_linalg_pythran.cpython-312-darwin.so +0 -0
  208. scipy/linalg/_matfuncs.py +187 -4
  209. scipy/linalg/_matfuncs_expm.cpython-312-darwin.so +0 -0
  210. scipy/linalg/_matfuncs_schur_sqrtm.cpython-312-darwin.so +0 -0
  211. scipy/linalg/_matfuncs_sqrtm.py +1 -99
  212. scipy/linalg/_matfuncs_sqrtm_triu.cpython-312-darwin.so +0 -0
  213. scipy/linalg/_procrustes.py +2 -0
  214. scipy/linalg/_sketches.py +17 -6
  215. scipy/linalg/_solve_toeplitz.cpython-312-darwin.so +0 -0
  216. scipy/linalg/_solvers.py +7 -2
  217. scipy/linalg/_special_matrices.py +26 -36
  218. scipy/linalg/cython_blas.cpython-312-darwin.so +0 -0
  219. scipy/linalg/cython_lapack.cpython-312-darwin.so +0 -0
  220. scipy/linalg/lapack.py +22 -2
  221. scipy/linalg/tests/_cython_examples/meson.build +7 -0
  222. scipy/linalg/tests/test_basic.py +31 -16
  223. scipy/linalg/tests/test_batch.py +588 -0
  224. scipy/linalg/tests/test_cythonized_array_utils.py +0 -2
  225. scipy/linalg/tests/test_decomp.py +40 -3
  226. scipy/linalg/tests/test_decomp_cossin.py +14 -0
  227. scipy/linalg/tests/test_decomp_ldl.py +1 -1
  228. scipy/linalg/tests/test_lapack.py +115 -7
  229. scipy/linalg/tests/test_matfuncs.py +157 -102
  230. scipy/linalg/tests/test_procrustes.py +0 -7
  231. scipy/linalg/tests/test_solve_toeplitz.py +1 -1
  232. scipy/linalg/tests/test_special_matrices.py +1 -5
  233. scipy/ndimage/__init__.py +1 -0
  234. scipy/ndimage/_cytest.cpython-312-darwin.so +0 -0
  235. scipy/ndimage/_delegators.py +8 -2
  236. scipy/ndimage/_filters.py +453 -5
  237. scipy/ndimage/_interpolation.py +36 -6
  238. scipy/ndimage/_measurements.py +4 -2
  239. scipy/ndimage/_morphology.py +5 -0
  240. scipy/ndimage/_nd_image.cpython-312-darwin.so +0 -0
  241. scipy/ndimage/_ni_docstrings.py +5 -1
  242. scipy/ndimage/_ni_label.cpython-312-darwin.so +0 -0
  243. scipy/ndimage/_ni_support.py +1 -5
  244. scipy/ndimage/_rank_filter_1d.cpython-312-darwin.so +0 -0
  245. scipy/ndimage/_support_alternative_backends.py +18 -6
  246. scipy/ndimage/tests/test_filters.py +370 -259
  247. scipy/ndimage/tests/test_fourier.py +7 -9
  248. scipy/ndimage/tests/test_interpolation.py +68 -61
  249. scipy/ndimage/tests/test_measurements.py +18 -35
  250. scipy/ndimage/tests/test_morphology.py +143 -131
  251. scipy/ndimage/tests/test_splines.py +1 -3
  252. scipy/odr/__odrpack.cpython-312-darwin.so +0 -0
  253. scipy/optimize/_basinhopping.py +13 -7
  254. scipy/optimize/_bglu_dense.cpython-312-darwin.so +0 -0
  255. scipy/optimize/_bracket.py +17 -24
  256. scipy/optimize/_chandrupatla.py +9 -10
  257. scipy/optimize/_cobyla_py.py +104 -123
  258. scipy/optimize/_constraints.py +14 -10
  259. scipy/optimize/_differentiable_functions.py +371 -230
  260. scipy/optimize/_differentialevolution.py +4 -3
  261. scipy/optimize/_direct.cpython-312-darwin.so +0 -0
  262. scipy/optimize/_dual_annealing.py +1 -1
  263. scipy/optimize/_elementwise.py +1 -4
  264. scipy/optimize/_group_columns.cpython-312-darwin.so +0 -0
  265. scipy/optimize/_lbfgsb.cpython-312-darwin.so +0 -0
  266. scipy/optimize/_lbfgsb_py.py +57 -16
  267. scipy/optimize/_linprog_doc.py +2 -2
  268. scipy/optimize/_linprog_highs.py +2 -2
  269. scipy/optimize/_linprog_ip.py +25 -10
  270. scipy/optimize/_linprog_util.py +14 -16
  271. scipy/optimize/_lsap.cpython-312-darwin.so +0 -0
  272. scipy/optimize/_lsq/common.py +3 -3
  273. scipy/optimize/_lsq/dogbox.py +16 -2
  274. scipy/optimize/_lsq/givens_elimination.cpython-312-darwin.so +0 -0
  275. scipy/optimize/_lsq/least_squares.py +198 -126
  276. scipy/optimize/_lsq/lsq_linear.py +6 -6
  277. scipy/optimize/_lsq/trf.py +35 -8
  278. scipy/optimize/_milp.py +3 -1
  279. scipy/optimize/_minimize.py +105 -36
  280. scipy/optimize/_minpack.cpython-312-darwin.so +0 -0
  281. scipy/optimize/_minpack_py.py +21 -14
  282. scipy/optimize/_moduleTNC.cpython-312-darwin.so +0 -0
  283. scipy/optimize/_nnls.py +20 -21
  284. scipy/optimize/_nonlin.py +34 -3
  285. scipy/optimize/_numdiff.py +288 -110
  286. scipy/optimize/_optimize.py +86 -48
  287. scipy/optimize/_pava_pybind.cpython-312-darwin.so +0 -0
  288. scipy/optimize/_remove_redundancy.py +5 -5
  289. scipy/optimize/_root_scalar.py +1 -1
  290. scipy/optimize/_shgo.py +6 -0
  291. scipy/optimize/_shgo_lib/_complex.py +1 -1
  292. scipy/optimize/_slsqp_py.py +216 -124
  293. scipy/optimize/_slsqplib.cpython-312-darwin.so +0 -0
  294. scipy/optimize/_spectral.py +1 -1
  295. scipy/optimize/_tnc.py +8 -1
  296. scipy/optimize/_trlib/_trlib.cpython-312-darwin.so +0 -0
  297. scipy/optimize/_trustregion.py +20 -6
  298. scipy/optimize/_trustregion_constr/canonical_constraint.py +7 -7
  299. scipy/optimize/_trustregion_constr/equality_constrained_sqp.py +1 -1
  300. scipy/optimize/_trustregion_constr/minimize_trustregion_constr.py +11 -3
  301. scipy/optimize/_trustregion_constr/projections.py +12 -8
  302. scipy/optimize/_trustregion_constr/qp_subproblem.py +9 -9
  303. scipy/optimize/_trustregion_constr/tests/test_projections.py +7 -7
  304. scipy/optimize/_trustregion_constr/tests/test_qp_subproblem.py +77 -77
  305. scipy/optimize/_trustregion_constr/tr_interior_point.py +5 -5
  306. scipy/optimize/_trustregion_exact.py +0 -1
  307. scipy/optimize/_zeros.cpython-312-darwin.so +0 -0
  308. scipy/optimize/_zeros_py.py +97 -17
  309. scipy/optimize/cython_optimize/_zeros.cpython-312-darwin.so +0 -0
  310. scipy/optimize/slsqp.py +0 -1
  311. scipy/optimize/tests/test__basinhopping.py +1 -1
  312. scipy/optimize/tests/test__differential_evolution.py +4 -4
  313. scipy/optimize/tests/test__linprog_clean_inputs.py +5 -3
  314. scipy/optimize/tests/test__numdiff.py +66 -22
  315. scipy/optimize/tests/test__remove_redundancy.py +2 -2
  316. scipy/optimize/tests/test__shgo.py +9 -1
  317. scipy/optimize/tests/test_bracket.py +36 -46
  318. scipy/optimize/tests/test_chandrupatla.py +133 -135
  319. scipy/optimize/tests/test_cobyla.py +74 -45
  320. scipy/optimize/tests/test_constraints.py +1 -1
  321. scipy/optimize/tests/test_differentiable_functions.py +226 -6
  322. scipy/optimize/tests/test_lbfgsb_hessinv.py +22 -0
  323. scipy/optimize/tests/test_least_squares.py +125 -13
  324. scipy/optimize/tests/test_linear_assignment.py +3 -3
  325. scipy/optimize/tests/test_linprog.py +3 -3
  326. scipy/optimize/tests/test_lsq_linear.py +6 -6
  327. scipy/optimize/tests/test_minimize_constrained.py +2 -2
  328. scipy/optimize/tests/test_minpack.py +4 -4
  329. scipy/optimize/tests/test_nnls.py +43 -3
  330. scipy/optimize/tests/test_nonlin.py +36 -0
  331. scipy/optimize/tests/test_optimize.py +95 -17
  332. scipy/optimize/tests/test_slsqp.py +36 -4
  333. scipy/optimize/tests/test_zeros.py +34 -1
  334. scipy/signal/__init__.py +12 -23
  335. scipy/signal/_delegators.py +568 -0
  336. scipy/signal/_filter_design.py +459 -241
  337. scipy/signal/_fir_filter_design.py +262 -90
  338. scipy/signal/_lti_conversion.py +3 -2
  339. scipy/signal/_ltisys.py +118 -91
  340. scipy/signal/_max_len_seq_inner.cpython-312-darwin.so +0 -0
  341. scipy/signal/_peak_finding_utils.cpython-312-darwin.so +0 -0
  342. scipy/signal/_polyutils.py +172 -0
  343. scipy/signal/_short_time_fft.py +519 -70
  344. scipy/signal/_signal_api.py +30 -0
  345. scipy/signal/_signaltools.py +719 -399
  346. scipy/signal/_sigtools.cpython-312-darwin.so +0 -0
  347. scipy/signal/_sosfilt.cpython-312-darwin.so +0 -0
  348. scipy/signal/_spectral_py.py +230 -50
  349. scipy/signal/_spline.cpython-312-darwin.so +0 -0
  350. scipy/signal/_spline_filters.py +108 -68
  351. scipy/signal/_support_alternative_backends.py +73 -0
  352. scipy/signal/_upfirdn.py +4 -1
  353. scipy/signal/_upfirdn_apply.cpython-312-darwin.so +0 -0
  354. scipy/signal/_waveforms.py +2 -11
  355. scipy/signal/_wavelets.py +1 -1
  356. scipy/signal/fir_filter_design.py +1 -0
  357. scipy/signal/spline.py +4 -11
  358. scipy/signal/tests/_scipy_spectral_test_shim.py +2 -171
  359. scipy/signal/tests/test_bsplines.py +114 -79
  360. scipy/signal/tests/test_cont2discrete.py +9 -2
  361. scipy/signal/tests/test_filter_design.py +721 -481
  362. scipy/signal/tests/test_fir_filter_design.py +332 -140
  363. scipy/signal/tests/test_savitzky_golay.py +4 -3
  364. scipy/signal/tests/test_short_time_fft.py +221 -3
  365. scipy/signal/tests/test_signaltools.py +2144 -1348
  366. scipy/signal/tests/test_spectral.py +50 -6
  367. scipy/signal/tests/test_splines.py +161 -96
  368. scipy/signal/tests/test_upfirdn.py +84 -50
  369. scipy/signal/tests/test_waveforms.py +20 -0
  370. scipy/signal/tests/test_windows.py +607 -466
  371. scipy/signal/windows/_windows.py +287 -148
  372. scipy/sparse/__init__.py +23 -4
  373. scipy/sparse/_base.py +270 -108
  374. scipy/sparse/_bsr.py +7 -4
  375. scipy/sparse/_compressed.py +59 -231
  376. scipy/sparse/_construct.py +90 -38
  377. scipy/sparse/_coo.py +115 -181
  378. scipy/sparse/_csc.py +4 -4
  379. scipy/sparse/_csparsetools.cpython-312-darwin.so +0 -0
  380. scipy/sparse/_csr.py +2 -2
  381. scipy/sparse/_data.py +48 -48
  382. scipy/sparse/_dia.py +105 -18
  383. scipy/sparse/_dok.py +0 -23
  384. scipy/sparse/_index.py +4 -4
  385. scipy/sparse/_matrix.py +23 -0
  386. scipy/sparse/_sparsetools.cpython-312-darwin.so +0 -0
  387. scipy/sparse/_sputils.py +37 -22
  388. scipy/sparse/base.py +0 -9
  389. scipy/sparse/bsr.py +0 -14
  390. scipy/sparse/compressed.py +0 -23
  391. scipy/sparse/construct.py +0 -6
  392. scipy/sparse/coo.py +0 -14
  393. scipy/sparse/csc.py +0 -3
  394. scipy/sparse/csgraph/_flow.cpython-312-darwin.so +0 -0
  395. scipy/sparse/csgraph/_matching.cpython-312-darwin.so +0 -0
  396. scipy/sparse/csgraph/_min_spanning_tree.cpython-312-darwin.so +0 -0
  397. scipy/sparse/csgraph/_reordering.cpython-312-darwin.so +0 -0
  398. scipy/sparse/csgraph/_shortest_path.cpython-312-darwin.so +0 -0
  399. scipy/sparse/csgraph/_tools.cpython-312-darwin.so +0 -0
  400. scipy/sparse/csgraph/_traversal.cpython-312-darwin.so +0 -0
  401. scipy/sparse/csgraph/tests/test_matching.py +14 -2
  402. scipy/sparse/csgraph/tests/test_pydata_sparse.py +4 -1
  403. scipy/sparse/csgraph/tests/test_shortest_path.py +83 -27
  404. scipy/sparse/csr.py +0 -5
  405. scipy/sparse/data.py +1 -6
  406. scipy/sparse/dia.py +0 -7
  407. scipy/sparse/dok.py +0 -10
  408. scipy/sparse/linalg/_dsolve/_superlu.cpython-312-darwin.so +0 -0
  409. scipy/sparse/linalg/_dsolve/linsolve.py +9 -0
  410. scipy/sparse/linalg/_dsolve/tests/test_linsolve.py +35 -28
  411. scipy/sparse/linalg/_eigen/arpack/_arpack.cpython-312-darwin.so +0 -0
  412. scipy/sparse/linalg/_eigen/arpack/arpack.py +23 -17
  413. scipy/sparse/linalg/_eigen/lobpcg/lobpcg.py +6 -6
  414. scipy/sparse/linalg/_interface.py +17 -18
  415. scipy/sparse/linalg/_isolve/_gcrotmk.py +4 -4
  416. scipy/sparse/linalg/_isolve/iterative.py +51 -45
  417. scipy/sparse/linalg/_isolve/lgmres.py +6 -6
  418. scipy/sparse/linalg/_isolve/minres.py +5 -5
  419. scipy/sparse/linalg/_isolve/tfqmr.py +7 -7
  420. scipy/sparse/linalg/_isolve/utils.py +2 -8
  421. scipy/sparse/linalg/_matfuncs.py +1 -1
  422. scipy/sparse/linalg/_norm.py +1 -1
  423. scipy/sparse/linalg/_propack/_cpropack.cpython-312-darwin.so +0 -0
  424. scipy/sparse/linalg/_propack/_dpropack.cpython-312-darwin.so +0 -0
  425. scipy/sparse/linalg/_propack/_spropack.cpython-312-darwin.so +0 -0
  426. scipy/sparse/linalg/_propack/_zpropack.cpython-312-darwin.so +0 -0
  427. scipy/sparse/linalg/_special_sparse_arrays.py +39 -38
  428. scipy/sparse/linalg/tests/test_pydata_sparse.py +14 -0
  429. scipy/sparse/tests/test_arithmetic1d.py +5 -2
  430. scipy/sparse/tests/test_base.py +214 -42
  431. scipy/sparse/tests/test_common1d.py +7 -7
  432. scipy/sparse/tests/test_construct.py +1 -1
  433. scipy/sparse/tests/test_coo.py +272 -4
  434. scipy/sparse/tests/test_sparsetools.py +5 -0
  435. scipy/sparse/tests/test_sputils.py +36 -7
  436. scipy/spatial/_ckdtree.cpython-312-darwin.so +0 -0
  437. scipy/spatial/_distance_pybind.cpython-312-darwin.so +0 -0
  438. scipy/spatial/_distance_wrap.cpython-312-darwin.so +0 -0
  439. scipy/spatial/_hausdorff.cpython-312-darwin.so +0 -0
  440. scipy/spatial/_qhull.cpython-312-darwin.so +0 -0
  441. scipy/spatial/_voronoi.cpython-312-darwin.so +0 -0
  442. scipy/spatial/distance.py +49 -42
  443. scipy/spatial/tests/test_distance.py +15 -1
  444. scipy/spatial/tests/test_kdtree.py +1 -0
  445. scipy/spatial/tests/test_qhull.py +7 -2
  446. scipy/spatial/transform/__init__.py +5 -3
  447. scipy/spatial/transform/_rigid_transform.cpython-312-darwin.so +0 -0
  448. scipy/spatial/transform/_rotation.cpython-312-darwin.so +0 -0
  449. scipy/spatial/transform/tests/test_rigid_transform.py +1221 -0
  450. scipy/spatial/transform/tests/test_rotation.py +1213 -832
  451. scipy/spatial/transform/tests/test_rotation_groups.py +3 -3
  452. scipy/spatial/transform/tests/test_rotation_spline.py +29 -8
  453. scipy/special/__init__.py +1 -47
  454. scipy/special/_add_newdocs.py +34 -772
  455. scipy/special/_basic.py +22 -25
  456. scipy/special/_comb.cpython-312-darwin.so +0 -0
  457. scipy/special/_ellip_harm_2.cpython-312-darwin.so +0 -0
  458. scipy/special/_gufuncs.cpython-312-darwin.so +0 -0
  459. scipy/special/_logsumexp.py +67 -58
  460. scipy/special/_orthogonal.pyi +1 -1
  461. scipy/special/_specfun.cpython-312-darwin.so +0 -0
  462. scipy/special/_special_ufuncs.cpython-312-darwin.so +0 -0
  463. scipy/special/_spherical_bessel.py +4 -4
  464. scipy/special/_support_alternative_backends.py +212 -119
  465. scipy/special/_test_internal.cpython-312-darwin.so +0 -0
  466. scipy/special/_testutils.py +4 -4
  467. scipy/special/_ufuncs.cpython-312-darwin.so +0 -0
  468. scipy/special/_ufuncs.pyi +1 -0
  469. scipy/special/_ufuncs.pyx +215 -1400
  470. scipy/special/_ufuncs_cxx.cpython-312-darwin.so +0 -0
  471. scipy/special/_ufuncs_cxx.pxd +2 -15
  472. scipy/special/_ufuncs_cxx.pyx +5 -44
  473. scipy/special/_ufuncs_cxx_defs.h +2 -16
  474. scipy/special/_ufuncs_defs.h +0 -8
  475. scipy/special/cython_special.cpython-312-darwin.so +0 -0
  476. scipy/special/cython_special.pxd +1 -1
  477. scipy/special/tests/_cython_examples/meson.build +10 -1
  478. scipy/special/tests/test_basic.py +153 -20
  479. scipy/special/tests/test_boost_ufuncs.py +3 -0
  480. scipy/special/tests/test_cdflib.py +35 -11
  481. scipy/special/tests/test_gammainc.py +16 -0
  482. scipy/special/tests/test_hyp2f1.py +2 -2
  483. scipy/special/tests/test_log1mexp.py +85 -0
  484. scipy/special/tests/test_logsumexp.py +206 -64
  485. scipy/special/tests/test_mpmath.py +1 -0
  486. scipy/special/tests/test_nan_inputs.py +1 -1
  487. scipy/special/tests/test_orthogonal.py +17 -18
  488. scipy/special/tests/test_sf_error.py +3 -2
  489. scipy/special/tests/test_sph_harm.py +6 -7
  490. scipy/special/tests/test_support_alternative_backends.py +211 -76
  491. scipy/stats/__init__.py +4 -1
  492. scipy/stats/_ansari_swilk_statistics.cpython-312-darwin.so +0 -0
  493. scipy/stats/_axis_nan_policy.py +5 -12
  494. scipy/stats/_biasedurn.cpython-312-darwin.so +0 -0
  495. scipy/stats/_continued_fraction.py +387 -0
  496. scipy/stats/_continuous_distns.py +277 -310
  497. scipy/stats/_correlation.py +1 -1
  498. scipy/stats/_covariance.py +6 -3
  499. scipy/stats/_discrete_distns.py +39 -32
  500. scipy/stats/_distn_infrastructure.py +39 -12
  501. scipy/stats/_distribution_infrastructure.py +900 -238
  502. scipy/stats/_entropy.py +9 -10
  503. scipy/{_lib → stats}/_finite_differences.py +1 -1
  504. scipy/stats/_hypotests.py +83 -50
  505. scipy/stats/_kde.py +53 -49
  506. scipy/stats/_ksstats.py +1 -1
  507. scipy/stats/_levy_stable/__init__.py +7 -15
  508. scipy/stats/_levy_stable/levyst.cpython-312-darwin.so +0 -0
  509. scipy/stats/_morestats.py +118 -73
  510. scipy/stats/_mstats_basic.py +13 -17
  511. scipy/stats/_mstats_extras.py +8 -8
  512. scipy/stats/_multivariate.py +89 -113
  513. scipy/stats/_new_distributions.py +97 -20
  514. scipy/stats/_page_trend_test.py +12 -5
  515. scipy/stats/_probability_distribution.py +265 -43
  516. scipy/stats/_qmc.py +14 -9
  517. scipy/stats/_qmc_cy.cpython-312-darwin.so +0 -0
  518. scipy/stats/_qmvnt.py +16 -95
  519. scipy/stats/_qmvnt_cy.cpython-312-darwin.so +0 -0
  520. scipy/stats/_quantile.py +335 -0
  521. scipy/stats/_rcont/rcont.cpython-312-darwin.so +0 -0
  522. scipy/stats/_resampling.py +4 -29
  523. scipy/stats/_sampling.py +1 -1
  524. scipy/stats/_sobol.cpython-312-darwin.so +0 -0
  525. scipy/stats/_stats.cpython-312-darwin.so +0 -0
  526. scipy/stats/_stats_mstats_common.py +21 -2
  527. scipy/stats/_stats_py.py +550 -476
  528. scipy/stats/_stats_pythran.cpython-312-darwin.so +0 -0
  529. scipy/stats/_unuran/unuran_wrapper.cpython-312-darwin.so +0 -0
  530. scipy/stats/_unuran/unuran_wrapper.pyi +2 -1
  531. scipy/stats/_variation.py +6 -8
  532. scipy/stats/_wilcoxon.py +13 -7
  533. scipy/stats/tests/common_tests.py +6 -4
  534. scipy/stats/tests/test_axis_nan_policy.py +62 -24
  535. scipy/stats/tests/test_continued_fraction.py +173 -0
  536. scipy/stats/tests/test_continuous.py +379 -60
  537. scipy/stats/tests/test_continuous_basic.py +18 -12
  538. scipy/stats/tests/test_discrete_basic.py +14 -8
  539. scipy/stats/tests/test_discrete_distns.py +16 -16
  540. scipy/stats/tests/test_distributions.py +95 -75
  541. scipy/stats/tests/test_entropy.py +40 -48
  542. scipy/stats/tests/test_fit.py +4 -3
  543. scipy/stats/tests/test_hypotests.py +153 -24
  544. scipy/stats/tests/test_kdeoth.py +109 -41
  545. scipy/stats/tests/test_marray.py +289 -0
  546. scipy/stats/tests/test_morestats.py +79 -47
  547. scipy/stats/tests/test_mstats_basic.py +3 -3
  548. scipy/stats/tests/test_multivariate.py +434 -83
  549. scipy/stats/tests/test_qmc.py +13 -10
  550. scipy/stats/tests/test_quantile.py +199 -0
  551. scipy/stats/tests/test_rank.py +119 -112
  552. scipy/stats/tests/test_resampling.py +47 -56
  553. scipy/stats/tests/test_sampling.py +9 -4
  554. scipy/stats/tests/test_stats.py +799 -939
  555. scipy/stats/tests/test_variation.py +8 -6
  556. scipy/version.py +2 -2
  557. {scipy-1.15.3.dist-info → scipy-1.16.0rc2.dist-info}/LICENSE.txt +4 -4
  558. {scipy-1.15.3.dist-info → scipy-1.16.0rc2.dist-info}/METADATA +11 -11
  559. {scipy-1.15.3.dist-info → scipy-1.16.0rc2.dist-info}/RECORD +560 -567
  560. scipy-1.16.0rc2.dist-info/WHEEL +6 -0
  561. scipy/_lib/array_api_extra/_funcs.py +0 -484
  562. scipy/_lib/array_api_extra/_typing.py +0 -8
  563. scipy/interpolate/_bspl.cpython-312-darwin.so +0 -0
  564. scipy/optimize/_cobyla.cpython-312-darwin.so +0 -0
  565. scipy/optimize/_cython_nnls.cpython-312-darwin.so +0 -0
  566. scipy/optimize/_slsqp.cpython-312-darwin.so +0 -0
  567. scipy/spatial/qhull_src/COPYING.txt +0 -38
  568. scipy/special/libsf_error_state.dylib +0 -0
  569. scipy/special/tests/test_log_softmax.py +0 -109
  570. scipy/special/tests/test_xsf_cuda.py +0 -114
  571. scipy/special/xsf/binom.h +0 -89
  572. scipy/special/xsf/cdflib.h +0 -100
  573. scipy/special/xsf/cephes/airy.h +0 -307
  574. scipy/special/xsf/cephes/besselpoly.h +0 -51
  575. scipy/special/xsf/cephes/beta.h +0 -257
  576. scipy/special/xsf/cephes/cbrt.h +0 -131
  577. scipy/special/xsf/cephes/chbevl.h +0 -85
  578. scipy/special/xsf/cephes/chdtr.h +0 -193
  579. scipy/special/xsf/cephes/const.h +0 -87
  580. scipy/special/xsf/cephes/ellie.h +0 -293
  581. scipy/special/xsf/cephes/ellik.h +0 -251
  582. scipy/special/xsf/cephes/ellpe.h +0 -107
  583. scipy/special/xsf/cephes/ellpk.h +0 -117
  584. scipy/special/xsf/cephes/expn.h +0 -260
  585. scipy/special/xsf/cephes/gamma.h +0 -398
  586. scipy/special/xsf/cephes/hyp2f1.h +0 -596
  587. scipy/special/xsf/cephes/hyperg.h +0 -361
  588. scipy/special/xsf/cephes/i0.h +0 -149
  589. scipy/special/xsf/cephes/i1.h +0 -158
  590. scipy/special/xsf/cephes/igam.h +0 -421
  591. scipy/special/xsf/cephes/igam_asymp_coeff.h +0 -195
  592. scipy/special/xsf/cephes/igami.h +0 -313
  593. scipy/special/xsf/cephes/j0.h +0 -225
  594. scipy/special/xsf/cephes/j1.h +0 -198
  595. scipy/special/xsf/cephes/jv.h +0 -715
  596. scipy/special/xsf/cephes/k0.h +0 -164
  597. scipy/special/xsf/cephes/k1.h +0 -163
  598. scipy/special/xsf/cephes/kn.h +0 -243
  599. scipy/special/xsf/cephes/lanczos.h +0 -112
  600. scipy/special/xsf/cephes/ndtr.h +0 -275
  601. scipy/special/xsf/cephes/poch.h +0 -85
  602. scipy/special/xsf/cephes/polevl.h +0 -167
  603. scipy/special/xsf/cephes/psi.h +0 -194
  604. scipy/special/xsf/cephes/rgamma.h +0 -111
  605. scipy/special/xsf/cephes/scipy_iv.h +0 -811
  606. scipy/special/xsf/cephes/shichi.h +0 -248
  607. scipy/special/xsf/cephes/sici.h +0 -224
  608. scipy/special/xsf/cephes/sindg.h +0 -221
  609. scipy/special/xsf/cephes/tandg.h +0 -139
  610. scipy/special/xsf/cephes/trig.h +0 -58
  611. scipy/special/xsf/cephes/unity.h +0 -186
  612. scipy/special/xsf/cephes/zeta.h +0 -172
  613. scipy/special/xsf/config.h +0 -304
  614. scipy/special/xsf/digamma.h +0 -205
  615. scipy/special/xsf/error.h +0 -57
  616. scipy/special/xsf/evalpoly.h +0 -47
  617. scipy/special/xsf/expint.h +0 -266
  618. scipy/special/xsf/hyp2f1.h +0 -694
  619. scipy/special/xsf/iv_ratio.h +0 -173
  620. scipy/special/xsf/lambertw.h +0 -150
  621. scipy/special/xsf/loggamma.h +0 -163
  622. scipy/special/xsf/sici.h +0 -200
  623. scipy/special/xsf/tools.h +0 -427
  624. scipy/special/xsf/trig.h +0 -164
  625. scipy/special/xsf/wright_bessel.h +0 -843
  626. scipy/special/xsf/zlog1.h +0 -35
  627. scipy/stats/_mvn.cpython-312-darwin.so +0 -0
  628. scipy-1.15.3.dist-info/WHEEL +0 -4
scipy/special/_ufuncs.pyx CHANGED
@@ -5,7 +5,7 @@ from libc.math cimport NAN
5
5
 
6
6
  include "_ufuncs_extra_code_common.pxi"
7
7
  include "_ufuncs_extra_code.pxi"
8
- __all__ = ['agm', 'bdtr', 'bdtrc', 'bdtri', 'bdtrik', 'bdtrin', 'betainc', 'betaincc', 'betainccinv', 'betaincinv', 'boxcox', 'boxcox1p', 'btdtria', 'btdtrib', 'chdtr', 'chdtrc', 'chdtri', 'chdtriv', 'chndtr', 'chndtridf', 'chndtrinc', 'chndtrix', 'dawsn', 'elliprc', 'elliprd', 'elliprf', 'elliprg', 'elliprj', 'entr', 'erf', 'erfc', 'erfcinv', 'erfcx', 'erfi', 'erfinv', 'eval_chebyc', 'eval_chebys', 'eval_chebyt', 'eval_chebyu', 'eval_gegenbauer', 'eval_genlaguerre', 'eval_hermite', 'eval_hermitenorm', 'eval_jacobi', 'eval_laguerre', 'eval_legendre', 'eval_sh_chebyt', 'eval_sh_chebyu', 'eval_sh_jacobi', 'eval_sh_legendre', 'exp10', 'exp2', 'expm1', 'expn', 'fdtr', 'fdtrc', 'fdtri', 'fdtridfd', 'gdtr', 'gdtrc', 'gdtria', 'gdtrib', 'gdtrix', 'huber', 'hyp0f1', 'hyp1f1', 'hyperu', 'inv_boxcox', 'inv_boxcox1p', 'kl_div', 'kn', 'kolmogi', 'kolmogorov', 'log1p', 'log_ndtr', 'lpmv', 'nbdtr', 'nbdtrc', 'nbdtri', 'nbdtrik', 'nbdtrin', 'ncfdtr', 'ncfdtri', 'ncfdtridfd', 'ncfdtridfn', 'ncfdtrinc', 'nctdtr', 'nctdtridf', 'nctdtrinc', 'nctdtrit', 'ndtr', 'ndtri', 'ndtri_exp', 'nrdtrimn', 'nrdtrisd', 'owens_t', 'pdtr', 'pdtrc', 'pdtri', 'pdtrik', 'poch', 'powm1', 'pseudo_huber', 'rel_entr', 'round', 'shichi', 'sici', 'smirnov', 'smirnovi', 'spence', 'stdtr', 'stdtridf', 'stdtrit', 'tklmbda', 'voigt_profile', 'wofz', 'wrightomega', 'xlog1py', 'xlogy', 'yn', 'geterr', 'seterr', 'errstate', 'jn', 'airy', 'airye', 'bei', 'beip', 'ber', 'berp', 'binom', 'exp1', 'expi', 'expit', 'exprel', 'gamma', 'gammaln', 'hankel1', 'hankel1e', 'hankel2', 'hankel2e', 'hyp2f1', 'it2i0k0', 'it2j0y0', 'it2struve0', 'itairy', 'iti0k0', 'itj0y0', 'itmodstruve0', 'itstruve0', 'iv', 'ive', 'jv', 'jve', 'kei', 'keip', 'kelvin', 'ker', 'kerp', 'kv', 'kve', 'log_expit', 'log_wright_bessel', 'loggamma', 'logit', 'mathieu_a', 'mathieu_b', 'mathieu_cem', 'mathieu_modcem1', 'mathieu_modcem2', 'mathieu_modsem1', 'mathieu_modsem2', 'mathieu_sem', 'modfresnelm', 'modfresnelp', 'obl_ang1', 'obl_ang1_cv', 'obl_cv', 'obl_rad1', 'obl_rad1_cv', 'obl_rad2', 'obl_rad2_cv', 'pbdv', 'pbvv', 'pbwa', 'pro_ang1', 'pro_ang1_cv', 'pro_cv', 'pro_rad1', 'pro_rad1_cv', 'pro_rad2', 'pro_rad2_cv', 'psi', 'rgamma', 'sph_harm', 'wright_bessel', 'yv', 'yve', 'zetac', 'sindg', 'cosdg', 'tandg', 'cotdg', 'i0', 'i0e', 'i1', 'i1e', 'k0', 'k0e', 'k1', 'k1e', 'y0', 'y1', 'j0', 'j1', 'struve', 'modstruve', 'beta', 'betaln', 'besselpoly', 'gammaln', 'gammasgn', 'cbrt', 'radian', 'cosm1', 'gammainc', 'gammaincinv', 'gammaincc', 'gammainccinv', 'fresnel', 'ellipe', 'ellipeinc', 'ellipk', 'ellipkinc', 'ellipkm1', 'ellipj']
8
+ __all__ = ['agm', 'bdtr', 'bdtrc', 'bdtri', 'bdtrik', 'bdtrin', 'betainc', 'betaincc', 'betainccinv', 'betaincinv', 'boxcox', 'boxcox1p', 'btdtria', 'btdtrib', 'chdtr', 'chdtrc', 'chdtri', 'chdtriv', 'chndtr', 'chndtridf', 'chndtrinc', 'chndtrix', 'elliprc', 'elliprd', 'elliprf', 'elliprg', 'elliprj', 'entr', 'erfcinv', 'erfinv', 'eval_chebyc', 'eval_chebys', 'eval_chebyt', 'eval_chebyu', 'eval_gegenbauer', 'eval_genlaguerre', 'eval_hermite', 'eval_hermitenorm', 'eval_jacobi', 'eval_laguerre', 'eval_legendre', 'eval_sh_chebyt', 'eval_sh_chebyu', 'eval_sh_jacobi', 'eval_sh_legendre', 'expn', 'fdtr', 'fdtrc', 'fdtri', 'fdtridfd', 'gdtr', 'gdtrc', 'gdtria', 'gdtrib', 'gdtrix', 'huber', 'hyp0f1', 'hyp1f1', 'hyperu', 'inv_boxcox', 'inv_boxcox1p', 'kl_div', 'kn', 'kolmogi', 'kolmogorov', 'lpmv', 'nbdtr', 'nbdtrc', 'nbdtri', 'nbdtrik', 'nbdtrin', 'ncfdtr', 'ncfdtri', 'ncfdtridfd', 'ncfdtridfn', 'ncfdtrinc', 'nctdtr', 'nctdtridf', 'nctdtrinc', 'nctdtrit', 'ndtri', 'ndtri_exp', 'nrdtrimn', 'nrdtrisd', 'owens_t', 'pdtr', 'pdtrc', 'pdtri', 'pdtrik', 'poch', 'powm1', 'pseudo_huber', 'rel_entr', 'round', 'shichi', 'sici', 'smirnov', 'smirnovi', 'spence', 'stdtr', 'stdtridf', 'stdtrit', 'tklmbda', 'wrightomega', 'yn', 'geterr', 'seterr', 'errstate', 'jn', 'airy', 'airye', 'bei', 'beip', 'ber', 'berp', 'binom', 'exp1', 'expi', 'expit', 'exprel', 'gamma', 'gammaln', 'hankel1', 'hankel1e', 'hankel2', 'hankel2e', 'hyp2f1', 'it2i0k0', 'it2j0y0', 'it2struve0', 'itairy', 'iti0k0', 'itj0y0', 'itmodstruve0', 'itstruve0', 'iv', 'ive', 'jv', 'jve', 'kei', 'keip', 'kelvin', 'ker', 'kerp', 'kv', 'kve', 'log_expit', 'log_wright_bessel', 'loggamma', 'logit', 'mathieu_a', 'mathieu_b', 'mathieu_cem', 'mathieu_modcem1', 'mathieu_modcem2', 'mathieu_modsem1', 'mathieu_modsem2', 'mathieu_sem', 'modfresnelm', 'modfresnelp', 'obl_ang1', 'obl_ang1_cv', 'obl_cv', 'obl_rad1', 'obl_rad1_cv', 'obl_rad2', 'obl_rad2_cv', 'pbdv', 'pbvv', 'pbwa', 'pro_ang1', 'pro_ang1_cv', 'pro_cv', 'pro_rad1', 'pro_rad1_cv', 'pro_rad2', 'pro_rad2_cv', 'psi', 'rgamma', 'sph_harm', 'wright_bessel', 'yv', 'yve', 'zetac', 'sindg', 'cosdg', 'tandg', 'cotdg', 'i0', 'i0e', 'i1', 'i1e', 'k0', 'k0e', 'k1', 'k1e', 'y0', 'y1', 'j0', 'j1', 'struve', 'modstruve', 'beta', 'betaln', 'besselpoly', 'gammaln', 'gammasgn', 'cbrt', 'radian', 'cosm1', 'gammainc', 'gammaincinv', 'gammaincc', 'gammainccinv', 'fresnel', 'ellipe', 'ellipeinc', 'ellipk', 'ellipkinc', 'ellipkm1', 'ellipj', 'erf', 'erfc', 'erfcx', 'erfi', 'voigt_profile', 'wofz', 'dawsn', 'ndtr', 'log_ndtr', 'exp2', 'exp10', 'expm1', 'log1p', 'xlogy', 'xlog1py']
9
9
  cdef void loop_D_DDDD__As_DDDD_D(char **args, np.npy_intp *dims, np.npy_intp *steps, void *data) noexcept nogil:
10
10
  cdef np.npy_intp i, n = dims[0]
11
11
  cdef void *func = (<void**>data)[0]
@@ -763,8 +763,6 @@ cdef extern from r"_ufuncs_defs.h":
763
763
  cdef double _func_cephes_lanczos_sum_expg_scaled "cephes_lanczos_sum_expg_scaled"(double) noexcept nogil
764
764
  cdef extern from r"_ufuncs_defs.h":
765
765
  cdef double _func_cephes_lgam1p "cephes_lgam1p"(double) noexcept nogil
766
- cdef extern from r"_ufuncs_defs.h":
767
- cdef double _func_cephes_log1pmx "cephes_log1pmx"(double) noexcept nogil
768
766
  from .sf_error cimport _sf_error_test_function as _func__sf_error_test_function
769
767
  ctypedef int _proto__sf_error_test_function_t(int) noexcept nogil
770
768
  cdef _proto__sf_error_test_function_t *_proto__sf_error_test_function_t_var = &_func__sf_error_test_function
@@ -849,10 +847,6 @@ cdef _proto_chndtrix_t *_proto_chndtrix_t_var = &_func_chndtrix
849
847
  from ._convex_analysis cimport entr as _func_entr
850
848
  ctypedef double _proto_entr_t(double) noexcept nogil
851
849
  cdef _proto_entr_t *_proto_entr_t_var = &_func_entr
852
- cdef extern from r"_ufuncs_defs.h":
853
- cdef double _func_cephes_erf "cephes_erf"(double) noexcept nogil
854
- cdef extern from r"_ufuncs_defs.h":
855
- cdef double _func_cephes_erfc "cephes_erfc"(double) noexcept nogil
856
850
  cdef extern from r"_ufuncs_defs.h":
857
851
  cdef double _func_cephes_erfcinv "cephes_erfcinv"(double) noexcept nogil
858
852
  from .orthogonal_eval cimport eval_chebyc as _func_eval_chebyc
@@ -978,15 +972,6 @@ cdef _proto_eval_sh_legendre_double__t *_proto_eval_sh_legendre_double__t_var =
978
972
  from .orthogonal_eval cimport eval_sh_legendre_l as _func_eval_sh_legendre_l
979
973
  ctypedef double _proto_eval_sh_legendre_l_t(Py_ssize_t, double) noexcept nogil
980
974
  cdef _proto_eval_sh_legendre_l_t *_proto_eval_sh_legendre_l_t_var = &_func_eval_sh_legendre_l
981
- cdef extern from r"_ufuncs_defs.h":
982
- cdef double _func_cephes_exp10 "cephes_exp10"(double) noexcept nogil
983
- cdef extern from r"_ufuncs_defs.h":
984
- cdef double _func_cephes_exp2 "cephes_exp2"(double) noexcept nogil
985
- from ._cunity cimport cexpm1 as _func_cexpm1
986
- ctypedef double complex _proto_cexpm1_t(double complex) noexcept nogil
987
- cdef _proto_cexpm1_t *_proto_cexpm1_t_var = &_func_cexpm1
988
- cdef extern from r"_ufuncs_defs.h":
989
- cdef double _func_cephes_expm1 "cephes_expm1"(double) noexcept nogil
990
975
  from ._legacy cimport expn_unsafe as _func_expn_unsafe
991
976
  ctypedef double _proto_expn_unsafe_t(double, double) noexcept nogil
992
977
  cdef _proto_expn_unsafe_t *_proto_expn_unsafe_t_var = &_func_expn_unsafe
@@ -1045,11 +1030,6 @@ cdef extern from r"_ufuncs_defs.h":
1045
1030
  cdef double _func_xsf_kolmogi "xsf_kolmogi"(double) noexcept nogil
1046
1031
  cdef extern from r"_ufuncs_defs.h":
1047
1032
  cdef double _func_xsf_kolmogorov "xsf_kolmogorov"(double) noexcept nogil
1048
- from ._cunity cimport clog1p as _func_clog1p
1049
- ctypedef double complex _proto_clog1p_t(double complex) noexcept nogil
1050
- cdef _proto_clog1p_t *_proto_clog1p_t_var = &_func_clog1p
1051
- cdef extern from r"_ufuncs_defs.h":
1052
- cdef double _func_cephes_log1p "cephes_log1p"(double) noexcept nogil
1053
1033
  cdef extern from r"_ufuncs_defs.h":
1054
1034
  cdef double _func_pmv_wrap "pmv_wrap"(double, double, double) noexcept nogil
1055
1035
  from ._legacy cimport nbdtr_unsafe as _func_nbdtr_unsafe
@@ -1088,11 +1068,6 @@ cdef _proto_nctdtridf_t *_proto_nctdtridf_t_var = &_func_nctdtridf
1088
1068
  from ._cdflib_wrappers cimport nctdtrinc as _func_nctdtrinc
1089
1069
  ctypedef double _proto_nctdtrinc_t(double, double, double) noexcept nogil
1090
1070
  cdef _proto_nctdtrinc_t *_proto_nctdtrinc_t_var = &_func_nctdtrinc
1091
- from ._cdflib_wrappers cimport nctdtrit as _func_nctdtrit
1092
- ctypedef double _proto_nctdtrit_t(double, double, double) noexcept nogil
1093
- cdef _proto_nctdtrit_t *_proto_nctdtrit_t_var = &_func_nctdtrit
1094
- cdef extern from r"_ufuncs_defs.h":
1095
- cdef double _func_xsf_ndtr "xsf_ndtr"(double) noexcept nogil
1096
1071
  cdef extern from r"_ufuncs_defs.h":
1097
1072
  cdef double _func_xsf_ndtri "xsf_ndtri"(double) noexcept nogil
1098
1073
  from ._ndtri_exp cimport ndtri_exp as _func_ndtri_exp
@@ -1162,18 +1137,6 @@ ctypedef double _proto_stdtrit_t(double, double) noexcept nogil
1162
1137
  cdef _proto_stdtrit_t *_proto_stdtrit_t_var = &_func_stdtrit
1163
1138
  cdef extern from r"_ufuncs_defs.h":
1164
1139
  cdef double _func_xsf_tukeylambdacdf "xsf_tukeylambdacdf"(double, double) noexcept nogil
1165
- from ._xlogy cimport xlog1py as _func_xlog1py
1166
- ctypedef double _proto_xlog1py_double__t(double, double) noexcept nogil
1167
- cdef _proto_xlog1py_double__t *_proto_xlog1py_double__t_var = &_func_xlog1py[double]
1168
- from ._xlogy cimport xlog1py as _func_xlog1py
1169
- ctypedef double complex _proto_xlog1py_double_complex__t(double complex, double complex) noexcept nogil
1170
- cdef _proto_xlog1py_double_complex__t *_proto_xlog1py_double_complex__t_var = &_func_xlog1py[double_complex]
1171
- from ._xlogy cimport xlogy as _func_xlogy
1172
- ctypedef double _proto_xlogy_double__t(double, double) noexcept nogil
1173
- cdef _proto_xlogy_double__t *_proto_xlogy_double__t_var = &_func_xlogy[double]
1174
- from ._xlogy cimport xlogy as _func_xlogy
1175
- ctypedef double complex _proto_xlogy_double_complex__t(double complex, double complex) noexcept nogil
1176
- cdef _proto_xlogy_double_complex__t *_proto_xlogy_double_complex__t_var = &_func_xlogy[double_complex]
1177
1140
  from ._legacy cimport yn_unsafe as _func_yn_unsafe
1178
1141
  ctypedef double _proto_yn_unsafe_t(double, double) noexcept nogil
1179
1142
  cdef _proto_yn_unsafe_t *_proto_yn_unsafe_t_var = &_func_yn_unsafe
@@ -1215,7 +1178,7 @@ ufunc__beta_pdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_beta_pdf_dou
1215
1178
  ufunc__beta_pdf_ptr[2*1+1] = <void*>(<char*>"_beta_pdf")
1216
1179
  ufunc__beta_pdf_data[0] = &ufunc__beta_pdf_ptr[2*0]
1217
1180
  ufunc__beta_pdf_data[1] = &ufunc__beta_pdf_ptr[2*1]
1218
- _beta_pdf = np.PyUFunc_FromFuncAndData(ufunc__beta_pdf_loops, ufunc__beta_pdf_data, ufunc__beta_pdf_types, 2, 3, 1, 0, "_beta_pdf", ufunc__beta_pdf_doc, 0)
1181
+ _beta_pdf = np.PyUFunc_FromFuncAndData(ufunc__beta_pdf_loops, ufunc__beta_pdf_data, ufunc__beta_pdf_types, 2, 3, 1, 0, '_beta_pdf', ufunc__beta_pdf_doc, 0)
1219
1182
 
1220
1183
  cdef np.PyUFuncGenericFunction ufunc__beta_ppf_loops[2]
1221
1184
  cdef void *ufunc__beta_ppf_ptr[4]
@@ -1253,7 +1216,7 @@ ufunc__beta_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_beta_ppf_dou
1253
1216
  ufunc__beta_ppf_ptr[2*1+1] = <void*>(<char*>"_beta_ppf")
1254
1217
  ufunc__beta_ppf_data[0] = &ufunc__beta_ppf_ptr[2*0]
1255
1218
  ufunc__beta_ppf_data[1] = &ufunc__beta_ppf_ptr[2*1]
1256
- _beta_ppf = np.PyUFunc_FromFuncAndData(ufunc__beta_ppf_loops, ufunc__beta_ppf_data, ufunc__beta_ppf_types, 2, 3, 1, 0, "_beta_ppf", ufunc__beta_ppf_doc, 0)
1219
+ _beta_ppf = np.PyUFunc_FromFuncAndData(ufunc__beta_ppf_loops, ufunc__beta_ppf_data, ufunc__beta_ppf_types, 2, 3, 1, 0, '_beta_ppf', ufunc__beta_ppf_doc, 0)
1257
1220
 
1258
1221
  cdef np.PyUFuncGenericFunction ufunc__binom_cdf_loops[2]
1259
1222
  cdef void *ufunc__binom_cdf_ptr[4]
@@ -1292,7 +1255,7 @@ ufunc__binom_cdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_binom_cdf_d
1292
1255
  ufunc__binom_cdf_ptr[2*1+1] = <void*>(<char*>"_binom_cdf")
1293
1256
  ufunc__binom_cdf_data[0] = &ufunc__binom_cdf_ptr[2*0]
1294
1257
  ufunc__binom_cdf_data[1] = &ufunc__binom_cdf_ptr[2*1]
1295
- _binom_cdf = np.PyUFunc_FromFuncAndData(ufunc__binom_cdf_loops, ufunc__binom_cdf_data, ufunc__binom_cdf_types, 2, 3, 1, 0, "_binom_cdf", ufunc__binom_cdf_doc, 0)
1258
+ _binom_cdf = np.PyUFunc_FromFuncAndData(ufunc__binom_cdf_loops, ufunc__binom_cdf_data, ufunc__binom_cdf_types, 2, 3, 1, 0, '_binom_cdf', ufunc__binom_cdf_doc, 0)
1296
1259
 
1297
1260
  cdef np.PyUFuncGenericFunction ufunc__binom_isf_loops[2]
1298
1261
  cdef void *ufunc__binom_isf_ptr[4]
@@ -1331,7 +1294,7 @@ ufunc__binom_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_binom_isf_d
1331
1294
  ufunc__binom_isf_ptr[2*1+1] = <void*>(<char*>"_binom_isf")
1332
1295
  ufunc__binom_isf_data[0] = &ufunc__binom_isf_ptr[2*0]
1333
1296
  ufunc__binom_isf_data[1] = &ufunc__binom_isf_ptr[2*1]
1334
- _binom_isf = np.PyUFunc_FromFuncAndData(ufunc__binom_isf_loops, ufunc__binom_isf_data, ufunc__binom_isf_types, 2, 3, 1, 0, "_binom_isf", ufunc__binom_isf_doc, 0)
1297
+ _binom_isf = np.PyUFunc_FromFuncAndData(ufunc__binom_isf_loops, ufunc__binom_isf_data, ufunc__binom_isf_types, 2, 3, 1, 0, '_binom_isf', ufunc__binom_isf_doc, 0)
1335
1298
 
1336
1299
  cdef np.PyUFuncGenericFunction ufunc__binom_pmf_loops[2]
1337
1300
  cdef void *ufunc__binom_pmf_ptr[4]
@@ -1370,7 +1333,7 @@ ufunc__binom_pmf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_binom_pmf_d
1370
1333
  ufunc__binom_pmf_ptr[2*1+1] = <void*>(<char*>"_binom_pmf")
1371
1334
  ufunc__binom_pmf_data[0] = &ufunc__binom_pmf_ptr[2*0]
1372
1335
  ufunc__binom_pmf_data[1] = &ufunc__binom_pmf_ptr[2*1]
1373
- _binom_pmf = np.PyUFunc_FromFuncAndData(ufunc__binom_pmf_loops, ufunc__binom_pmf_data, ufunc__binom_pmf_types, 2, 3, 1, 0, "_binom_pmf", ufunc__binom_pmf_doc, 0)
1336
+ _binom_pmf = np.PyUFunc_FromFuncAndData(ufunc__binom_pmf_loops, ufunc__binom_pmf_data, ufunc__binom_pmf_types, 2, 3, 1, 0, '_binom_pmf', ufunc__binom_pmf_doc, 0)
1374
1337
 
1375
1338
  cdef np.PyUFuncGenericFunction ufunc__binom_ppf_loops[2]
1376
1339
  cdef void *ufunc__binom_ppf_ptr[4]
@@ -1409,7 +1372,7 @@ ufunc__binom_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_binom_ppf_d
1409
1372
  ufunc__binom_ppf_ptr[2*1+1] = <void*>(<char*>"_binom_ppf")
1410
1373
  ufunc__binom_ppf_data[0] = &ufunc__binom_ppf_ptr[2*0]
1411
1374
  ufunc__binom_ppf_data[1] = &ufunc__binom_ppf_ptr[2*1]
1412
- _binom_ppf = np.PyUFunc_FromFuncAndData(ufunc__binom_ppf_loops, ufunc__binom_ppf_data, ufunc__binom_ppf_types, 2, 3, 1, 0, "_binom_ppf", ufunc__binom_ppf_doc, 0)
1375
+ _binom_ppf = np.PyUFunc_FromFuncAndData(ufunc__binom_ppf_loops, ufunc__binom_ppf_data, ufunc__binom_ppf_types, 2, 3, 1, 0, '_binom_ppf', ufunc__binom_ppf_doc, 0)
1413
1376
 
1414
1377
  cdef np.PyUFuncGenericFunction ufunc__binom_sf_loops[2]
1415
1378
  cdef void *ufunc__binom_sf_ptr[4]
@@ -1448,7 +1411,7 @@ ufunc__binom_sf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_binom_sf_dou
1448
1411
  ufunc__binom_sf_ptr[2*1+1] = <void*>(<char*>"_binom_sf")
1449
1412
  ufunc__binom_sf_data[0] = &ufunc__binom_sf_ptr[2*0]
1450
1413
  ufunc__binom_sf_data[1] = &ufunc__binom_sf_ptr[2*1]
1451
- _binom_sf = np.PyUFunc_FromFuncAndData(ufunc__binom_sf_loops, ufunc__binom_sf_data, ufunc__binom_sf_types, 2, 3, 1, 0, "_binom_sf", ufunc__binom_sf_doc, 0)
1414
+ _binom_sf = np.PyUFunc_FromFuncAndData(ufunc__binom_sf_loops, ufunc__binom_sf_data, ufunc__binom_sf_types, 2, 3, 1, 0, '_binom_sf', ufunc__binom_sf_doc, 0)
1452
1415
 
1453
1416
  cdef np.PyUFuncGenericFunction ufunc__cauchy_isf_loops[2]
1454
1417
  cdef void *ufunc__cauchy_isf_ptr[4]
@@ -1487,7 +1450,7 @@ ufunc__cauchy_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_cauchy_isf
1487
1450
  ufunc__cauchy_isf_ptr[2*1+1] = <void*>(<char*>"_cauchy_isf")
1488
1451
  ufunc__cauchy_isf_data[0] = &ufunc__cauchy_isf_ptr[2*0]
1489
1452
  ufunc__cauchy_isf_data[1] = &ufunc__cauchy_isf_ptr[2*1]
1490
- _cauchy_isf = np.PyUFunc_FromFuncAndData(ufunc__cauchy_isf_loops, ufunc__cauchy_isf_data, ufunc__cauchy_isf_types, 2, 3, 1, 0, "_cauchy_isf", ufunc__cauchy_isf_doc, 0)
1453
+ _cauchy_isf = np.PyUFunc_FromFuncAndData(ufunc__cauchy_isf_loops, ufunc__cauchy_isf_data, ufunc__cauchy_isf_types, 2, 3, 1, 0, '_cauchy_isf', ufunc__cauchy_isf_doc, 0)
1491
1454
 
1492
1455
  cdef np.PyUFuncGenericFunction ufunc__cauchy_ppf_loops[2]
1493
1456
  cdef void *ufunc__cauchy_ppf_ptr[4]
@@ -1526,7 +1489,7 @@ ufunc__cauchy_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_cauchy_ppf
1526
1489
  ufunc__cauchy_ppf_ptr[2*1+1] = <void*>(<char*>"_cauchy_ppf")
1527
1490
  ufunc__cauchy_ppf_data[0] = &ufunc__cauchy_ppf_ptr[2*0]
1528
1491
  ufunc__cauchy_ppf_data[1] = &ufunc__cauchy_ppf_ptr[2*1]
1529
- _cauchy_ppf = np.PyUFunc_FromFuncAndData(ufunc__cauchy_ppf_loops, ufunc__cauchy_ppf_data, ufunc__cauchy_ppf_types, 2, 3, 1, 0, "_cauchy_ppf", ufunc__cauchy_ppf_doc, 0)
1492
+ _cauchy_ppf = np.PyUFunc_FromFuncAndData(ufunc__cauchy_ppf_loops, ufunc__cauchy_ppf_data, ufunc__cauchy_ppf_types, 2, 3, 1, 0, '_cauchy_ppf', ufunc__cauchy_ppf_doc, 0)
1530
1493
 
1531
1494
  cdef np.PyUFuncGenericFunction ufunc__cosine_cdf_loops[2]
1532
1495
  cdef void *ufunc__cosine_cdf_ptr[4]
@@ -1562,7 +1525,7 @@ ufunc__cosine_cdf_ptr[2*1] = <void*>_func_cosine_cdf
1562
1525
  ufunc__cosine_cdf_ptr[2*1+1] = <void*>(<char*>"_cosine_cdf")
1563
1526
  ufunc__cosine_cdf_data[0] = &ufunc__cosine_cdf_ptr[2*0]
1564
1527
  ufunc__cosine_cdf_data[1] = &ufunc__cosine_cdf_ptr[2*1]
1565
- _cosine_cdf = np.PyUFunc_FromFuncAndData(ufunc__cosine_cdf_loops, ufunc__cosine_cdf_data, ufunc__cosine_cdf_types, 2, 1, 1, 0, "_cosine_cdf", ufunc__cosine_cdf_doc, 0)
1528
+ _cosine_cdf = np.PyUFunc_FromFuncAndData(ufunc__cosine_cdf_loops, ufunc__cosine_cdf_data, ufunc__cosine_cdf_types, 2, 1, 1, 0, '_cosine_cdf', ufunc__cosine_cdf_doc, 0)
1566
1529
 
1567
1530
  cdef np.PyUFuncGenericFunction ufunc__cosine_invcdf_loops[2]
1568
1531
  cdef void *ufunc__cosine_invcdf_ptr[4]
@@ -1602,7 +1565,7 @@ ufunc__cosine_invcdf_ptr[2*1] = <void*>_func_cosine_invcdf
1602
1565
  ufunc__cosine_invcdf_ptr[2*1+1] = <void*>(<char*>"_cosine_invcdf")
1603
1566
  ufunc__cosine_invcdf_data[0] = &ufunc__cosine_invcdf_ptr[2*0]
1604
1567
  ufunc__cosine_invcdf_data[1] = &ufunc__cosine_invcdf_ptr[2*1]
1605
- _cosine_invcdf = np.PyUFunc_FromFuncAndData(ufunc__cosine_invcdf_loops, ufunc__cosine_invcdf_data, ufunc__cosine_invcdf_types, 2, 1, 1, 0, "_cosine_invcdf", ufunc__cosine_invcdf_doc, 0)
1568
+ _cosine_invcdf = np.PyUFunc_FromFuncAndData(ufunc__cosine_invcdf_loops, ufunc__cosine_invcdf_data, ufunc__cosine_invcdf_types, 2, 1, 1, 0, '_cosine_invcdf', ufunc__cosine_invcdf_doc, 0)
1606
1569
 
1607
1570
  cdef np.PyUFuncGenericFunction ufunc__ellip_harm_loops[3]
1608
1571
  cdef void *ufunc__ellip_harm_ptr[6]
@@ -1646,7 +1609,7 @@ ufunc__ellip_harm_ptr[2*2+1] = <void*>(<char*>"_ellip_harm")
1646
1609
  ufunc__ellip_harm_data[0] = &ufunc__ellip_harm_ptr[2*0]
1647
1610
  ufunc__ellip_harm_data[1] = &ufunc__ellip_harm_ptr[2*1]
1648
1611
  ufunc__ellip_harm_data[2] = &ufunc__ellip_harm_ptr[2*2]
1649
- _ellip_harm = np.PyUFunc_FromFuncAndData(ufunc__ellip_harm_loops, ufunc__ellip_harm_data, ufunc__ellip_harm_types, 3, 7, 1, 0, "_ellip_harm", ufunc__ellip_harm_doc, 0)
1612
+ _ellip_harm = np.PyUFunc_FromFuncAndData(ufunc__ellip_harm_loops, ufunc__ellip_harm_data, ufunc__ellip_harm_types, 3, 7, 1, 0, '_ellip_harm', ufunc__ellip_harm_doc, 0)
1650
1613
 
1651
1614
  cdef np.PyUFuncGenericFunction ufunc__factorial_loops[2]
1652
1615
  cdef void *ufunc__factorial_ptr[4]
@@ -1666,7 +1629,7 @@ ufunc__factorial_ptr[2*1] = <void*>_func__factorial
1666
1629
  ufunc__factorial_ptr[2*1+1] = <void*>(<char*>"_factorial")
1667
1630
  ufunc__factorial_data[0] = &ufunc__factorial_ptr[2*0]
1668
1631
  ufunc__factorial_data[1] = &ufunc__factorial_ptr[2*1]
1669
- _factorial = np.PyUFunc_FromFuncAndData(ufunc__factorial_loops, ufunc__factorial_data, ufunc__factorial_types, 2, 1, 1, 0, "_factorial", ufunc__factorial_doc, 0)
1632
+ _factorial = np.PyUFunc_FromFuncAndData(ufunc__factorial_loops, ufunc__factorial_data, ufunc__factorial_types, 2, 1, 1, 0, '_factorial', ufunc__factorial_doc, 0)
1670
1633
 
1671
1634
  cdef np.PyUFuncGenericFunction ufunc__hypergeom_cdf_loops[2]
1672
1635
  cdef void *ufunc__hypergeom_cdf_ptr[4]
@@ -1705,7 +1668,7 @@ ufunc__hypergeom_cdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_hyperge
1705
1668
  ufunc__hypergeom_cdf_ptr[2*1+1] = <void*>(<char*>"_hypergeom_cdf")
1706
1669
  ufunc__hypergeom_cdf_data[0] = &ufunc__hypergeom_cdf_ptr[2*0]
1707
1670
  ufunc__hypergeom_cdf_data[1] = &ufunc__hypergeom_cdf_ptr[2*1]
1708
- _hypergeom_cdf = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_cdf_loops, ufunc__hypergeom_cdf_data, ufunc__hypergeom_cdf_types, 2, 4, 1, 0, "_hypergeom_cdf", ufunc__hypergeom_cdf_doc, 0)
1671
+ _hypergeom_cdf = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_cdf_loops, ufunc__hypergeom_cdf_data, ufunc__hypergeom_cdf_types, 2, 4, 1, 0, '_hypergeom_cdf', ufunc__hypergeom_cdf_doc, 0)
1709
1672
 
1710
1673
  cdef np.PyUFuncGenericFunction ufunc__hypergeom_mean_loops[2]
1711
1674
  cdef void *ufunc__hypergeom_mean_ptr[4]
@@ -1740,7 +1703,7 @@ ufunc__hypergeom_mean_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_hyperg
1740
1703
  ufunc__hypergeom_mean_ptr[2*1+1] = <void*>(<char*>"_hypergeom_mean")
1741
1704
  ufunc__hypergeom_mean_data[0] = &ufunc__hypergeom_mean_ptr[2*0]
1742
1705
  ufunc__hypergeom_mean_data[1] = &ufunc__hypergeom_mean_ptr[2*1]
1743
- _hypergeom_mean = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_mean_loops, ufunc__hypergeom_mean_data, ufunc__hypergeom_mean_types, 2, 3, 1, 0, "_hypergeom_mean", ufunc__hypergeom_mean_doc, 0)
1706
+ _hypergeom_mean = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_mean_loops, ufunc__hypergeom_mean_data, ufunc__hypergeom_mean_types, 2, 3, 1, 0, '_hypergeom_mean', ufunc__hypergeom_mean_doc, 0)
1744
1707
 
1745
1708
  cdef np.PyUFuncGenericFunction ufunc__hypergeom_pmf_loops[2]
1746
1709
  cdef void *ufunc__hypergeom_pmf_ptr[4]
@@ -1779,7 +1742,7 @@ ufunc__hypergeom_pmf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_hyperge
1779
1742
  ufunc__hypergeom_pmf_ptr[2*1+1] = <void*>(<char*>"_hypergeom_pmf")
1780
1743
  ufunc__hypergeom_pmf_data[0] = &ufunc__hypergeom_pmf_ptr[2*0]
1781
1744
  ufunc__hypergeom_pmf_data[1] = &ufunc__hypergeom_pmf_ptr[2*1]
1782
- _hypergeom_pmf = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_pmf_loops, ufunc__hypergeom_pmf_data, ufunc__hypergeom_pmf_types, 2, 4, 1, 0, "_hypergeom_pmf", ufunc__hypergeom_pmf_doc, 0)
1745
+ _hypergeom_pmf = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_pmf_loops, ufunc__hypergeom_pmf_data, ufunc__hypergeom_pmf_types, 2, 4, 1, 0, '_hypergeom_pmf', ufunc__hypergeom_pmf_doc, 0)
1783
1746
 
1784
1747
  cdef np.PyUFuncGenericFunction ufunc__hypergeom_sf_loops[2]
1785
1748
  cdef void *ufunc__hypergeom_sf_ptr[4]
@@ -1818,7 +1781,7 @@ ufunc__hypergeom_sf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_hypergeo
1818
1781
  ufunc__hypergeom_sf_ptr[2*1+1] = <void*>(<char*>"_hypergeom_sf")
1819
1782
  ufunc__hypergeom_sf_data[0] = &ufunc__hypergeom_sf_ptr[2*0]
1820
1783
  ufunc__hypergeom_sf_data[1] = &ufunc__hypergeom_sf_ptr[2*1]
1821
- _hypergeom_sf = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_sf_loops, ufunc__hypergeom_sf_data, ufunc__hypergeom_sf_types, 2, 4, 1, 0, "_hypergeom_sf", ufunc__hypergeom_sf_doc, 0)
1784
+ _hypergeom_sf = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_sf_loops, ufunc__hypergeom_sf_data, ufunc__hypergeom_sf_types, 2, 4, 1, 0, '_hypergeom_sf', ufunc__hypergeom_sf_doc, 0)
1822
1785
 
1823
1786
  cdef np.PyUFuncGenericFunction ufunc__hypergeom_skewness_loops[2]
1824
1787
  cdef void *ufunc__hypergeom_skewness_ptr[4]
@@ -1853,7 +1816,7 @@ ufunc__hypergeom_skewness_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_hy
1853
1816
  ufunc__hypergeom_skewness_ptr[2*1+1] = <void*>(<char*>"_hypergeom_skewness")
1854
1817
  ufunc__hypergeom_skewness_data[0] = &ufunc__hypergeom_skewness_ptr[2*0]
1855
1818
  ufunc__hypergeom_skewness_data[1] = &ufunc__hypergeom_skewness_ptr[2*1]
1856
- _hypergeom_skewness = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_skewness_loops, ufunc__hypergeom_skewness_data, ufunc__hypergeom_skewness_types, 2, 3, 1, 0, "_hypergeom_skewness", ufunc__hypergeom_skewness_doc, 0)
1819
+ _hypergeom_skewness = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_skewness_loops, ufunc__hypergeom_skewness_data, ufunc__hypergeom_skewness_types, 2, 3, 1, 0, '_hypergeom_skewness', ufunc__hypergeom_skewness_doc, 0)
1857
1820
 
1858
1821
  cdef np.PyUFuncGenericFunction ufunc__hypergeom_variance_loops[2]
1859
1822
  cdef void *ufunc__hypergeom_variance_ptr[4]
@@ -1888,7 +1851,7 @@ ufunc__hypergeom_variance_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_hy
1888
1851
  ufunc__hypergeom_variance_ptr[2*1+1] = <void*>(<char*>"_hypergeom_variance")
1889
1852
  ufunc__hypergeom_variance_data[0] = &ufunc__hypergeom_variance_ptr[2*0]
1890
1853
  ufunc__hypergeom_variance_data[1] = &ufunc__hypergeom_variance_ptr[2*1]
1891
- _hypergeom_variance = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_variance_loops, ufunc__hypergeom_variance_data, ufunc__hypergeom_variance_types, 2, 3, 1, 0, "_hypergeom_variance", ufunc__hypergeom_variance_doc, 0)
1854
+ _hypergeom_variance = np.PyUFunc_FromFuncAndData(ufunc__hypergeom_variance_loops, ufunc__hypergeom_variance_data, ufunc__hypergeom_variance_types, 2, 3, 1, 0, '_hypergeom_variance', ufunc__hypergeom_variance_doc, 0)
1892
1855
 
1893
1856
  cdef np.PyUFuncGenericFunction ufunc__igam_fac_loops[2]
1894
1857
  cdef void *ufunc__igam_fac_ptr[4]
@@ -1910,7 +1873,7 @@ ufunc__igam_fac_ptr[2*1] = <void*>_func_cephes_igam_fac
1910
1873
  ufunc__igam_fac_ptr[2*1+1] = <void*>(<char*>"_igam_fac")
1911
1874
  ufunc__igam_fac_data[0] = &ufunc__igam_fac_ptr[2*0]
1912
1875
  ufunc__igam_fac_data[1] = &ufunc__igam_fac_ptr[2*1]
1913
- _igam_fac = np.PyUFunc_FromFuncAndData(ufunc__igam_fac_loops, ufunc__igam_fac_data, ufunc__igam_fac_types, 2, 2, 1, 0, "_igam_fac", ufunc__igam_fac_doc, 0)
1876
+ _igam_fac = np.PyUFunc_FromFuncAndData(ufunc__igam_fac_loops, ufunc__igam_fac_data, ufunc__igam_fac_types, 2, 2, 1, 0, '_igam_fac', ufunc__igam_fac_doc, 0)
1914
1877
 
1915
1878
  cdef np.PyUFuncGenericFunction ufunc__invgauss_isf_loops[2]
1916
1879
  cdef void *ufunc__invgauss_isf_ptr[4]
@@ -1949,7 +1912,7 @@ ufunc__invgauss_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_invgauss
1949
1912
  ufunc__invgauss_isf_ptr[2*1+1] = <void*>(<char*>"_invgauss_isf")
1950
1913
  ufunc__invgauss_isf_data[0] = &ufunc__invgauss_isf_ptr[2*0]
1951
1914
  ufunc__invgauss_isf_data[1] = &ufunc__invgauss_isf_ptr[2*1]
1952
- _invgauss_isf = np.PyUFunc_FromFuncAndData(ufunc__invgauss_isf_loops, ufunc__invgauss_isf_data, ufunc__invgauss_isf_types, 2, 3, 1, 0, "_invgauss_isf", ufunc__invgauss_isf_doc, 0)
1915
+ _invgauss_isf = np.PyUFunc_FromFuncAndData(ufunc__invgauss_isf_loops, ufunc__invgauss_isf_data, ufunc__invgauss_isf_types, 2, 3, 1, 0, '_invgauss_isf', ufunc__invgauss_isf_doc, 0)
1953
1916
 
1954
1917
  cdef np.PyUFuncGenericFunction ufunc__invgauss_ppf_loops[2]
1955
1918
  cdef void *ufunc__invgauss_ppf_ptr[4]
@@ -1986,7 +1949,7 @@ ufunc__invgauss_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_invgauss
1986
1949
  ufunc__invgauss_ppf_ptr[2*1+1] = <void*>(<char*>"_invgauss_ppf")
1987
1950
  ufunc__invgauss_ppf_data[0] = &ufunc__invgauss_ppf_ptr[2*0]
1988
1951
  ufunc__invgauss_ppf_data[1] = &ufunc__invgauss_ppf_ptr[2*1]
1989
- _invgauss_ppf = np.PyUFunc_FromFuncAndData(ufunc__invgauss_ppf_loops, ufunc__invgauss_ppf_data, ufunc__invgauss_ppf_types, 2, 3, 1, 0, "_invgauss_ppf", ufunc__invgauss_ppf_doc, 0)
1952
+ _invgauss_ppf = np.PyUFunc_FromFuncAndData(ufunc__invgauss_ppf_loops, ufunc__invgauss_ppf_data, ufunc__invgauss_ppf_types, 2, 3, 1, 0, '_invgauss_ppf', ufunc__invgauss_ppf_doc, 0)
1990
1953
 
1991
1954
  cdef np.PyUFuncGenericFunction ufunc__kolmogc_loops[2]
1992
1955
  cdef void *ufunc__kolmogc_ptr[4]
@@ -2006,7 +1969,7 @@ ufunc__kolmogc_ptr[2*1] = <void*>_func_xsf_kolmogc
2006
1969
  ufunc__kolmogc_ptr[2*1+1] = <void*>(<char*>"_kolmogc")
2007
1970
  ufunc__kolmogc_data[0] = &ufunc__kolmogc_ptr[2*0]
2008
1971
  ufunc__kolmogc_data[1] = &ufunc__kolmogc_ptr[2*1]
2009
- _kolmogc = np.PyUFunc_FromFuncAndData(ufunc__kolmogc_loops, ufunc__kolmogc_data, ufunc__kolmogc_types, 2, 1, 1, 0, "_kolmogc", ufunc__kolmogc_doc, 0)
1972
+ _kolmogc = np.PyUFunc_FromFuncAndData(ufunc__kolmogc_loops, ufunc__kolmogc_data, ufunc__kolmogc_types, 2, 1, 1, 0, '_kolmogc', ufunc__kolmogc_doc, 0)
2010
1973
 
2011
1974
  cdef np.PyUFuncGenericFunction ufunc__kolmogci_loops[2]
2012
1975
  cdef void *ufunc__kolmogci_ptr[4]
@@ -2026,7 +1989,7 @@ ufunc__kolmogci_ptr[2*1] = <void*>_func_xsf_kolmogci
2026
1989
  ufunc__kolmogci_ptr[2*1+1] = <void*>(<char*>"_kolmogci")
2027
1990
  ufunc__kolmogci_data[0] = &ufunc__kolmogci_ptr[2*0]
2028
1991
  ufunc__kolmogci_data[1] = &ufunc__kolmogci_ptr[2*1]
2029
- _kolmogci = np.PyUFunc_FromFuncAndData(ufunc__kolmogci_loops, ufunc__kolmogci_data, ufunc__kolmogci_types, 2, 1, 1, 0, "_kolmogci", ufunc__kolmogci_doc, 0)
1992
+ _kolmogci = np.PyUFunc_FromFuncAndData(ufunc__kolmogci_loops, ufunc__kolmogci_data, ufunc__kolmogci_types, 2, 1, 1, 0, '_kolmogci', ufunc__kolmogci_doc, 0)
2030
1993
 
2031
1994
  cdef np.PyUFuncGenericFunction ufunc__kolmogp_loops[2]
2032
1995
  cdef void *ufunc__kolmogp_ptr[4]
@@ -2046,7 +2009,7 @@ ufunc__kolmogp_ptr[2*1] = <void*>_func_xsf_kolmogp
2046
2009
  ufunc__kolmogp_ptr[2*1+1] = <void*>(<char*>"_kolmogp")
2047
2010
  ufunc__kolmogp_data[0] = &ufunc__kolmogp_ptr[2*0]
2048
2011
  ufunc__kolmogp_data[1] = &ufunc__kolmogp_ptr[2*1]
2049
- _kolmogp = np.PyUFunc_FromFuncAndData(ufunc__kolmogp_loops, ufunc__kolmogp_data, ufunc__kolmogp_types, 2, 1, 1, 0, "_kolmogp", ufunc__kolmogp_doc, 0)
2012
+ _kolmogp = np.PyUFunc_FromFuncAndData(ufunc__kolmogp_loops, ufunc__kolmogp_data, ufunc__kolmogp_types, 2, 1, 1, 0, '_kolmogp', ufunc__kolmogp_doc, 0)
2050
2013
 
2051
2014
  cdef np.PyUFuncGenericFunction ufunc__lanczos_sum_expg_scaled_loops[2]
2052
2015
  cdef void *ufunc__lanczos_sum_expg_scaled_ptr[4]
@@ -2066,7 +2029,7 @@ ufunc__lanczos_sum_expg_scaled_ptr[2*1] = <void*>_func_cephes_lanczos_sum_expg_s
2066
2029
  ufunc__lanczos_sum_expg_scaled_ptr[2*1+1] = <void*>(<char*>"_lanczos_sum_expg_scaled")
2067
2030
  ufunc__lanczos_sum_expg_scaled_data[0] = &ufunc__lanczos_sum_expg_scaled_ptr[2*0]
2068
2031
  ufunc__lanczos_sum_expg_scaled_data[1] = &ufunc__lanczos_sum_expg_scaled_ptr[2*1]
2069
- _lanczos_sum_expg_scaled = np.PyUFunc_FromFuncAndData(ufunc__lanczos_sum_expg_scaled_loops, ufunc__lanczos_sum_expg_scaled_data, ufunc__lanczos_sum_expg_scaled_types, 2, 1, 1, 0, "_lanczos_sum_expg_scaled", ufunc__lanczos_sum_expg_scaled_doc, 0)
2032
+ _lanczos_sum_expg_scaled = np.PyUFunc_FromFuncAndData(ufunc__lanczos_sum_expg_scaled_loops, ufunc__lanczos_sum_expg_scaled_data, ufunc__lanczos_sum_expg_scaled_types, 2, 1, 1, 0, '_lanczos_sum_expg_scaled', ufunc__lanczos_sum_expg_scaled_doc, 0)
2070
2033
 
2071
2034
  cdef np.PyUFuncGenericFunction ufunc__landau_cdf_loops[2]
2072
2035
  cdef void *ufunc__landau_cdf_ptr[4]
@@ -2105,7 +2068,7 @@ ufunc__landau_cdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_landau_cdf
2105
2068
  ufunc__landau_cdf_ptr[2*1+1] = <void*>(<char*>"_landau_cdf")
2106
2069
  ufunc__landau_cdf_data[0] = &ufunc__landau_cdf_ptr[2*0]
2107
2070
  ufunc__landau_cdf_data[1] = &ufunc__landau_cdf_ptr[2*1]
2108
- _landau_cdf = np.PyUFunc_FromFuncAndData(ufunc__landau_cdf_loops, ufunc__landau_cdf_data, ufunc__landau_cdf_types, 2, 3, 1, 0, "_landau_cdf", ufunc__landau_cdf_doc, 0)
2071
+ _landau_cdf = np.PyUFunc_FromFuncAndData(ufunc__landau_cdf_loops, ufunc__landau_cdf_data, ufunc__landau_cdf_types, 2, 3, 1, 0, '_landau_cdf', ufunc__landau_cdf_doc, 0)
2109
2072
 
2110
2073
  cdef np.PyUFuncGenericFunction ufunc__landau_isf_loops[2]
2111
2074
  cdef void *ufunc__landau_isf_ptr[4]
@@ -2144,7 +2107,7 @@ ufunc__landau_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_landau_isf
2144
2107
  ufunc__landau_isf_ptr[2*1+1] = <void*>(<char*>"_landau_isf")
2145
2108
  ufunc__landau_isf_data[0] = &ufunc__landau_isf_ptr[2*0]
2146
2109
  ufunc__landau_isf_data[1] = &ufunc__landau_isf_ptr[2*1]
2147
- _landau_isf = np.PyUFunc_FromFuncAndData(ufunc__landau_isf_loops, ufunc__landau_isf_data, ufunc__landau_isf_types, 2, 3, 1, 0, "_landau_isf", ufunc__landau_isf_doc, 0)
2110
+ _landau_isf = np.PyUFunc_FromFuncAndData(ufunc__landau_isf_loops, ufunc__landau_isf_data, ufunc__landau_isf_types, 2, 3, 1, 0, '_landau_isf', ufunc__landau_isf_doc, 0)
2148
2111
 
2149
2112
  cdef np.PyUFuncGenericFunction ufunc__landau_pdf_loops[2]
2150
2113
  cdef void *ufunc__landau_pdf_ptr[4]
@@ -2183,7 +2146,7 @@ ufunc__landau_pdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_landau_pdf
2183
2146
  ufunc__landau_pdf_ptr[2*1+1] = <void*>(<char*>"_landau_pdf")
2184
2147
  ufunc__landau_pdf_data[0] = &ufunc__landau_pdf_ptr[2*0]
2185
2148
  ufunc__landau_pdf_data[1] = &ufunc__landau_pdf_ptr[2*1]
2186
- _landau_pdf = np.PyUFunc_FromFuncAndData(ufunc__landau_pdf_loops, ufunc__landau_pdf_data, ufunc__landau_pdf_types, 2, 3, 1, 0, "_landau_pdf", ufunc__landau_pdf_doc, 0)
2149
+ _landau_pdf = np.PyUFunc_FromFuncAndData(ufunc__landau_pdf_loops, ufunc__landau_pdf_data, ufunc__landau_pdf_types, 2, 3, 1, 0, '_landau_pdf', ufunc__landau_pdf_doc, 0)
2187
2150
 
2188
2151
  cdef np.PyUFuncGenericFunction ufunc__landau_ppf_loops[2]
2189
2152
  cdef void *ufunc__landau_ppf_ptr[4]
@@ -2222,7 +2185,7 @@ ufunc__landau_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_landau_ppf
2222
2185
  ufunc__landau_ppf_ptr[2*1+1] = <void*>(<char*>"_landau_ppf")
2223
2186
  ufunc__landau_ppf_data[0] = &ufunc__landau_ppf_ptr[2*0]
2224
2187
  ufunc__landau_ppf_data[1] = &ufunc__landau_ppf_ptr[2*1]
2225
- _landau_ppf = np.PyUFunc_FromFuncAndData(ufunc__landau_ppf_loops, ufunc__landau_ppf_data, ufunc__landau_ppf_types, 2, 3, 1, 0, "_landau_ppf", ufunc__landau_ppf_doc, 0)
2188
+ _landau_ppf = np.PyUFunc_FromFuncAndData(ufunc__landau_ppf_loops, ufunc__landau_ppf_data, ufunc__landau_ppf_types, 2, 3, 1, 0, '_landau_ppf', ufunc__landau_ppf_doc, 0)
2226
2189
 
2227
2190
  cdef np.PyUFuncGenericFunction ufunc__landau_sf_loops[2]
2228
2191
  cdef void *ufunc__landau_sf_ptr[4]
@@ -2261,7 +2224,7 @@ ufunc__landau_sf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_landau_sf_d
2261
2224
  ufunc__landau_sf_ptr[2*1+1] = <void*>(<char*>"_landau_sf")
2262
2225
  ufunc__landau_sf_data[0] = &ufunc__landau_sf_ptr[2*0]
2263
2226
  ufunc__landau_sf_data[1] = &ufunc__landau_sf_ptr[2*1]
2264
- _landau_sf = np.PyUFunc_FromFuncAndData(ufunc__landau_sf_loops, ufunc__landau_sf_data, ufunc__landau_sf_types, 2, 3, 1, 0, "_landau_sf", ufunc__landau_sf_doc, 0)
2227
+ _landau_sf = np.PyUFunc_FromFuncAndData(ufunc__landau_sf_loops, ufunc__landau_sf_data, ufunc__landau_sf_types, 2, 3, 1, 0, '_landau_sf', ufunc__landau_sf_doc, 0)
2265
2228
 
2266
2229
  cdef np.PyUFuncGenericFunction ufunc__lgam1p_loops[2]
2267
2230
  cdef void *ufunc__lgam1p_ptr[4]
@@ -2281,27 +2244,7 @@ ufunc__lgam1p_ptr[2*1] = <void*>_func_cephes_lgam1p
2281
2244
  ufunc__lgam1p_ptr[2*1+1] = <void*>(<char*>"_lgam1p")
2282
2245
  ufunc__lgam1p_data[0] = &ufunc__lgam1p_ptr[2*0]
2283
2246
  ufunc__lgam1p_data[1] = &ufunc__lgam1p_ptr[2*1]
2284
- _lgam1p = np.PyUFunc_FromFuncAndData(ufunc__lgam1p_loops, ufunc__lgam1p_data, ufunc__lgam1p_types, 2, 1, 1, 0, "_lgam1p", ufunc__lgam1p_doc, 0)
2285
-
2286
- cdef np.PyUFuncGenericFunction ufunc__log1pmx_loops[2]
2287
- cdef void *ufunc__log1pmx_ptr[4]
2288
- cdef void *ufunc__log1pmx_data[2]
2289
- cdef char ufunc__log1pmx_types[4]
2290
- cdef char *ufunc__log1pmx_doc = (
2291
- "Internal function, do not use.")
2292
- ufunc__log1pmx_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
2293
- ufunc__log1pmx_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
2294
- ufunc__log1pmx_types[0] = <char>NPY_FLOAT
2295
- ufunc__log1pmx_types[1] = <char>NPY_FLOAT
2296
- ufunc__log1pmx_types[2] = <char>NPY_DOUBLE
2297
- ufunc__log1pmx_types[3] = <char>NPY_DOUBLE
2298
- ufunc__log1pmx_ptr[2*0] = <void*>_func_cephes_log1pmx
2299
- ufunc__log1pmx_ptr[2*0+1] = <void*>(<char*>"_log1pmx")
2300
- ufunc__log1pmx_ptr[2*1] = <void*>_func_cephes_log1pmx
2301
- ufunc__log1pmx_ptr[2*1+1] = <void*>(<char*>"_log1pmx")
2302
- ufunc__log1pmx_data[0] = &ufunc__log1pmx_ptr[2*0]
2303
- ufunc__log1pmx_data[1] = &ufunc__log1pmx_ptr[2*1]
2304
- _log1pmx = np.PyUFunc_FromFuncAndData(ufunc__log1pmx_loops, ufunc__log1pmx_data, ufunc__log1pmx_types, 2, 1, 1, 0, "_log1pmx", ufunc__log1pmx_doc, 0)
2247
+ _lgam1p = np.PyUFunc_FromFuncAndData(ufunc__lgam1p_loops, ufunc__lgam1p_data, ufunc__lgam1p_types, 2, 1, 1, 0, '_lgam1p', ufunc__lgam1p_doc, 0)
2305
2248
 
2306
2249
  cdef np.PyUFuncGenericFunction ufunc__nbinom_cdf_loops[2]
2307
2250
  cdef void *ufunc__nbinom_cdf_ptr[4]
@@ -2340,7 +2283,7 @@ ufunc__nbinom_cdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nbinom_cdf
2340
2283
  ufunc__nbinom_cdf_ptr[2*1+1] = <void*>(<char*>"_nbinom_cdf")
2341
2284
  ufunc__nbinom_cdf_data[0] = &ufunc__nbinom_cdf_ptr[2*0]
2342
2285
  ufunc__nbinom_cdf_data[1] = &ufunc__nbinom_cdf_ptr[2*1]
2343
- _nbinom_cdf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_cdf_loops, ufunc__nbinom_cdf_data, ufunc__nbinom_cdf_types, 2, 3, 1, 0, "_nbinom_cdf", ufunc__nbinom_cdf_doc, 0)
2286
+ _nbinom_cdf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_cdf_loops, ufunc__nbinom_cdf_data, ufunc__nbinom_cdf_types, 2, 3, 1, 0, '_nbinom_cdf', ufunc__nbinom_cdf_doc, 0)
2344
2287
 
2345
2288
  cdef np.PyUFuncGenericFunction ufunc__nbinom_isf_loops[2]
2346
2289
  cdef void *ufunc__nbinom_isf_ptr[4]
@@ -2379,7 +2322,7 @@ ufunc__nbinom_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nbinom_isf
2379
2322
  ufunc__nbinom_isf_ptr[2*1+1] = <void*>(<char*>"_nbinom_isf")
2380
2323
  ufunc__nbinom_isf_data[0] = &ufunc__nbinom_isf_ptr[2*0]
2381
2324
  ufunc__nbinom_isf_data[1] = &ufunc__nbinom_isf_ptr[2*1]
2382
- _nbinom_isf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_isf_loops, ufunc__nbinom_isf_data, ufunc__nbinom_isf_types, 2, 3, 1, 0, "_nbinom_isf", ufunc__nbinom_isf_doc, 0)
2325
+ _nbinom_isf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_isf_loops, ufunc__nbinom_isf_data, ufunc__nbinom_isf_types, 2, 3, 1, 0, '_nbinom_isf', ufunc__nbinom_isf_doc, 0)
2383
2326
 
2384
2327
  cdef np.PyUFuncGenericFunction ufunc__nbinom_kurtosis_excess_loops[2]
2385
2328
  cdef void *ufunc__nbinom_kurtosis_excess_ptr[4]
@@ -2414,7 +2357,7 @@ ufunc__nbinom_kurtosis_excess_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._expor
2414
2357
  ufunc__nbinom_kurtosis_excess_ptr[2*1+1] = <void*>(<char*>"_nbinom_kurtosis_excess")
2415
2358
  ufunc__nbinom_kurtosis_excess_data[0] = &ufunc__nbinom_kurtosis_excess_ptr[2*0]
2416
2359
  ufunc__nbinom_kurtosis_excess_data[1] = &ufunc__nbinom_kurtosis_excess_ptr[2*1]
2417
- _nbinom_kurtosis_excess = np.PyUFunc_FromFuncAndData(ufunc__nbinom_kurtosis_excess_loops, ufunc__nbinom_kurtosis_excess_data, ufunc__nbinom_kurtosis_excess_types, 2, 2, 1, 0, "_nbinom_kurtosis_excess", ufunc__nbinom_kurtosis_excess_doc, 0)
2360
+ _nbinom_kurtosis_excess = np.PyUFunc_FromFuncAndData(ufunc__nbinom_kurtosis_excess_loops, ufunc__nbinom_kurtosis_excess_data, ufunc__nbinom_kurtosis_excess_types, 2, 2, 1, 0, '_nbinom_kurtosis_excess', ufunc__nbinom_kurtosis_excess_doc, 0)
2418
2361
 
2419
2362
  cdef np.PyUFuncGenericFunction ufunc__nbinom_mean_loops[2]
2420
2363
  cdef void *ufunc__nbinom_mean_ptr[4]
@@ -2449,7 +2392,7 @@ ufunc__nbinom_mean_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nbinom_me
2449
2392
  ufunc__nbinom_mean_ptr[2*1+1] = <void*>(<char*>"_nbinom_mean")
2450
2393
  ufunc__nbinom_mean_data[0] = &ufunc__nbinom_mean_ptr[2*0]
2451
2394
  ufunc__nbinom_mean_data[1] = &ufunc__nbinom_mean_ptr[2*1]
2452
- _nbinom_mean = np.PyUFunc_FromFuncAndData(ufunc__nbinom_mean_loops, ufunc__nbinom_mean_data, ufunc__nbinom_mean_types, 2, 2, 1, 0, "_nbinom_mean", ufunc__nbinom_mean_doc, 0)
2395
+ _nbinom_mean = np.PyUFunc_FromFuncAndData(ufunc__nbinom_mean_loops, ufunc__nbinom_mean_data, ufunc__nbinom_mean_types, 2, 2, 1, 0, '_nbinom_mean', ufunc__nbinom_mean_doc, 0)
2453
2396
 
2454
2397
  cdef np.PyUFuncGenericFunction ufunc__nbinom_pmf_loops[2]
2455
2398
  cdef void *ufunc__nbinom_pmf_ptr[4]
@@ -2488,7 +2431,7 @@ ufunc__nbinom_pmf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nbinom_pmf
2488
2431
  ufunc__nbinom_pmf_ptr[2*1+1] = <void*>(<char*>"_nbinom_pmf")
2489
2432
  ufunc__nbinom_pmf_data[0] = &ufunc__nbinom_pmf_ptr[2*0]
2490
2433
  ufunc__nbinom_pmf_data[1] = &ufunc__nbinom_pmf_ptr[2*1]
2491
- _nbinom_pmf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_pmf_loops, ufunc__nbinom_pmf_data, ufunc__nbinom_pmf_types, 2, 3, 1, 0, "_nbinom_pmf", ufunc__nbinom_pmf_doc, 0)
2434
+ _nbinom_pmf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_pmf_loops, ufunc__nbinom_pmf_data, ufunc__nbinom_pmf_types, 2, 3, 1, 0, '_nbinom_pmf', ufunc__nbinom_pmf_doc, 0)
2492
2435
 
2493
2436
  cdef np.PyUFuncGenericFunction ufunc__nbinom_ppf_loops[2]
2494
2437
  cdef void *ufunc__nbinom_ppf_ptr[4]
@@ -2527,7 +2470,7 @@ ufunc__nbinom_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nbinom_ppf
2527
2470
  ufunc__nbinom_ppf_ptr[2*1+1] = <void*>(<char*>"_nbinom_ppf")
2528
2471
  ufunc__nbinom_ppf_data[0] = &ufunc__nbinom_ppf_ptr[2*0]
2529
2472
  ufunc__nbinom_ppf_data[1] = &ufunc__nbinom_ppf_ptr[2*1]
2530
- _nbinom_ppf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_ppf_loops, ufunc__nbinom_ppf_data, ufunc__nbinom_ppf_types, 2, 3, 1, 0, "_nbinom_ppf", ufunc__nbinom_ppf_doc, 0)
2473
+ _nbinom_ppf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_ppf_loops, ufunc__nbinom_ppf_data, ufunc__nbinom_ppf_types, 2, 3, 1, 0, '_nbinom_ppf', ufunc__nbinom_ppf_doc, 0)
2531
2474
 
2532
2475
  cdef np.PyUFuncGenericFunction ufunc__nbinom_sf_loops[2]
2533
2476
  cdef void *ufunc__nbinom_sf_ptr[4]
@@ -2566,7 +2509,7 @@ ufunc__nbinom_sf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nbinom_sf_d
2566
2509
  ufunc__nbinom_sf_ptr[2*1+1] = <void*>(<char*>"_nbinom_sf")
2567
2510
  ufunc__nbinom_sf_data[0] = &ufunc__nbinom_sf_ptr[2*0]
2568
2511
  ufunc__nbinom_sf_data[1] = &ufunc__nbinom_sf_ptr[2*1]
2569
- _nbinom_sf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_sf_loops, ufunc__nbinom_sf_data, ufunc__nbinom_sf_types, 2, 3, 1, 0, "_nbinom_sf", ufunc__nbinom_sf_doc, 0)
2512
+ _nbinom_sf = np.PyUFunc_FromFuncAndData(ufunc__nbinom_sf_loops, ufunc__nbinom_sf_data, ufunc__nbinom_sf_types, 2, 3, 1, 0, '_nbinom_sf', ufunc__nbinom_sf_doc, 0)
2570
2513
 
2571
2514
  cdef np.PyUFuncGenericFunction ufunc__nbinom_skewness_loops[2]
2572
2515
  cdef void *ufunc__nbinom_skewness_ptr[4]
@@ -2601,7 +2544,7 @@ ufunc__nbinom_skewness_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nbino
2601
2544
  ufunc__nbinom_skewness_ptr[2*1+1] = <void*>(<char*>"_nbinom_skewness")
2602
2545
  ufunc__nbinom_skewness_data[0] = &ufunc__nbinom_skewness_ptr[2*0]
2603
2546
  ufunc__nbinom_skewness_data[1] = &ufunc__nbinom_skewness_ptr[2*1]
2604
- _nbinom_skewness = np.PyUFunc_FromFuncAndData(ufunc__nbinom_skewness_loops, ufunc__nbinom_skewness_data, ufunc__nbinom_skewness_types, 2, 2, 1, 0, "_nbinom_skewness", ufunc__nbinom_skewness_doc, 0)
2547
+ _nbinom_skewness = np.PyUFunc_FromFuncAndData(ufunc__nbinom_skewness_loops, ufunc__nbinom_skewness_data, ufunc__nbinom_skewness_types, 2, 2, 1, 0, '_nbinom_skewness', ufunc__nbinom_skewness_doc, 0)
2605
2548
 
2606
2549
  cdef np.PyUFuncGenericFunction ufunc__nbinom_variance_loops[2]
2607
2550
  cdef void *ufunc__nbinom_variance_ptr[4]
@@ -2636,7 +2579,7 @@ ufunc__nbinom_variance_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nbino
2636
2579
  ufunc__nbinom_variance_ptr[2*1+1] = <void*>(<char*>"_nbinom_variance")
2637
2580
  ufunc__nbinom_variance_data[0] = &ufunc__nbinom_variance_ptr[2*0]
2638
2581
  ufunc__nbinom_variance_data[1] = &ufunc__nbinom_variance_ptr[2*1]
2639
- _nbinom_variance = np.PyUFunc_FromFuncAndData(ufunc__nbinom_variance_loops, ufunc__nbinom_variance_data, ufunc__nbinom_variance_types, 2, 2, 1, 0, "_nbinom_variance", ufunc__nbinom_variance_doc, 0)
2582
+ _nbinom_variance = np.PyUFunc_FromFuncAndData(ufunc__nbinom_variance_loops, ufunc__nbinom_variance_data, ufunc__nbinom_variance_types, 2, 2, 1, 0, '_nbinom_variance', ufunc__nbinom_variance_doc, 0)
2640
2583
 
2641
2584
  cdef np.PyUFuncGenericFunction ufunc__ncf_isf_loops[2]
2642
2585
  cdef void *ufunc__ncf_isf_ptr[4]
@@ -2675,7 +2618,7 @@ ufunc__ncf_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncf_isf_doubl
2675
2618
  ufunc__ncf_isf_ptr[2*1+1] = <void*>(<char*>"_ncf_isf")
2676
2619
  ufunc__ncf_isf_data[0] = &ufunc__ncf_isf_ptr[2*0]
2677
2620
  ufunc__ncf_isf_data[1] = &ufunc__ncf_isf_ptr[2*1]
2678
- _ncf_isf = np.PyUFunc_FromFuncAndData(ufunc__ncf_isf_loops, ufunc__ncf_isf_data, ufunc__ncf_isf_types, 2, 4, 1, 0, "_ncf_isf", ufunc__ncf_isf_doc, 0)
2621
+ _ncf_isf = np.PyUFunc_FromFuncAndData(ufunc__ncf_isf_loops, ufunc__ncf_isf_data, ufunc__ncf_isf_types, 2, 4, 1, 0, '_ncf_isf', ufunc__ncf_isf_doc, 0)
2679
2622
 
2680
2623
  cdef np.PyUFuncGenericFunction ufunc__ncf_kurtosis_excess_loops[2]
2681
2624
  cdef void *ufunc__ncf_kurtosis_excess_ptr[4]
@@ -2710,7 +2653,7 @@ ufunc__ncf_kurtosis_excess_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_n
2710
2653
  ufunc__ncf_kurtosis_excess_ptr[2*1+1] = <void*>(<char*>"_ncf_kurtosis_excess")
2711
2654
  ufunc__ncf_kurtosis_excess_data[0] = &ufunc__ncf_kurtosis_excess_ptr[2*0]
2712
2655
  ufunc__ncf_kurtosis_excess_data[1] = &ufunc__ncf_kurtosis_excess_ptr[2*1]
2713
- _ncf_kurtosis_excess = np.PyUFunc_FromFuncAndData(ufunc__ncf_kurtosis_excess_loops, ufunc__ncf_kurtosis_excess_data, ufunc__ncf_kurtosis_excess_types, 2, 3, 1, 0, "_ncf_kurtosis_excess", ufunc__ncf_kurtosis_excess_doc, 0)
2656
+ _ncf_kurtosis_excess = np.PyUFunc_FromFuncAndData(ufunc__ncf_kurtosis_excess_loops, ufunc__ncf_kurtosis_excess_data, ufunc__ncf_kurtosis_excess_types, 2, 3, 1, 0, '_ncf_kurtosis_excess', ufunc__ncf_kurtosis_excess_doc, 0)
2714
2657
 
2715
2658
  cdef np.PyUFuncGenericFunction ufunc__ncf_mean_loops[2]
2716
2659
  cdef void *ufunc__ncf_mean_ptr[4]
@@ -2745,7 +2688,7 @@ ufunc__ncf_mean_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncf_mean_dou
2745
2688
  ufunc__ncf_mean_ptr[2*1+1] = <void*>(<char*>"_ncf_mean")
2746
2689
  ufunc__ncf_mean_data[0] = &ufunc__ncf_mean_ptr[2*0]
2747
2690
  ufunc__ncf_mean_data[1] = &ufunc__ncf_mean_ptr[2*1]
2748
- _ncf_mean = np.PyUFunc_FromFuncAndData(ufunc__ncf_mean_loops, ufunc__ncf_mean_data, ufunc__ncf_mean_types, 2, 3, 1, 0, "_ncf_mean", ufunc__ncf_mean_doc, 0)
2691
+ _ncf_mean = np.PyUFunc_FromFuncAndData(ufunc__ncf_mean_loops, ufunc__ncf_mean_data, ufunc__ncf_mean_types, 2, 3, 1, 0, '_ncf_mean', ufunc__ncf_mean_doc, 0)
2749
2692
 
2750
2693
  cdef np.PyUFuncGenericFunction ufunc__ncf_pdf_loops[2]
2751
2694
  cdef void *ufunc__ncf_pdf_ptr[4]
@@ -2784,7 +2727,7 @@ ufunc__ncf_pdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncf_pdf_doubl
2784
2727
  ufunc__ncf_pdf_ptr[2*1+1] = <void*>(<char*>"_ncf_pdf")
2785
2728
  ufunc__ncf_pdf_data[0] = &ufunc__ncf_pdf_ptr[2*0]
2786
2729
  ufunc__ncf_pdf_data[1] = &ufunc__ncf_pdf_ptr[2*1]
2787
- _ncf_pdf = np.PyUFunc_FromFuncAndData(ufunc__ncf_pdf_loops, ufunc__ncf_pdf_data, ufunc__ncf_pdf_types, 2, 4, 1, 0, "_ncf_pdf", ufunc__ncf_pdf_doc, 0)
2730
+ _ncf_pdf = np.PyUFunc_FromFuncAndData(ufunc__ncf_pdf_loops, ufunc__ncf_pdf_data, ufunc__ncf_pdf_types, 2, 4, 1, 0, '_ncf_pdf', ufunc__ncf_pdf_doc, 0)
2788
2731
 
2789
2732
  cdef np.PyUFuncGenericFunction ufunc__ncf_sf_loops[2]
2790
2733
  cdef void *ufunc__ncf_sf_ptr[4]
@@ -2823,7 +2766,7 @@ ufunc__ncf_sf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncf_sf_double
2823
2766
  ufunc__ncf_sf_ptr[2*1+1] = <void*>(<char*>"_ncf_sf")
2824
2767
  ufunc__ncf_sf_data[0] = &ufunc__ncf_sf_ptr[2*0]
2825
2768
  ufunc__ncf_sf_data[1] = &ufunc__ncf_sf_ptr[2*1]
2826
- _ncf_sf = np.PyUFunc_FromFuncAndData(ufunc__ncf_sf_loops, ufunc__ncf_sf_data, ufunc__ncf_sf_types, 2, 4, 1, 0, "_ncf_sf", ufunc__ncf_sf_doc, 0)
2769
+ _ncf_sf = np.PyUFunc_FromFuncAndData(ufunc__ncf_sf_loops, ufunc__ncf_sf_data, ufunc__ncf_sf_types, 2, 4, 1, 0, '_ncf_sf', ufunc__ncf_sf_doc, 0)
2827
2770
 
2828
2771
  cdef np.PyUFuncGenericFunction ufunc__ncf_skewness_loops[2]
2829
2772
  cdef void *ufunc__ncf_skewness_ptr[4]
@@ -2858,7 +2801,7 @@ ufunc__ncf_skewness_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncf_skew
2858
2801
  ufunc__ncf_skewness_ptr[2*1+1] = <void*>(<char*>"_ncf_skewness")
2859
2802
  ufunc__ncf_skewness_data[0] = &ufunc__ncf_skewness_ptr[2*0]
2860
2803
  ufunc__ncf_skewness_data[1] = &ufunc__ncf_skewness_ptr[2*1]
2861
- _ncf_skewness = np.PyUFunc_FromFuncAndData(ufunc__ncf_skewness_loops, ufunc__ncf_skewness_data, ufunc__ncf_skewness_types, 2, 3, 1, 0, "_ncf_skewness", ufunc__ncf_skewness_doc, 0)
2804
+ _ncf_skewness = np.PyUFunc_FromFuncAndData(ufunc__ncf_skewness_loops, ufunc__ncf_skewness_data, ufunc__ncf_skewness_types, 2, 3, 1, 0, '_ncf_skewness', ufunc__ncf_skewness_doc, 0)
2862
2805
 
2863
2806
  cdef np.PyUFuncGenericFunction ufunc__ncf_variance_loops[2]
2864
2807
  cdef void *ufunc__ncf_variance_ptr[4]
@@ -2893,7 +2836,7 @@ ufunc__ncf_variance_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncf_vari
2893
2836
  ufunc__ncf_variance_ptr[2*1+1] = <void*>(<char*>"_ncf_variance")
2894
2837
  ufunc__ncf_variance_data[0] = &ufunc__ncf_variance_ptr[2*0]
2895
2838
  ufunc__ncf_variance_data[1] = &ufunc__ncf_variance_ptr[2*1]
2896
- _ncf_variance = np.PyUFunc_FromFuncAndData(ufunc__ncf_variance_loops, ufunc__ncf_variance_data, ufunc__ncf_variance_types, 2, 3, 1, 0, "_ncf_variance", ufunc__ncf_variance_doc, 0)
2839
+ _ncf_variance = np.PyUFunc_FromFuncAndData(ufunc__ncf_variance_loops, ufunc__ncf_variance_data, ufunc__ncf_variance_types, 2, 3, 1, 0, '_ncf_variance', ufunc__ncf_variance_doc, 0)
2897
2840
 
2898
2841
  cdef np.PyUFuncGenericFunction ufunc__nct_isf_loops[2]
2899
2842
  cdef void *ufunc__nct_isf_ptr[4]
@@ -2932,7 +2875,7 @@ ufunc__nct_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_isf_doubl
2932
2875
  ufunc__nct_isf_ptr[2*1+1] = <void*>(<char*>"_nct_isf")
2933
2876
  ufunc__nct_isf_data[0] = &ufunc__nct_isf_ptr[2*0]
2934
2877
  ufunc__nct_isf_data[1] = &ufunc__nct_isf_ptr[2*1]
2935
- _nct_isf = np.PyUFunc_FromFuncAndData(ufunc__nct_isf_loops, ufunc__nct_isf_data, ufunc__nct_isf_types, 2, 3, 1, 0, "_nct_isf", ufunc__nct_isf_doc, 0)
2878
+ _nct_isf = np.PyUFunc_FromFuncAndData(ufunc__nct_isf_loops, ufunc__nct_isf_data, ufunc__nct_isf_types, 2, 3, 1, 0, '_nct_isf', ufunc__nct_isf_doc, 0)
2936
2879
 
2937
2880
  cdef np.PyUFuncGenericFunction ufunc__nct_kurtosis_excess_loops[2]
2938
2881
  cdef void *ufunc__nct_kurtosis_excess_ptr[4]
@@ -2967,7 +2910,7 @@ ufunc__nct_kurtosis_excess_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_n
2967
2910
  ufunc__nct_kurtosis_excess_ptr[2*1+1] = <void*>(<char*>"_nct_kurtosis_excess")
2968
2911
  ufunc__nct_kurtosis_excess_data[0] = &ufunc__nct_kurtosis_excess_ptr[2*0]
2969
2912
  ufunc__nct_kurtosis_excess_data[1] = &ufunc__nct_kurtosis_excess_ptr[2*1]
2970
- _nct_kurtosis_excess = np.PyUFunc_FromFuncAndData(ufunc__nct_kurtosis_excess_loops, ufunc__nct_kurtosis_excess_data, ufunc__nct_kurtosis_excess_types, 2, 2, 1, 0, "_nct_kurtosis_excess", ufunc__nct_kurtosis_excess_doc, 0)
2913
+ _nct_kurtosis_excess = np.PyUFunc_FromFuncAndData(ufunc__nct_kurtosis_excess_loops, ufunc__nct_kurtosis_excess_data, ufunc__nct_kurtosis_excess_types, 2, 2, 1, 0, '_nct_kurtosis_excess', ufunc__nct_kurtosis_excess_doc, 0)
2971
2914
 
2972
2915
  cdef np.PyUFuncGenericFunction ufunc__nct_mean_loops[2]
2973
2916
  cdef void *ufunc__nct_mean_ptr[4]
@@ -3002,7 +2945,7 @@ ufunc__nct_mean_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_mean_dou
3002
2945
  ufunc__nct_mean_ptr[2*1+1] = <void*>(<char*>"_nct_mean")
3003
2946
  ufunc__nct_mean_data[0] = &ufunc__nct_mean_ptr[2*0]
3004
2947
  ufunc__nct_mean_data[1] = &ufunc__nct_mean_ptr[2*1]
3005
- _nct_mean = np.PyUFunc_FromFuncAndData(ufunc__nct_mean_loops, ufunc__nct_mean_data, ufunc__nct_mean_types, 2, 2, 1, 0, "_nct_mean", ufunc__nct_mean_doc, 0)
2948
+ _nct_mean = np.PyUFunc_FromFuncAndData(ufunc__nct_mean_loops, ufunc__nct_mean_data, ufunc__nct_mean_types, 2, 2, 1, 0, '_nct_mean', ufunc__nct_mean_doc, 0)
3006
2949
 
3007
2950
  cdef np.PyUFuncGenericFunction ufunc__nct_pdf_loops[2]
3008
2951
  cdef void *ufunc__nct_pdf_ptr[4]
@@ -3041,46 +2984,7 @@ ufunc__nct_pdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_pdf_doubl
3041
2984
  ufunc__nct_pdf_ptr[2*1+1] = <void*>(<char*>"_nct_pdf")
3042
2985
  ufunc__nct_pdf_data[0] = &ufunc__nct_pdf_ptr[2*0]
3043
2986
  ufunc__nct_pdf_data[1] = &ufunc__nct_pdf_ptr[2*1]
3044
- _nct_pdf = np.PyUFunc_FromFuncAndData(ufunc__nct_pdf_loops, ufunc__nct_pdf_data, ufunc__nct_pdf_types, 2, 3, 1, 0, "_nct_pdf", ufunc__nct_pdf_doc, 0)
3045
-
3046
- cdef np.PyUFuncGenericFunction ufunc__nct_ppf_loops[2]
3047
- cdef void *ufunc__nct_ppf_ptr[4]
3048
- cdef void *ufunc__nct_ppf_data[2]
3049
- cdef char ufunc__nct_ppf_types[8]
3050
- cdef char *ufunc__nct_ppf_doc = (
3051
- "_nct_ppf(x, v, l)\n"
3052
- "\n"
3053
- "Percent point function of noncentral t-distribution.\n"
3054
- "\n"
3055
- "Parameters\n"
3056
- "----------\n"
3057
- "x : array_like\n"
3058
- " Real-valued\n"
3059
- "v : array_like\n"
3060
- " Positive, real-valued parameters\n"
3061
- "l : array_like\n"
3062
- " Real-valued parameters\n"
3063
- "\n"
3064
- "Returns\n"
3065
- "-------\n"
3066
- "scalar or ndarray")
3067
- ufunc__nct_ppf_loops[0] = <np.PyUFuncGenericFunction>loop_f_fff__As_fff_f
3068
- ufunc__nct_ppf_loops[1] = <np.PyUFuncGenericFunction>loop_d_ddd__As_ddd_d
3069
- ufunc__nct_ppf_types[0] = <char>NPY_FLOAT
3070
- ufunc__nct_ppf_types[1] = <char>NPY_FLOAT
3071
- ufunc__nct_ppf_types[2] = <char>NPY_FLOAT
3072
- ufunc__nct_ppf_types[3] = <char>NPY_FLOAT
3073
- ufunc__nct_ppf_types[4] = <char>NPY_DOUBLE
3074
- ufunc__nct_ppf_types[5] = <char>NPY_DOUBLE
3075
- ufunc__nct_ppf_types[6] = <char>NPY_DOUBLE
3076
- ufunc__nct_ppf_types[7] = <char>NPY_DOUBLE
3077
- ufunc__nct_ppf_ptr[2*0] = <void*>scipy.special._ufuncs_cxx._export_nct_ppf_float
3078
- ufunc__nct_ppf_ptr[2*0+1] = <void*>(<char*>"_nct_ppf")
3079
- ufunc__nct_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_ppf_double
3080
- ufunc__nct_ppf_ptr[2*1+1] = <void*>(<char*>"_nct_ppf")
3081
- ufunc__nct_ppf_data[0] = &ufunc__nct_ppf_ptr[2*0]
3082
- ufunc__nct_ppf_data[1] = &ufunc__nct_ppf_ptr[2*1]
3083
- _nct_ppf = np.PyUFunc_FromFuncAndData(ufunc__nct_ppf_loops, ufunc__nct_ppf_data, ufunc__nct_ppf_types, 2, 3, 1, 0, "_nct_ppf", ufunc__nct_ppf_doc, 0)
2987
+ _nct_pdf = np.PyUFunc_FromFuncAndData(ufunc__nct_pdf_loops, ufunc__nct_pdf_data, ufunc__nct_pdf_types, 2, 3, 1, 0, '_nct_pdf', ufunc__nct_pdf_doc, 0)
3084
2988
 
3085
2989
  cdef np.PyUFuncGenericFunction ufunc__nct_sf_loops[2]
3086
2990
  cdef void *ufunc__nct_sf_ptr[4]
@@ -3119,7 +3023,7 @@ ufunc__nct_sf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_sf_double
3119
3023
  ufunc__nct_sf_ptr[2*1+1] = <void*>(<char*>"_nct_sf")
3120
3024
  ufunc__nct_sf_data[0] = &ufunc__nct_sf_ptr[2*0]
3121
3025
  ufunc__nct_sf_data[1] = &ufunc__nct_sf_ptr[2*1]
3122
- _nct_sf = np.PyUFunc_FromFuncAndData(ufunc__nct_sf_loops, ufunc__nct_sf_data, ufunc__nct_sf_types, 2, 3, 1, 0, "_nct_sf", ufunc__nct_sf_doc, 0)
3026
+ _nct_sf = np.PyUFunc_FromFuncAndData(ufunc__nct_sf_loops, ufunc__nct_sf_data, ufunc__nct_sf_types, 2, 3, 1, 0, '_nct_sf', ufunc__nct_sf_doc, 0)
3123
3027
 
3124
3028
  cdef np.PyUFuncGenericFunction ufunc__nct_skewness_loops[2]
3125
3029
  cdef void *ufunc__nct_skewness_ptr[4]
@@ -3154,7 +3058,7 @@ ufunc__nct_skewness_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_skew
3154
3058
  ufunc__nct_skewness_ptr[2*1+1] = <void*>(<char*>"_nct_skewness")
3155
3059
  ufunc__nct_skewness_data[0] = &ufunc__nct_skewness_ptr[2*0]
3156
3060
  ufunc__nct_skewness_data[1] = &ufunc__nct_skewness_ptr[2*1]
3157
- _nct_skewness = np.PyUFunc_FromFuncAndData(ufunc__nct_skewness_loops, ufunc__nct_skewness_data, ufunc__nct_skewness_types, 2, 2, 1, 0, "_nct_skewness", ufunc__nct_skewness_doc, 0)
3061
+ _nct_skewness = np.PyUFunc_FromFuncAndData(ufunc__nct_skewness_loops, ufunc__nct_skewness_data, ufunc__nct_skewness_types, 2, 2, 1, 0, '_nct_skewness', ufunc__nct_skewness_doc, 0)
3158
3062
 
3159
3063
  cdef np.PyUFuncGenericFunction ufunc__nct_variance_loops[2]
3160
3064
  cdef void *ufunc__nct_variance_ptr[4]
@@ -3189,7 +3093,7 @@ ufunc__nct_variance_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_vari
3189
3093
  ufunc__nct_variance_ptr[2*1+1] = <void*>(<char*>"_nct_variance")
3190
3094
  ufunc__nct_variance_data[0] = &ufunc__nct_variance_ptr[2*0]
3191
3095
  ufunc__nct_variance_data[1] = &ufunc__nct_variance_ptr[2*1]
3192
- _nct_variance = np.PyUFunc_FromFuncAndData(ufunc__nct_variance_loops, ufunc__nct_variance_data, ufunc__nct_variance_types, 2, 2, 1, 0, "_nct_variance", ufunc__nct_variance_doc, 0)
3096
+ _nct_variance = np.PyUFunc_FromFuncAndData(ufunc__nct_variance_loops, ufunc__nct_variance_data, ufunc__nct_variance_types, 2, 2, 1, 0, '_nct_variance', ufunc__nct_variance_doc, 0)
3193
3097
 
3194
3098
  cdef np.PyUFuncGenericFunction ufunc__ncx2_cdf_loops[2]
3195
3099
  cdef void *ufunc__ncx2_cdf_ptr[4]
@@ -3226,7 +3130,7 @@ ufunc__ncx2_cdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncx2_cdf_dou
3226
3130
  ufunc__ncx2_cdf_ptr[2*1+1] = <void*>(<char*>"_ncx2_cdf")
3227
3131
  ufunc__ncx2_cdf_data[0] = &ufunc__ncx2_cdf_ptr[2*0]
3228
3132
  ufunc__ncx2_cdf_data[1] = &ufunc__ncx2_cdf_ptr[2*1]
3229
- _ncx2_cdf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_cdf_loops, ufunc__ncx2_cdf_data, ufunc__ncx2_cdf_types, 2, 3, 1, 0, "_ncx2_cdf", ufunc__ncx2_cdf_doc, 0)
3133
+ _ncx2_cdf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_cdf_loops, ufunc__ncx2_cdf_data, ufunc__ncx2_cdf_types, 2, 3, 1, 0, '_ncx2_cdf', ufunc__ncx2_cdf_doc, 0)
3230
3134
 
3231
3135
  cdef np.PyUFuncGenericFunction ufunc__ncx2_isf_loops[2]
3232
3136
  cdef void *ufunc__ncx2_isf_ptr[4]
@@ -3263,7 +3167,7 @@ ufunc__ncx2_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncx2_isf_dou
3263
3167
  ufunc__ncx2_isf_ptr[2*1+1] = <void*>(<char*>"_ncx2_isf")
3264
3168
  ufunc__ncx2_isf_data[0] = &ufunc__ncx2_isf_ptr[2*0]
3265
3169
  ufunc__ncx2_isf_data[1] = &ufunc__ncx2_isf_ptr[2*1]
3266
- _ncx2_isf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_isf_loops, ufunc__ncx2_isf_data, ufunc__ncx2_isf_types, 2, 3, 1, 0, "_ncx2_isf", ufunc__ncx2_isf_doc, 0)
3170
+ _ncx2_isf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_isf_loops, ufunc__ncx2_isf_data, ufunc__ncx2_isf_types, 2, 3, 1, 0, '_ncx2_isf', ufunc__ncx2_isf_doc, 0)
3267
3171
 
3268
3172
  cdef np.PyUFuncGenericFunction ufunc__ncx2_pdf_loops[2]
3269
3173
  cdef void *ufunc__ncx2_pdf_ptr[4]
@@ -3300,7 +3204,7 @@ ufunc__ncx2_pdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncx2_pdf_dou
3300
3204
  ufunc__ncx2_pdf_ptr[2*1+1] = <void*>(<char*>"_ncx2_pdf")
3301
3205
  ufunc__ncx2_pdf_data[0] = &ufunc__ncx2_pdf_ptr[2*0]
3302
3206
  ufunc__ncx2_pdf_data[1] = &ufunc__ncx2_pdf_ptr[2*1]
3303
- _ncx2_pdf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_pdf_loops, ufunc__ncx2_pdf_data, ufunc__ncx2_pdf_types, 2, 3, 1, 0, "_ncx2_pdf", ufunc__ncx2_pdf_doc, 0)
3207
+ _ncx2_pdf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_pdf_loops, ufunc__ncx2_pdf_data, ufunc__ncx2_pdf_types, 2, 3, 1, 0, '_ncx2_pdf', ufunc__ncx2_pdf_doc, 0)
3304
3208
 
3305
3209
  cdef np.PyUFuncGenericFunction ufunc__ncx2_ppf_loops[2]
3306
3210
  cdef void *ufunc__ncx2_ppf_ptr[4]
@@ -3337,7 +3241,7 @@ ufunc__ncx2_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncx2_ppf_dou
3337
3241
  ufunc__ncx2_ppf_ptr[2*1+1] = <void*>(<char*>"_ncx2_ppf")
3338
3242
  ufunc__ncx2_ppf_data[0] = &ufunc__ncx2_ppf_ptr[2*0]
3339
3243
  ufunc__ncx2_ppf_data[1] = &ufunc__ncx2_ppf_ptr[2*1]
3340
- _ncx2_ppf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_ppf_loops, ufunc__ncx2_ppf_data, ufunc__ncx2_ppf_types, 2, 3, 1, 0, "_ncx2_ppf", ufunc__ncx2_ppf_doc, 0)
3244
+ _ncx2_ppf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_ppf_loops, ufunc__ncx2_ppf_data, ufunc__ncx2_ppf_types, 2, 3, 1, 0, '_ncx2_ppf', ufunc__ncx2_ppf_doc, 0)
3341
3245
 
3342
3246
  cdef np.PyUFuncGenericFunction ufunc__ncx2_sf_loops[2]
3343
3247
  cdef void *ufunc__ncx2_sf_ptr[4]
@@ -3374,7 +3278,7 @@ ufunc__ncx2_sf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncx2_sf_doubl
3374
3278
  ufunc__ncx2_sf_ptr[2*1+1] = <void*>(<char*>"_ncx2_sf")
3375
3279
  ufunc__ncx2_sf_data[0] = &ufunc__ncx2_sf_ptr[2*0]
3376
3280
  ufunc__ncx2_sf_data[1] = &ufunc__ncx2_sf_ptr[2*1]
3377
- _ncx2_sf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_sf_loops, ufunc__ncx2_sf_data, ufunc__ncx2_sf_types, 2, 3, 1, 0, "_ncx2_sf", ufunc__ncx2_sf_doc, 0)
3281
+ _ncx2_sf = np.PyUFunc_FromFuncAndData(ufunc__ncx2_sf_loops, ufunc__ncx2_sf_data, ufunc__ncx2_sf_types, 2, 3, 1, 0, '_ncx2_sf', ufunc__ncx2_sf_doc, 0)
3378
3282
 
3379
3283
  cdef np.PyUFuncGenericFunction ufunc__sf_error_test_function_loops[1]
3380
3284
  cdef void *ufunc__sf_error_test_function_ptr[2]
@@ -3388,7 +3292,7 @@ ufunc__sf_error_test_function_types[1] = <char>NPY_LONG
3388
3292
  ufunc__sf_error_test_function_ptr[2*0] = <void*>_func__sf_error_test_function
3389
3293
  ufunc__sf_error_test_function_ptr[2*0+1] = <void*>(<char*>"_sf_error_test_function")
3390
3294
  ufunc__sf_error_test_function_data[0] = &ufunc__sf_error_test_function_ptr[2*0]
3391
- _sf_error_test_function = np.PyUFunc_FromFuncAndData(ufunc__sf_error_test_function_loops, ufunc__sf_error_test_function_data, ufunc__sf_error_test_function_types, 1, 1, 1, 0, "_sf_error_test_function", ufunc__sf_error_test_function_doc, 0)
3295
+ _sf_error_test_function = np.PyUFunc_FromFuncAndData(ufunc__sf_error_test_function_loops, ufunc__sf_error_test_function_data, ufunc__sf_error_test_function_types, 1, 1, 1, 0, '_sf_error_test_function', ufunc__sf_error_test_function_doc, 0)
3392
3296
 
3393
3297
  cdef np.PyUFuncGenericFunction ufunc__skewnorm_cdf_loops[2]
3394
3298
  cdef void *ufunc__skewnorm_cdf_ptr[4]
@@ -3431,7 +3335,7 @@ ufunc__skewnorm_cdf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_skewnorm
3431
3335
  ufunc__skewnorm_cdf_ptr[2*1+1] = <void*>(<char*>"_skewnorm_cdf")
3432
3336
  ufunc__skewnorm_cdf_data[0] = &ufunc__skewnorm_cdf_ptr[2*0]
3433
3337
  ufunc__skewnorm_cdf_data[1] = &ufunc__skewnorm_cdf_ptr[2*1]
3434
- _skewnorm_cdf = np.PyUFunc_FromFuncAndData(ufunc__skewnorm_cdf_loops, ufunc__skewnorm_cdf_data, ufunc__skewnorm_cdf_types, 2, 4, 1, 0, "_skewnorm_cdf", ufunc__skewnorm_cdf_doc, 0)
3338
+ _skewnorm_cdf = np.PyUFunc_FromFuncAndData(ufunc__skewnorm_cdf_loops, ufunc__skewnorm_cdf_data, ufunc__skewnorm_cdf_types, 2, 4, 1, 0, '_skewnorm_cdf', ufunc__skewnorm_cdf_doc, 0)
3435
3339
 
3436
3340
  cdef np.PyUFuncGenericFunction ufunc__skewnorm_isf_loops[2]
3437
3341
  cdef void *ufunc__skewnorm_isf_ptr[4]
@@ -3474,7 +3378,7 @@ ufunc__skewnorm_isf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_skewnorm
3474
3378
  ufunc__skewnorm_isf_ptr[2*1+1] = <void*>(<char*>"_skewnorm_isf")
3475
3379
  ufunc__skewnorm_isf_data[0] = &ufunc__skewnorm_isf_ptr[2*0]
3476
3380
  ufunc__skewnorm_isf_data[1] = &ufunc__skewnorm_isf_ptr[2*1]
3477
- _skewnorm_isf = np.PyUFunc_FromFuncAndData(ufunc__skewnorm_isf_loops, ufunc__skewnorm_isf_data, ufunc__skewnorm_isf_types, 2, 4, 1, 0, "_skewnorm_isf", ufunc__skewnorm_isf_doc, 0)
3381
+ _skewnorm_isf = np.PyUFunc_FromFuncAndData(ufunc__skewnorm_isf_loops, ufunc__skewnorm_isf_data, ufunc__skewnorm_isf_types, 2, 4, 1, 0, '_skewnorm_isf', ufunc__skewnorm_isf_doc, 0)
3478
3382
 
3479
3383
  cdef np.PyUFuncGenericFunction ufunc__skewnorm_ppf_loops[2]
3480
3384
  cdef void *ufunc__skewnorm_ppf_ptr[4]
@@ -3517,7 +3421,7 @@ ufunc__skewnorm_ppf_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_skewnorm
3517
3421
  ufunc__skewnorm_ppf_ptr[2*1+1] = <void*>(<char*>"_skewnorm_ppf")
3518
3422
  ufunc__skewnorm_ppf_data[0] = &ufunc__skewnorm_ppf_ptr[2*0]
3519
3423
  ufunc__skewnorm_ppf_data[1] = &ufunc__skewnorm_ppf_ptr[2*1]
3520
- _skewnorm_ppf = np.PyUFunc_FromFuncAndData(ufunc__skewnorm_ppf_loops, ufunc__skewnorm_ppf_data, ufunc__skewnorm_ppf_types, 2, 4, 1, 0, "_skewnorm_ppf", ufunc__skewnorm_ppf_doc, 0)
3424
+ _skewnorm_ppf = np.PyUFunc_FromFuncAndData(ufunc__skewnorm_ppf_loops, ufunc__skewnorm_ppf_data, ufunc__skewnorm_ppf_types, 2, 4, 1, 0, '_skewnorm_ppf', ufunc__skewnorm_ppf_doc, 0)
3521
3425
 
3522
3426
  cdef np.PyUFuncGenericFunction ufunc__smirnovc_loops[3]
3523
3427
  cdef void *ufunc__smirnovc_ptr[6]
@@ -3547,7 +3451,7 @@ ufunc__smirnovc_ptr[2*2+1] = <void*>(<char*>"_smirnovc")
3547
3451
  ufunc__smirnovc_data[0] = &ufunc__smirnovc_ptr[2*0]
3548
3452
  ufunc__smirnovc_data[1] = &ufunc__smirnovc_ptr[2*1]
3549
3453
  ufunc__smirnovc_data[2] = &ufunc__smirnovc_ptr[2*2]
3550
- _smirnovc = np.PyUFunc_FromFuncAndData(ufunc__smirnovc_loops, ufunc__smirnovc_data, ufunc__smirnovc_types, 3, 2, 1, 0, "_smirnovc", ufunc__smirnovc_doc, 0)
3454
+ _smirnovc = np.PyUFunc_FromFuncAndData(ufunc__smirnovc_loops, ufunc__smirnovc_data, ufunc__smirnovc_types, 3, 2, 1, 0, '_smirnovc', ufunc__smirnovc_doc, 0)
3551
3455
 
3552
3456
  cdef np.PyUFuncGenericFunction ufunc__smirnovci_loops[3]
3553
3457
  cdef void *ufunc__smirnovci_ptr[6]
@@ -3576,7 +3480,7 @@ ufunc__smirnovci_ptr[2*2+1] = <void*>(<char*>"_smirnovci")
3576
3480
  ufunc__smirnovci_data[0] = &ufunc__smirnovci_ptr[2*0]
3577
3481
  ufunc__smirnovci_data[1] = &ufunc__smirnovci_ptr[2*1]
3578
3482
  ufunc__smirnovci_data[2] = &ufunc__smirnovci_ptr[2*2]
3579
- _smirnovci = np.PyUFunc_FromFuncAndData(ufunc__smirnovci_loops, ufunc__smirnovci_data, ufunc__smirnovci_types, 3, 2, 1, 0, "_smirnovci", ufunc__smirnovci_doc, 0)
3483
+ _smirnovci = np.PyUFunc_FromFuncAndData(ufunc__smirnovci_loops, ufunc__smirnovci_data, ufunc__smirnovci_types, 3, 2, 1, 0, '_smirnovci', ufunc__smirnovci_doc, 0)
3580
3484
 
3581
3485
  cdef np.PyUFuncGenericFunction ufunc__smirnovp_loops[3]
3582
3486
  cdef void *ufunc__smirnovp_ptr[6]
@@ -3606,7 +3510,7 @@ ufunc__smirnovp_ptr[2*2+1] = <void*>(<char*>"_smirnovp")
3606
3510
  ufunc__smirnovp_data[0] = &ufunc__smirnovp_ptr[2*0]
3607
3511
  ufunc__smirnovp_data[1] = &ufunc__smirnovp_ptr[2*1]
3608
3512
  ufunc__smirnovp_data[2] = &ufunc__smirnovp_ptr[2*2]
3609
- _smirnovp = np.PyUFunc_FromFuncAndData(ufunc__smirnovp_loops, ufunc__smirnovp_data, ufunc__smirnovp_types, 3, 2, 1, 0, "_smirnovp", ufunc__smirnovp_doc, 0)
3513
+ _smirnovp = np.PyUFunc_FromFuncAndData(ufunc__smirnovp_loops, ufunc__smirnovp_data, ufunc__smirnovp_types, 3, 2, 1, 0, '_smirnovp', ufunc__smirnovp_doc, 0)
3610
3514
 
3611
3515
  cdef np.PyUFuncGenericFunction ufunc__stirling2_inexact_loops[2]
3612
3516
  cdef void *ufunc__stirling2_inexact_ptr[4]
@@ -3628,7 +3532,7 @@ ufunc__stirling2_inexact_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export__st
3628
3532
  ufunc__stirling2_inexact_ptr[2*1+1] = <void*>(<char*>"_stirling2_inexact")
3629
3533
  ufunc__stirling2_inexact_data[0] = &ufunc__stirling2_inexact_ptr[2*0]
3630
3534
  ufunc__stirling2_inexact_data[1] = &ufunc__stirling2_inexact_ptr[2*1]
3631
- _stirling2_inexact = np.PyUFunc_FromFuncAndData(ufunc__stirling2_inexact_loops, ufunc__stirling2_inexact_data, ufunc__stirling2_inexact_types, 2, 2, 1, 0, "_stirling2_inexact", ufunc__stirling2_inexact_doc, 0)
3535
+ _stirling2_inexact = np.PyUFunc_FromFuncAndData(ufunc__stirling2_inexact_loops, ufunc__stirling2_inexact_data, ufunc__stirling2_inexact_types, 2, 2, 1, 0, '_stirling2_inexact', ufunc__stirling2_inexact_doc, 0)
3632
3536
 
3633
3537
  cdef np.PyUFuncGenericFunction ufunc__struve_asymp_large_z_loops[1]
3634
3538
  cdef void *ufunc__struve_asymp_large_z_ptr[2]
@@ -3653,7 +3557,7 @@ ufunc__struve_asymp_large_z_types[4] = <char>NPY_DOUBLE
3653
3557
  ufunc__struve_asymp_large_z_ptr[2*0] = <void*>_func_cephes__struve_asymp_large_z
3654
3558
  ufunc__struve_asymp_large_z_ptr[2*0+1] = <void*>(<char*>"_struve_asymp_large_z")
3655
3559
  ufunc__struve_asymp_large_z_data[0] = &ufunc__struve_asymp_large_z_ptr[2*0]
3656
- _struve_asymp_large_z = np.PyUFunc_FromFuncAndData(ufunc__struve_asymp_large_z_loops, ufunc__struve_asymp_large_z_data, ufunc__struve_asymp_large_z_types, 1, 3, 2, 0, "_struve_asymp_large_z", ufunc__struve_asymp_large_z_doc, 0)
3560
+ _struve_asymp_large_z = np.PyUFunc_FromFuncAndData(ufunc__struve_asymp_large_z_loops, ufunc__struve_asymp_large_z_data, ufunc__struve_asymp_large_z_types, 1, 3, 2, 0, '_struve_asymp_large_z', ufunc__struve_asymp_large_z_doc, 0)
3657
3561
 
3658
3562
  cdef np.PyUFuncGenericFunction ufunc__struve_bessel_series_loops[1]
3659
3563
  cdef void *ufunc__struve_bessel_series_ptr[2]
@@ -3678,7 +3582,7 @@ ufunc__struve_bessel_series_types[4] = <char>NPY_DOUBLE
3678
3582
  ufunc__struve_bessel_series_ptr[2*0] = <void*>_func_cephes__struve_bessel_series
3679
3583
  ufunc__struve_bessel_series_ptr[2*0+1] = <void*>(<char*>"_struve_bessel_series")
3680
3584
  ufunc__struve_bessel_series_data[0] = &ufunc__struve_bessel_series_ptr[2*0]
3681
- _struve_bessel_series = np.PyUFunc_FromFuncAndData(ufunc__struve_bessel_series_loops, ufunc__struve_bessel_series_data, ufunc__struve_bessel_series_types, 1, 3, 2, 0, "_struve_bessel_series", ufunc__struve_bessel_series_doc, 0)
3585
+ _struve_bessel_series = np.PyUFunc_FromFuncAndData(ufunc__struve_bessel_series_loops, ufunc__struve_bessel_series_data, ufunc__struve_bessel_series_types, 1, 3, 2, 0, '_struve_bessel_series', ufunc__struve_bessel_series_doc, 0)
3682
3586
 
3683
3587
  cdef np.PyUFuncGenericFunction ufunc__struve_power_series_loops[1]
3684
3588
  cdef void *ufunc__struve_power_series_ptr[2]
@@ -3703,7 +3607,7 @@ ufunc__struve_power_series_types[4] = <char>NPY_DOUBLE
3703
3607
  ufunc__struve_power_series_ptr[2*0] = <void*>_func_cephes__struve_power_series
3704
3608
  ufunc__struve_power_series_ptr[2*0+1] = <void*>(<char*>"_struve_power_series")
3705
3609
  ufunc__struve_power_series_data[0] = &ufunc__struve_power_series_ptr[2*0]
3706
- _struve_power_series = np.PyUFunc_FromFuncAndData(ufunc__struve_power_series_loops, ufunc__struve_power_series_data, ufunc__struve_power_series_types, 1, 3, 2, 0, "_struve_power_series", ufunc__struve_power_series_doc, 0)
3610
+ _struve_power_series = np.PyUFunc_FromFuncAndData(ufunc__struve_power_series_loops, ufunc__struve_power_series_data, ufunc__struve_power_series_types, 1, 3, 2, 0, '_struve_power_series', ufunc__struve_power_series_doc, 0)
3707
3611
 
3708
3612
  cdef np.PyUFuncGenericFunction ufunc_agm_loops[2]
3709
3613
  cdef void *ufunc_agm_ptr[4]
@@ -3778,7 +3682,7 @@ ufunc_agm_ptr[2*1] = <void*>_func_agm
3778
3682
  ufunc_agm_ptr[2*1+1] = <void*>(<char*>"agm")
3779
3683
  ufunc_agm_data[0] = &ufunc_agm_ptr[2*0]
3780
3684
  ufunc_agm_data[1] = &ufunc_agm_ptr[2*1]
3781
- agm = np.PyUFunc_FromFuncAndData(ufunc_agm_loops, ufunc_agm_data, ufunc_agm_types, 2, 2, 1, 0, "agm", ufunc_agm_doc, 0)
3685
+ agm = np.PyUFunc_FromFuncAndData(ufunc_agm_loops, ufunc_agm_data, ufunc_agm_types, 2, 2, 1, 0, 'agm', ufunc_agm_doc, 0)
3782
3686
 
3783
3687
  cdef np.PyUFuncGenericFunction ufunc_bdtr_loops[3]
3784
3688
  cdef void *ufunc_bdtr_ptr[6]
@@ -3851,7 +3755,7 @@ ufunc_bdtr_ptr[2*2+1] = <void*>(<char*>"bdtr")
3851
3755
  ufunc_bdtr_data[0] = &ufunc_bdtr_ptr[2*0]
3852
3756
  ufunc_bdtr_data[1] = &ufunc_bdtr_ptr[2*1]
3853
3757
  ufunc_bdtr_data[2] = &ufunc_bdtr_ptr[2*2]
3854
- bdtr = np.PyUFunc_FromFuncAndData(ufunc_bdtr_loops, ufunc_bdtr_data, ufunc_bdtr_types, 3, 3, 1, 0, "bdtr", ufunc_bdtr_doc, 0)
3758
+ bdtr = np.PyUFunc_FromFuncAndData(ufunc_bdtr_loops, ufunc_bdtr_data, ufunc_bdtr_types, 3, 3, 1, 0, 'bdtr', ufunc_bdtr_doc, 0)
3855
3759
 
3856
3760
  cdef np.PyUFuncGenericFunction ufunc_bdtrc_loops[3]
3857
3761
  cdef void *ufunc_bdtrc_ptr[6]
@@ -3929,7 +3833,7 @@ ufunc_bdtrc_ptr[2*2+1] = <void*>(<char*>"bdtrc")
3929
3833
  ufunc_bdtrc_data[0] = &ufunc_bdtrc_ptr[2*0]
3930
3834
  ufunc_bdtrc_data[1] = &ufunc_bdtrc_ptr[2*1]
3931
3835
  ufunc_bdtrc_data[2] = &ufunc_bdtrc_ptr[2*2]
3932
- bdtrc = np.PyUFunc_FromFuncAndData(ufunc_bdtrc_loops, ufunc_bdtrc_data, ufunc_bdtrc_types, 3, 3, 1, 0, "bdtrc", ufunc_bdtrc_doc, 0)
3836
+ bdtrc = np.PyUFunc_FromFuncAndData(ufunc_bdtrc_loops, ufunc_bdtrc_data, ufunc_bdtrc_types, 3, 3, 1, 0, 'bdtrc', ufunc_bdtrc_doc, 0)
3933
3837
 
3934
3838
  cdef np.PyUFuncGenericFunction ufunc_bdtri_loops[3]
3935
3839
  cdef void *ufunc_bdtri_ptr[6]
@@ -4003,7 +3907,7 @@ ufunc_bdtri_ptr[2*2+1] = <void*>(<char*>"bdtri")
4003
3907
  ufunc_bdtri_data[0] = &ufunc_bdtri_ptr[2*0]
4004
3908
  ufunc_bdtri_data[1] = &ufunc_bdtri_ptr[2*1]
4005
3909
  ufunc_bdtri_data[2] = &ufunc_bdtri_ptr[2*2]
4006
- bdtri = np.PyUFunc_FromFuncAndData(ufunc_bdtri_loops, ufunc_bdtri_data, ufunc_bdtri_types, 3, 3, 1, 0, "bdtri", ufunc_bdtri_doc, 0)
3910
+ bdtri = np.PyUFunc_FromFuncAndData(ufunc_bdtri_loops, ufunc_bdtri_data, ufunc_bdtri_types, 3, 3, 1, 0, 'bdtri', ufunc_bdtri_doc, 0)
4007
3911
 
4008
3912
  cdef np.PyUFuncGenericFunction ufunc_bdtrik_loops[2]
4009
3913
  cdef void *ufunc_bdtrik_ptr[4]
@@ -4073,7 +3977,7 @@ ufunc_bdtrik_ptr[2*1] = <void*>_func_bdtrik
4073
3977
  ufunc_bdtrik_ptr[2*1+1] = <void*>(<char*>"bdtrik")
4074
3978
  ufunc_bdtrik_data[0] = &ufunc_bdtrik_ptr[2*0]
4075
3979
  ufunc_bdtrik_data[1] = &ufunc_bdtrik_ptr[2*1]
4076
- bdtrik = np.PyUFunc_FromFuncAndData(ufunc_bdtrik_loops, ufunc_bdtrik_data, ufunc_bdtrik_types, 2, 3, 1, 0, "bdtrik", ufunc_bdtrik_doc, 0)
3980
+ bdtrik = np.PyUFunc_FromFuncAndData(ufunc_bdtrik_loops, ufunc_bdtrik_data, ufunc_bdtrik_types, 2, 3, 1, 0, 'bdtrik', ufunc_bdtrik_doc, 0)
4077
3981
 
4078
3982
  cdef np.PyUFuncGenericFunction ufunc_bdtrin_loops[2]
4079
3983
  cdef void *ufunc_bdtrin_ptr[4]
@@ -4143,7 +4047,7 @@ ufunc_bdtrin_ptr[2*1] = <void*>_func_bdtrin
4143
4047
  ufunc_bdtrin_ptr[2*1+1] = <void*>(<char*>"bdtrin")
4144
4048
  ufunc_bdtrin_data[0] = &ufunc_bdtrin_ptr[2*0]
4145
4049
  ufunc_bdtrin_data[1] = &ufunc_bdtrin_ptr[2*1]
4146
- bdtrin = np.PyUFunc_FromFuncAndData(ufunc_bdtrin_loops, ufunc_bdtrin_data, ufunc_bdtrin_types, 2, 3, 1, 0, "bdtrin", ufunc_bdtrin_doc, 0)
4050
+ bdtrin = np.PyUFunc_FromFuncAndData(ufunc_bdtrin_loops, ufunc_bdtrin_data, ufunc_bdtrin_types, 2, 3, 1, 0, 'bdtrin', ufunc_bdtrin_doc, 0)
4147
4051
 
4148
4052
  cdef np.PyUFuncGenericFunction ufunc_betainc_loops[2]
4149
4053
  cdef void *ufunc_betainc_ptr[4]
@@ -4199,6 +4103,21 @@ cdef char *ufunc_betainc_doc = (
4199
4103
  "function by multiplying the result of ``betainc(a, b, x)`` by\n"
4200
4104
  "``beta(a, b)``.\n"
4201
4105
  "\n"
4106
+ "``betainc(a, b, x)`` is treated as a two parameter family of functions\n"
4107
+ "of a single variable `x`, rather than as a function of three variables.\n"
4108
+ "This impacts only the limiting cases ``a = 0``, ``b = 0``, ``a = inf``,\n"
4109
+ "``b = inf``.\n"
4110
+ "\n"
4111
+ "In general\n"
4112
+ "\n"
4113
+ ".. math::\n"
4114
+ "\n"
4115
+ " \\lim_{(a, b) \\rightarrow (a_0, b_0)} \\mathrm{betainc}(a, b, x)\n"
4116
+ "\n"
4117
+ "is treated as a pointwise limit in ``x``. Thus for example,\n"
4118
+ "``betainc(0, b, 0)`` equals ``0`` for ``b > 0``, although it would be\n"
4119
+ "indeterminate when considering the simultaneous limit ``(a, x) -> (0+, 0+)``.\n"
4120
+ "\n"
4202
4121
  "This function wraps the ``ibeta`` routine from the\n"
4203
4122
  "Boost Math C++ library [2]_.\n"
4204
4123
  "\n"
@@ -4256,7 +4175,7 @@ ufunc_betainc_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ibeta_double
4256
4175
  ufunc_betainc_ptr[2*1+1] = <void*>(<char*>"betainc")
4257
4176
  ufunc_betainc_data[0] = &ufunc_betainc_ptr[2*0]
4258
4177
  ufunc_betainc_data[1] = &ufunc_betainc_ptr[2*1]
4259
- betainc = np.PyUFunc_FromFuncAndData(ufunc_betainc_loops, ufunc_betainc_data, ufunc_betainc_types, 2, 3, 1, 0, "betainc", ufunc_betainc_doc, 0)
4178
+ betainc = np.PyUFunc_FromFuncAndData(ufunc_betainc_loops, ufunc_betainc_data, ufunc_betainc_types, 2, 3, 1, 0, 'betainc', ufunc_betainc_doc, 0)
4260
4179
 
4261
4180
  cdef np.PyUFuncGenericFunction ufunc_betaincc_loops[2]
4262
4181
  cdef void *ufunc_betaincc_ptr[4]
@@ -4306,6 +4225,11 @@ cdef char *ufunc_betaincc_doc = (
4306
4225
  "-----\n"
4307
4226
  ".. versionadded:: 1.11.0\n"
4308
4227
  "\n"
4228
+ "Like `betainc`, ``betaincc(a, b, x)`` is treated as a two parameter\n"
4229
+ "family of functions of a single variable `x`, rather than as a function of\n"
4230
+ "three variables. See the `betainc` docstring for more info on how this\n"
4231
+ "impacts limiting cases.\n"
4232
+ "\n"
4309
4233
  "This function wraps the ``ibetac`` routine from the\n"
4310
4234
  "Boost Math C++ library [2]_.\n"
4311
4235
  "\n"
@@ -4345,7 +4269,7 @@ ufunc_betaincc_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ibetac_double
4345
4269
  ufunc_betaincc_ptr[2*1+1] = <void*>(<char*>"betaincc")
4346
4270
  ufunc_betaincc_data[0] = &ufunc_betaincc_ptr[2*0]
4347
4271
  ufunc_betaincc_data[1] = &ufunc_betaincc_ptr[2*1]
4348
- betaincc = np.PyUFunc_FromFuncAndData(ufunc_betaincc_loops, ufunc_betaincc_data, ufunc_betaincc_types, 2, 3, 1, 0, "betaincc", ufunc_betaincc_doc, 0)
4272
+ betaincc = np.PyUFunc_FromFuncAndData(ufunc_betaincc_loops, ufunc_betaincc_data, ufunc_betaincc_types, 2, 3, 1, 0, 'betaincc', ufunc_betaincc_doc, 0)
4349
4273
 
4350
4274
  cdef np.PyUFuncGenericFunction ufunc_betainccinv_loops[2]
4351
4275
  cdef void *ufunc_betainccinv_ptr[4]
@@ -4430,7 +4354,7 @@ ufunc_betainccinv_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ibetac_inv
4430
4354
  ufunc_betainccinv_ptr[2*1+1] = <void*>(<char*>"betainccinv")
4431
4355
  ufunc_betainccinv_data[0] = &ufunc_betainccinv_ptr[2*0]
4432
4356
  ufunc_betainccinv_data[1] = &ufunc_betainccinv_ptr[2*1]
4433
- betainccinv = np.PyUFunc_FromFuncAndData(ufunc_betainccinv_loops, ufunc_betainccinv_data, ufunc_betainccinv_types, 2, 3, 1, 0, "betainccinv", ufunc_betainccinv_doc, 0)
4357
+ betainccinv = np.PyUFunc_FromFuncAndData(ufunc_betainccinv_loops, ufunc_betainccinv_data, ufunc_betainccinv_types, 2, 3, 1, 0, 'betainccinv', ufunc_betainccinv_doc, 0)
4434
4358
 
4435
4359
  cdef np.PyUFuncGenericFunction ufunc_betaincinv_loops[2]
4436
4360
  cdef void *ufunc_betaincinv_ptr[4]
@@ -4513,7 +4437,7 @@ ufunc_betaincinv_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ibeta_inv_d
4513
4437
  ufunc_betaincinv_ptr[2*1+1] = <void*>(<char*>"betaincinv")
4514
4438
  ufunc_betaincinv_data[0] = &ufunc_betaincinv_ptr[2*0]
4515
4439
  ufunc_betaincinv_data[1] = &ufunc_betaincinv_ptr[2*1]
4516
- betaincinv = np.PyUFunc_FromFuncAndData(ufunc_betaincinv_loops, ufunc_betaincinv_data, ufunc_betaincinv_types, 2, 3, 1, 0, "betaincinv", ufunc_betaincinv_doc, 0)
4440
+ betaincinv = np.PyUFunc_FromFuncAndData(ufunc_betaincinv_loops, ufunc_betaincinv_data, ufunc_betaincinv_types, 2, 3, 1, 0, 'betaincinv', ufunc_betaincinv_doc, 0)
4517
4441
 
4518
4442
  cdef np.PyUFuncGenericFunction ufunc_boxcox_loops[2]
4519
4443
  cdef void *ufunc_boxcox_ptr[4]
@@ -4572,7 +4496,7 @@ ufunc_boxcox_ptr[2*1] = <void*>_func_boxcox
4572
4496
  ufunc_boxcox_ptr[2*1+1] = <void*>(<char*>"boxcox")
4573
4497
  ufunc_boxcox_data[0] = &ufunc_boxcox_ptr[2*0]
4574
4498
  ufunc_boxcox_data[1] = &ufunc_boxcox_ptr[2*1]
4575
- boxcox = np.PyUFunc_FromFuncAndData(ufunc_boxcox_loops, ufunc_boxcox_data, ufunc_boxcox_types, 2, 2, 1, 0, "boxcox", ufunc_boxcox_doc, 0)
4499
+ boxcox = np.PyUFunc_FromFuncAndData(ufunc_boxcox_loops, ufunc_boxcox_data, ufunc_boxcox_types, 2, 2, 1, 0, 'boxcox', ufunc_boxcox_doc, 0)
4576
4500
 
4577
4501
  cdef np.PyUFuncGenericFunction ufunc_boxcox1p_loops[2]
4578
4502
  cdef void *ufunc_boxcox1p_ptr[4]
@@ -4631,7 +4555,7 @@ ufunc_boxcox1p_ptr[2*1] = <void*>_func_boxcox1p
4631
4555
  ufunc_boxcox1p_ptr[2*1+1] = <void*>(<char*>"boxcox1p")
4632
4556
  ufunc_boxcox1p_data[0] = &ufunc_boxcox1p_ptr[2*0]
4633
4557
  ufunc_boxcox1p_data[1] = &ufunc_boxcox1p_ptr[2*1]
4634
- boxcox1p = np.PyUFunc_FromFuncAndData(ufunc_boxcox1p_loops, ufunc_boxcox1p_data, ufunc_boxcox1p_types, 2, 2, 1, 0, "boxcox1p", ufunc_boxcox1p_doc, 0)
4558
+ boxcox1p = np.PyUFunc_FromFuncAndData(ufunc_boxcox1p_loops, ufunc_boxcox1p_data, ufunc_boxcox1p_types, 2, 2, 1, 0, 'boxcox1p', ufunc_boxcox1p_doc, 0)
4635
4559
 
4636
4560
  cdef np.PyUFuncGenericFunction ufunc_btdtria_loops[2]
4637
4561
  cdef void *ufunc_btdtria_ptr[4]
@@ -4702,7 +4626,7 @@ ufunc_btdtria_ptr[2*1] = <void*>_func_btdtria
4702
4626
  ufunc_btdtria_ptr[2*1+1] = <void*>(<char*>"btdtria")
4703
4627
  ufunc_btdtria_data[0] = &ufunc_btdtria_ptr[2*0]
4704
4628
  ufunc_btdtria_data[1] = &ufunc_btdtria_ptr[2*1]
4705
- btdtria = np.PyUFunc_FromFuncAndData(ufunc_btdtria_loops, ufunc_btdtria_data, ufunc_btdtria_types, 2, 3, 1, 0, "btdtria", ufunc_btdtria_doc, 0)
4629
+ btdtria = np.PyUFunc_FromFuncAndData(ufunc_btdtria_loops, ufunc_btdtria_data, ufunc_btdtria_types, 2, 3, 1, 0, 'btdtria', ufunc_btdtria_doc, 0)
4706
4630
 
4707
4631
  cdef np.PyUFuncGenericFunction ufunc_btdtrib_loops[2]
4708
4632
  cdef void *ufunc_btdtrib_ptr[4]
@@ -4773,7 +4697,7 @@ ufunc_btdtrib_ptr[2*1] = <void*>_func_btdtrib
4773
4697
  ufunc_btdtrib_ptr[2*1+1] = <void*>(<char*>"btdtrib")
4774
4698
  ufunc_btdtrib_data[0] = &ufunc_btdtrib_ptr[2*0]
4775
4699
  ufunc_btdtrib_data[1] = &ufunc_btdtrib_ptr[2*1]
4776
- btdtrib = np.PyUFunc_FromFuncAndData(ufunc_btdtrib_loops, ufunc_btdtrib_data, ufunc_btdtrib_types, 2, 3, 1, 0, "btdtrib", ufunc_btdtrib_doc, 0)
4700
+ btdtrib = np.PyUFunc_FromFuncAndData(ufunc_btdtrib_loops, ufunc_btdtrib_data, ufunc_btdtrib_types, 2, 3, 1, 0, 'btdtrib', ufunc_btdtrib_doc, 0)
4777
4701
 
4778
4702
  cdef np.PyUFuncGenericFunction ufunc_chdtr_loops[2]
4779
4703
  cdef void *ufunc_chdtr_ptr[4]
@@ -4847,7 +4771,7 @@ ufunc_chdtr_ptr[2*1] = <void*>_func_xsf_chdtr
4847
4771
  ufunc_chdtr_ptr[2*1+1] = <void*>(<char*>"chdtr")
4848
4772
  ufunc_chdtr_data[0] = &ufunc_chdtr_ptr[2*0]
4849
4773
  ufunc_chdtr_data[1] = &ufunc_chdtr_ptr[2*1]
4850
- chdtr = np.PyUFunc_FromFuncAndData(ufunc_chdtr_loops, ufunc_chdtr_data, ufunc_chdtr_types, 2, 2, 1, 0, "chdtr", ufunc_chdtr_doc, 0)
4774
+ chdtr = np.PyUFunc_FromFuncAndData(ufunc_chdtr_loops, ufunc_chdtr_data, ufunc_chdtr_types, 2, 2, 1, 0, 'chdtr', ufunc_chdtr_doc, 0)
4851
4775
 
4852
4776
  cdef np.PyUFuncGenericFunction ufunc_chdtrc_loops[2]
4853
4777
  cdef void *ufunc_chdtrc_ptr[4]
@@ -4922,7 +4846,7 @@ ufunc_chdtrc_ptr[2*1] = <void*>_func_xsf_chdtrc
4922
4846
  ufunc_chdtrc_ptr[2*1+1] = <void*>(<char*>"chdtrc")
4923
4847
  ufunc_chdtrc_data[0] = &ufunc_chdtrc_ptr[2*0]
4924
4848
  ufunc_chdtrc_data[1] = &ufunc_chdtrc_ptr[2*1]
4925
- chdtrc = np.PyUFunc_FromFuncAndData(ufunc_chdtrc_loops, ufunc_chdtrc_data, ufunc_chdtrc_types, 2, 2, 1, 0, "chdtrc", ufunc_chdtrc_doc, 0)
4849
+ chdtrc = np.PyUFunc_FromFuncAndData(ufunc_chdtrc_loops, ufunc_chdtrc_data, ufunc_chdtrc_types, 2, 2, 1, 0, 'chdtrc', ufunc_chdtrc_doc, 0)
4926
4850
 
4927
4851
  cdef np.PyUFuncGenericFunction ufunc_chdtri_loops[2]
4928
4852
  cdef void *ufunc_chdtri_ptr[4]
@@ -4985,7 +4909,7 @@ ufunc_chdtri_ptr[2*1] = <void*>_func_xsf_chdtri
4985
4909
  ufunc_chdtri_ptr[2*1+1] = <void*>(<char*>"chdtri")
4986
4910
  ufunc_chdtri_data[0] = &ufunc_chdtri_ptr[2*0]
4987
4911
  ufunc_chdtri_data[1] = &ufunc_chdtri_ptr[2*1]
4988
- chdtri = np.PyUFunc_FromFuncAndData(ufunc_chdtri_loops, ufunc_chdtri_data, ufunc_chdtri_types, 2, 2, 1, 0, "chdtri", ufunc_chdtri_doc, 0)
4912
+ chdtri = np.PyUFunc_FromFuncAndData(ufunc_chdtri_loops, ufunc_chdtri_data, ufunc_chdtri_types, 2, 2, 1, 0, 'chdtri', ufunc_chdtri_doc, 0)
4989
4913
 
4990
4914
  cdef np.PyUFuncGenericFunction ufunc_chdtriv_loops[2]
4991
4915
  cdef void *ufunc_chdtriv_ptr[4]
@@ -5048,7 +4972,7 @@ ufunc_chdtriv_ptr[2*1] = <void*>_func_chdtriv
5048
4972
  ufunc_chdtriv_ptr[2*1+1] = <void*>(<char*>"chdtriv")
5049
4973
  ufunc_chdtriv_data[0] = &ufunc_chdtriv_ptr[2*0]
5050
4974
  ufunc_chdtriv_data[1] = &ufunc_chdtriv_ptr[2*1]
5051
- chdtriv = np.PyUFunc_FromFuncAndData(ufunc_chdtriv_loops, ufunc_chdtriv_data, ufunc_chdtriv_types, 2, 2, 1, 0, "chdtriv", ufunc_chdtriv_doc, 0)
4975
+ chdtriv = np.PyUFunc_FromFuncAndData(ufunc_chdtriv_loops, ufunc_chdtriv_data, ufunc_chdtriv_types, 2, 2, 1, 0, 'chdtriv', ufunc_chdtriv_doc, 0)
5052
4976
 
5053
4977
  cdef np.PyUFuncGenericFunction ufunc_chndtr_loops[2]
5054
4978
  cdef void *ufunc_chndtr_ptr[4]
@@ -5105,7 +5029,7 @@ ufunc_chndtr_ptr[2*1] = <void*>_func_chndtr
5105
5029
  ufunc_chndtr_ptr[2*1+1] = <void*>(<char*>"chndtr")
5106
5030
  ufunc_chndtr_data[0] = &ufunc_chndtr_ptr[2*0]
5107
5031
  ufunc_chndtr_data[1] = &ufunc_chndtr_ptr[2*1]
5108
- chndtr = np.PyUFunc_FromFuncAndData(ufunc_chndtr_loops, ufunc_chndtr_data, ufunc_chndtr_types, 2, 3, 1, 0, "chndtr", ufunc_chndtr_doc, 0)
5032
+ chndtr = np.PyUFunc_FromFuncAndData(ufunc_chndtr_loops, ufunc_chndtr_data, ufunc_chndtr_types, 2, 3, 1, 0, 'chndtr', ufunc_chndtr_doc, 0)
5109
5033
 
5110
5034
  cdef np.PyUFuncGenericFunction ufunc_chndtridf_loops[2]
5111
5035
  cdef void *ufunc_chndtridf_ptr[4]
@@ -5154,7 +5078,7 @@ ufunc_chndtridf_ptr[2*1] = <void*>_func_chndtridf
5154
5078
  ufunc_chndtridf_ptr[2*1+1] = <void*>(<char*>"chndtridf")
5155
5079
  ufunc_chndtridf_data[0] = &ufunc_chndtridf_ptr[2*0]
5156
5080
  ufunc_chndtridf_data[1] = &ufunc_chndtridf_ptr[2*1]
5157
- chndtridf = np.PyUFunc_FromFuncAndData(ufunc_chndtridf_loops, ufunc_chndtridf_data, ufunc_chndtridf_types, 2, 3, 1, 0, "chndtridf", ufunc_chndtridf_doc, 0)
5081
+ chndtridf = np.PyUFunc_FromFuncAndData(ufunc_chndtridf_loops, ufunc_chndtridf_data, ufunc_chndtridf_types, 2, 3, 1, 0, 'chndtridf', ufunc_chndtridf_doc, 0)
5158
5082
 
5159
5083
  cdef np.PyUFuncGenericFunction ufunc_chndtrinc_loops[2]
5160
5084
  cdef void *ufunc_chndtrinc_ptr[4]
@@ -5203,7 +5127,7 @@ ufunc_chndtrinc_ptr[2*1] = <void*>_func_chndtrinc
5203
5127
  ufunc_chndtrinc_ptr[2*1+1] = <void*>(<char*>"chndtrinc")
5204
5128
  ufunc_chndtrinc_data[0] = &ufunc_chndtrinc_ptr[2*0]
5205
5129
  ufunc_chndtrinc_data[1] = &ufunc_chndtrinc_ptr[2*1]
5206
- chndtrinc = np.PyUFunc_FromFuncAndData(ufunc_chndtrinc_loops, ufunc_chndtrinc_data, ufunc_chndtrinc_types, 2, 3, 1, 0, "chndtrinc", ufunc_chndtrinc_doc, 0)
5130
+ chndtrinc = np.PyUFunc_FromFuncAndData(ufunc_chndtrinc_loops, ufunc_chndtrinc_data, ufunc_chndtrinc_types, 2, 3, 1, 0, 'chndtrinc', ufunc_chndtrinc_doc, 0)
5207
5131
 
5208
5132
  cdef np.PyUFuncGenericFunction ufunc_chndtrix_loops[2]
5209
5133
  cdef void *ufunc_chndtrix_ptr[4]
@@ -5254,77 +5178,7 @@ ufunc_chndtrix_ptr[2*1] = <void*>_func_chndtrix
5254
5178
  ufunc_chndtrix_ptr[2*1+1] = <void*>(<char*>"chndtrix")
5255
5179
  ufunc_chndtrix_data[0] = &ufunc_chndtrix_ptr[2*0]
5256
5180
  ufunc_chndtrix_data[1] = &ufunc_chndtrix_ptr[2*1]
5257
- chndtrix = np.PyUFunc_FromFuncAndData(ufunc_chndtrix_loops, ufunc_chndtrix_data, ufunc_chndtrix_types, 2, 3, 1, 0, "chndtrix", ufunc_chndtrix_doc, 0)
5258
-
5259
- cdef np.PyUFuncGenericFunction ufunc_dawsn_loops[4]
5260
- cdef void *ufunc_dawsn_ptr[8]
5261
- cdef void *ufunc_dawsn_data[4]
5262
- cdef char ufunc_dawsn_types[8]
5263
- cdef char *ufunc_dawsn_doc = (
5264
- "dawsn(x, out=None)\n"
5265
- "\n"
5266
- "Dawson's integral.\n"
5267
- "\n"
5268
- "Computes::\n"
5269
- "\n"
5270
- " exp(-x**2) * integral(exp(t**2), t=0..x).\n"
5271
- "\n"
5272
- "Parameters\n"
5273
- "----------\n"
5274
- "x : array_like\n"
5275
- " Function parameter.\n"
5276
- "out : ndarray, optional\n"
5277
- " Optional output array for the function values\n"
5278
- "\n"
5279
- "Returns\n"
5280
- "-------\n"
5281
- "y : scalar or ndarray\n"
5282
- " Value of the integral.\n"
5283
- "\n"
5284
- "See Also\n"
5285
- "--------\n"
5286
- "wofz, erf, erfc, erfcx, erfi\n"
5287
- "\n"
5288
- "References\n"
5289
- "----------\n"
5290
- ".. [1] Steven G. Johnson, Faddeeva W function implementation.\n"
5291
- " http://ab-initio.mit.edu/Faddeeva\n"
5292
- "\n"
5293
- "Examples\n"
5294
- "--------\n"
5295
- ">>> import numpy as np\n"
5296
- ">>> from scipy import special\n"
5297
- ">>> import matplotlib.pyplot as plt\n"
5298
- ">>> x = np.linspace(-15, 15, num=1000)\n"
5299
- ">>> plt.plot(x, special.dawsn(x))\n"
5300
- ">>> plt.xlabel('$x$')\n"
5301
- ">>> plt.ylabel('$dawsn(x)$')\n"
5302
- ">>> plt.show()")
5303
- ufunc_dawsn_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
5304
- ufunc_dawsn_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
5305
- ufunc_dawsn_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
5306
- ufunc_dawsn_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
5307
- ufunc_dawsn_types[0] = <char>NPY_FLOAT
5308
- ufunc_dawsn_types[1] = <char>NPY_FLOAT
5309
- ufunc_dawsn_types[2] = <char>NPY_DOUBLE
5310
- ufunc_dawsn_types[3] = <char>NPY_DOUBLE
5311
- ufunc_dawsn_types[4] = <char>NPY_CFLOAT
5312
- ufunc_dawsn_types[5] = <char>NPY_CFLOAT
5313
- ufunc_dawsn_types[6] = <char>NPY_CDOUBLE
5314
- ufunc_dawsn_types[7] = <char>NPY_CDOUBLE
5315
- ufunc_dawsn_ptr[2*0] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_dawsn
5316
- ufunc_dawsn_ptr[2*0+1] = <void*>(<char*>"dawsn")
5317
- ufunc_dawsn_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_dawsn
5318
- ufunc_dawsn_ptr[2*1+1] = <void*>(<char*>"dawsn")
5319
- ufunc_dawsn_ptr[2*2] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_dawsn_complex
5320
- ufunc_dawsn_ptr[2*2+1] = <void*>(<char*>"dawsn")
5321
- ufunc_dawsn_ptr[2*3] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_dawsn_complex
5322
- ufunc_dawsn_ptr[2*3+1] = <void*>(<char*>"dawsn")
5323
- ufunc_dawsn_data[0] = &ufunc_dawsn_ptr[2*0]
5324
- ufunc_dawsn_data[1] = &ufunc_dawsn_ptr[2*1]
5325
- ufunc_dawsn_data[2] = &ufunc_dawsn_ptr[2*2]
5326
- ufunc_dawsn_data[3] = &ufunc_dawsn_ptr[2*3]
5327
- dawsn = np.PyUFunc_FromFuncAndData(ufunc_dawsn_loops, ufunc_dawsn_data, ufunc_dawsn_types, 4, 1, 1, 0, "dawsn", ufunc_dawsn_doc, 0)
5181
+ chndtrix = np.PyUFunc_FromFuncAndData(ufunc_chndtrix_loops, ufunc_chndtrix_data, ufunc_chndtrix_types, 2, 3, 1, 0, 'chndtrix', ufunc_chndtrix_doc, 0)
5328
5182
 
5329
5183
  cdef np.PyUFuncGenericFunction ufunc_elliprc_loops[4]
5330
5184
  cdef void *ufunc_elliprc_ptr[8]
@@ -5470,7 +5324,7 @@ ufunc_elliprc_data[0] = &ufunc_elliprc_ptr[2*0]
5470
5324
  ufunc_elliprc_data[1] = &ufunc_elliprc_ptr[2*1]
5471
5325
  ufunc_elliprc_data[2] = &ufunc_elliprc_ptr[2*2]
5472
5326
  ufunc_elliprc_data[3] = &ufunc_elliprc_ptr[2*3]
5473
- elliprc = np.PyUFunc_FromFuncAndData(ufunc_elliprc_loops, ufunc_elliprc_data, ufunc_elliprc_types, 4, 2, 1, 0, "elliprc", ufunc_elliprc_doc, 0)
5327
+ elliprc = np.PyUFunc_FromFuncAndData(ufunc_elliprc_loops, ufunc_elliprc_data, ufunc_elliprc_types, 4, 2, 1, 0, 'elliprc', ufunc_elliprc_doc, 0)
5474
5328
 
5475
5329
  cdef np.PyUFuncGenericFunction ufunc_elliprd_loops[4]
5476
5330
  cdef void *ufunc_elliprd_ptr[8]
@@ -5597,7 +5451,7 @@ ufunc_elliprd_data[0] = &ufunc_elliprd_ptr[2*0]
5597
5451
  ufunc_elliprd_data[1] = &ufunc_elliprd_ptr[2*1]
5598
5452
  ufunc_elliprd_data[2] = &ufunc_elliprd_ptr[2*2]
5599
5453
  ufunc_elliprd_data[3] = &ufunc_elliprd_ptr[2*3]
5600
- elliprd = np.PyUFunc_FromFuncAndData(ufunc_elliprd_loops, ufunc_elliprd_data, ufunc_elliprd_types, 4, 3, 1, 0, "elliprd", ufunc_elliprd_doc, 0)
5454
+ elliprd = np.PyUFunc_FromFuncAndData(ufunc_elliprd_loops, ufunc_elliprd_data, ufunc_elliprd_types, 4, 3, 1, 0, 'elliprd', ufunc_elliprd_doc, 0)
5601
5455
 
5602
5456
  cdef np.PyUFuncGenericFunction ufunc_elliprf_loops[4]
5603
5457
  cdef void *ufunc_elliprf_ptr[8]
@@ -5722,7 +5576,7 @@ ufunc_elliprf_data[0] = &ufunc_elliprf_ptr[2*0]
5722
5576
  ufunc_elliprf_data[1] = &ufunc_elliprf_ptr[2*1]
5723
5577
  ufunc_elliprf_data[2] = &ufunc_elliprf_ptr[2*2]
5724
5578
  ufunc_elliprf_data[3] = &ufunc_elliprf_ptr[2*3]
5725
- elliprf = np.PyUFunc_FromFuncAndData(ufunc_elliprf_loops, ufunc_elliprf_data, ufunc_elliprf_types, 4, 3, 1, 0, "elliprf", ufunc_elliprf_doc, 0)
5579
+ elliprf = np.PyUFunc_FromFuncAndData(ufunc_elliprf_loops, ufunc_elliprf_data, ufunc_elliprf_types, 4, 3, 1, 0, 'elliprf', ufunc_elliprf_doc, 0)
5726
5580
 
5727
5581
  cdef np.PyUFuncGenericFunction ufunc_elliprg_loops[4]
5728
5582
  cdef void *ufunc_elliprg_ptr[8]
@@ -5867,7 +5721,7 @@ ufunc_elliprg_data[0] = &ufunc_elliprg_ptr[2*0]
5867
5721
  ufunc_elliprg_data[1] = &ufunc_elliprg_ptr[2*1]
5868
5722
  ufunc_elliprg_data[2] = &ufunc_elliprg_ptr[2*2]
5869
5723
  ufunc_elliprg_data[3] = &ufunc_elliprg_ptr[2*3]
5870
- elliprg = np.PyUFunc_FromFuncAndData(ufunc_elliprg_loops, ufunc_elliprg_data, ufunc_elliprg_types, 4, 3, 1, 0, "elliprg", ufunc_elliprg_doc, 0)
5724
+ elliprg = np.PyUFunc_FromFuncAndData(ufunc_elliprg_loops, ufunc_elliprg_data, ufunc_elliprg_types, 4, 3, 1, 0, 'elliprg', ufunc_elliprg_doc, 0)
5871
5725
 
5872
5726
  cdef np.PyUFuncGenericFunction ufunc_elliprj_loops[4]
5873
5727
  cdef void *ufunc_elliprj_ptr[8]
@@ -6036,7 +5890,7 @@ ufunc_elliprj_data[0] = &ufunc_elliprj_ptr[2*0]
6036
5890
  ufunc_elliprj_data[1] = &ufunc_elliprj_ptr[2*1]
6037
5891
  ufunc_elliprj_data[2] = &ufunc_elliprj_ptr[2*2]
6038
5892
  ufunc_elliprj_data[3] = &ufunc_elliprj_ptr[2*3]
6039
- elliprj = np.PyUFunc_FromFuncAndData(ufunc_elliprj_loops, ufunc_elliprj_data, ufunc_elliprj_types, 4, 4, 1, 0, "elliprj", ufunc_elliprj_doc, 0)
5893
+ elliprj = np.PyUFunc_FromFuncAndData(ufunc_elliprj_loops, ufunc_elliprj_data, ufunc_elliprj_types, 4, 4, 1, 0, 'elliprj', ufunc_elliprj_doc, 0)
6040
5894
 
6041
5895
  cdef np.PyUFuncGenericFunction ufunc_entr_loops[2]
6042
5896
  cdef void *ufunc_entr_ptr[4]
@@ -6099,151 +5953,7 @@ ufunc_entr_ptr[2*1] = <void*>_func_entr
6099
5953
  ufunc_entr_ptr[2*1+1] = <void*>(<char*>"entr")
6100
5954
  ufunc_entr_data[0] = &ufunc_entr_ptr[2*0]
6101
5955
  ufunc_entr_data[1] = &ufunc_entr_ptr[2*1]
6102
- entr = np.PyUFunc_FromFuncAndData(ufunc_entr_loops, ufunc_entr_data, ufunc_entr_types, 2, 1, 1, 0, "entr", ufunc_entr_doc, 0)
6103
-
6104
- cdef np.PyUFuncGenericFunction ufunc_erf_loops[4]
6105
- cdef void *ufunc_erf_ptr[8]
6106
- cdef void *ufunc_erf_data[4]
6107
- cdef char ufunc_erf_types[8]
6108
- cdef char *ufunc_erf_doc = (
6109
- "erf(z, out=None)\n"
6110
- "\n"
6111
- "Returns the error function of complex argument.\n"
6112
- "\n"
6113
- "It is defined as ``2/sqrt(pi)*integral(exp(-t**2), t=0..z)``.\n"
6114
- "\n"
6115
- "Parameters\n"
6116
- "----------\n"
6117
- "x : ndarray\n"
6118
- " Input array.\n"
6119
- "out : ndarray, optional\n"
6120
- " Optional output array for the function values\n"
6121
- "\n"
6122
- "Returns\n"
6123
- "-------\n"
6124
- "res : scalar or ndarray\n"
6125
- " The values of the error function at the given points `x`.\n"
6126
- "\n"
6127
- "See Also\n"
6128
- "--------\n"
6129
- "erfc, erfinv, erfcinv, wofz, erfcx, erfi\n"
6130
- "\n"
6131
- "Notes\n"
6132
- "-----\n"
6133
- "The cumulative of the unit normal distribution is given by\n"
6134
- "``Phi(z) = 1/2[1 + erf(z/sqrt(2))]``.\n"
6135
- "\n"
6136
- "References\n"
6137
- "----------\n"
6138
- ".. [1] https://en.wikipedia.org/wiki/Error_function\n"
6139
- ".. [2] Milton Abramowitz and Irene A. Stegun, eds.\n"
6140
- " Handbook of Mathematical Functions with Formulas,\n"
6141
- " Graphs, and Mathematical Tables. New York: Dover,\n"
6142
- " 1972. http://www.math.sfu.ca/~cbm/aands/page_297.htm\n"
6143
- ".. [3] Steven G. Johnson, Faddeeva W function implementation.\n"
6144
- " http://ab-initio.mit.edu/Faddeeva\n"
6145
- "\n"
6146
- "Examples\n"
6147
- "--------\n"
6148
- ">>> import numpy as np\n"
6149
- ">>> from scipy import special\n"
6150
- ">>> import matplotlib.pyplot as plt\n"
6151
- ">>> x = np.linspace(-3, 3)\n"
6152
- ">>> plt.plot(x, special.erf(x))\n"
6153
- ">>> plt.xlabel('$x$')\n"
6154
- ">>> plt.ylabel('$erf(x)$')\n"
6155
- ">>> plt.show()")
6156
- ufunc_erf_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
6157
- ufunc_erf_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
6158
- ufunc_erf_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
6159
- ufunc_erf_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
6160
- ufunc_erf_types[0] = <char>NPY_FLOAT
6161
- ufunc_erf_types[1] = <char>NPY_FLOAT
6162
- ufunc_erf_types[2] = <char>NPY_DOUBLE
6163
- ufunc_erf_types[3] = <char>NPY_DOUBLE
6164
- ufunc_erf_types[4] = <char>NPY_CFLOAT
6165
- ufunc_erf_types[5] = <char>NPY_CFLOAT
6166
- ufunc_erf_types[6] = <char>NPY_CDOUBLE
6167
- ufunc_erf_types[7] = <char>NPY_CDOUBLE
6168
- ufunc_erf_ptr[2*0] = <void*>_func_cephes_erf
6169
- ufunc_erf_ptr[2*0+1] = <void*>(<char*>"erf")
6170
- ufunc_erf_ptr[2*1] = <void*>_func_cephes_erf
6171
- ufunc_erf_ptr[2*1+1] = <void*>(<char*>"erf")
6172
- ufunc_erf_ptr[2*2] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erf
6173
- ufunc_erf_ptr[2*2+1] = <void*>(<char*>"erf")
6174
- ufunc_erf_ptr[2*3] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erf
6175
- ufunc_erf_ptr[2*3+1] = <void*>(<char*>"erf")
6176
- ufunc_erf_data[0] = &ufunc_erf_ptr[2*0]
6177
- ufunc_erf_data[1] = &ufunc_erf_ptr[2*1]
6178
- ufunc_erf_data[2] = &ufunc_erf_ptr[2*2]
6179
- ufunc_erf_data[3] = &ufunc_erf_ptr[2*3]
6180
- erf = np.PyUFunc_FromFuncAndData(ufunc_erf_loops, ufunc_erf_data, ufunc_erf_types, 4, 1, 1, 0, "erf", ufunc_erf_doc, 0)
6181
-
6182
- cdef np.PyUFuncGenericFunction ufunc_erfc_loops[4]
6183
- cdef void *ufunc_erfc_ptr[8]
6184
- cdef void *ufunc_erfc_data[4]
6185
- cdef char ufunc_erfc_types[8]
6186
- cdef char *ufunc_erfc_doc = (
6187
- "erfc(x, out=None)\n"
6188
- "\n"
6189
- "Complementary error function, ``1 - erf(x)``.\n"
6190
- "\n"
6191
- "Parameters\n"
6192
- "----------\n"
6193
- "x : array_like\n"
6194
- " Real or complex valued argument\n"
6195
- "out : ndarray, optional\n"
6196
- " Optional output array for the function results\n"
6197
- "\n"
6198
- "Returns\n"
6199
- "-------\n"
6200
- "scalar or ndarray\n"
6201
- " Values of the complementary error function\n"
6202
- "\n"
6203
- "See Also\n"
6204
- "--------\n"
6205
- "erf, erfi, erfcx, dawsn, wofz\n"
6206
- "\n"
6207
- "References\n"
6208
- "----------\n"
6209
- ".. [1] Steven G. Johnson, Faddeeva W function implementation.\n"
6210
- " http://ab-initio.mit.edu/Faddeeva\n"
6211
- "\n"
6212
- "Examples\n"
6213
- "--------\n"
6214
- ">>> import numpy as np\n"
6215
- ">>> from scipy import special\n"
6216
- ">>> import matplotlib.pyplot as plt\n"
6217
- ">>> x = np.linspace(-3, 3)\n"
6218
- ">>> plt.plot(x, special.erfc(x))\n"
6219
- ">>> plt.xlabel('$x$')\n"
6220
- ">>> plt.ylabel('$erfc(x)$')\n"
6221
- ">>> plt.show()")
6222
- ufunc_erfc_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
6223
- ufunc_erfc_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
6224
- ufunc_erfc_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
6225
- ufunc_erfc_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
6226
- ufunc_erfc_types[0] = <char>NPY_FLOAT
6227
- ufunc_erfc_types[1] = <char>NPY_FLOAT
6228
- ufunc_erfc_types[2] = <char>NPY_DOUBLE
6229
- ufunc_erfc_types[3] = <char>NPY_DOUBLE
6230
- ufunc_erfc_types[4] = <char>NPY_CFLOAT
6231
- ufunc_erfc_types[5] = <char>NPY_CFLOAT
6232
- ufunc_erfc_types[6] = <char>NPY_CDOUBLE
6233
- ufunc_erfc_types[7] = <char>NPY_CDOUBLE
6234
- ufunc_erfc_ptr[2*0] = <void*>_func_cephes_erfc
6235
- ufunc_erfc_ptr[2*0+1] = <void*>(<char*>"erfc")
6236
- ufunc_erfc_ptr[2*1] = <void*>_func_cephes_erfc
6237
- ufunc_erfc_ptr[2*1+1] = <void*>(<char*>"erfc")
6238
- ufunc_erfc_ptr[2*2] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfc_complex
6239
- ufunc_erfc_ptr[2*2+1] = <void*>(<char*>"erfc")
6240
- ufunc_erfc_ptr[2*3] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfc_complex
6241
- ufunc_erfc_ptr[2*3+1] = <void*>(<char*>"erfc")
6242
- ufunc_erfc_data[0] = &ufunc_erfc_ptr[2*0]
6243
- ufunc_erfc_data[1] = &ufunc_erfc_ptr[2*1]
6244
- ufunc_erfc_data[2] = &ufunc_erfc_ptr[2*2]
6245
- ufunc_erfc_data[3] = &ufunc_erfc_ptr[2*3]
6246
- erfc = np.PyUFunc_FromFuncAndData(ufunc_erfc_loops, ufunc_erfc_data, ufunc_erfc_types, 4, 1, 1, 0, "erfc", ufunc_erfc_doc, 0)
5956
+ entr = np.PyUFunc_FromFuncAndData(ufunc_entr_loops, ufunc_entr_data, ufunc_entr_types, 2, 1, 1, 0, 'entr', ufunc_entr_doc, 0)
6247
5957
 
6248
5958
  cdef np.PyUFuncGenericFunction ufunc_erfcinv_loops[2]
6249
5959
  cdef void *ufunc_erfcinv_ptr[4]
@@ -6317,150 +6027,7 @@ ufunc_erfcinv_ptr[2*1] = <void*>_func_cephes_erfcinv
6317
6027
  ufunc_erfcinv_ptr[2*1+1] = <void*>(<char*>"erfcinv")
6318
6028
  ufunc_erfcinv_data[0] = &ufunc_erfcinv_ptr[2*0]
6319
6029
  ufunc_erfcinv_data[1] = &ufunc_erfcinv_ptr[2*1]
6320
- erfcinv = np.PyUFunc_FromFuncAndData(ufunc_erfcinv_loops, ufunc_erfcinv_data, ufunc_erfcinv_types, 2, 1, 1, 0, "erfcinv", ufunc_erfcinv_doc, 0)
6321
-
6322
- cdef np.PyUFuncGenericFunction ufunc_erfcx_loops[4]
6323
- cdef void *ufunc_erfcx_ptr[8]
6324
- cdef void *ufunc_erfcx_data[4]
6325
- cdef char ufunc_erfcx_types[8]
6326
- cdef char *ufunc_erfcx_doc = (
6327
- "erfcx(x, out=None)\n"
6328
- "\n"
6329
- "Scaled complementary error function, ``exp(x**2) * erfc(x)``.\n"
6330
- "\n"
6331
- "Parameters\n"
6332
- "----------\n"
6333
- "x : array_like\n"
6334
- " Real or complex valued argument\n"
6335
- "out : ndarray, optional\n"
6336
- " Optional output array for the function results\n"
6337
- "\n"
6338
- "Returns\n"
6339
- "-------\n"
6340
- "scalar or ndarray\n"
6341
- " Values of the scaled complementary error function\n"
6342
- "\n"
6343
- "\n"
6344
- "See Also\n"
6345
- "--------\n"
6346
- "erf, erfc, erfi, dawsn, wofz\n"
6347
- "\n"
6348
- "Notes\n"
6349
- "-----\n"
6350
- "\n"
6351
- ".. versionadded:: 0.12.0\n"
6352
- "\n"
6353
- "References\n"
6354
- "----------\n"
6355
- ".. [1] Steven G. Johnson, Faddeeva W function implementation.\n"
6356
- " http://ab-initio.mit.edu/Faddeeva\n"
6357
- "\n"
6358
- "Examples\n"
6359
- "--------\n"
6360
- ">>> import numpy as np\n"
6361
- ">>> from scipy import special\n"
6362
- ">>> import matplotlib.pyplot as plt\n"
6363
- ">>> x = np.linspace(-3, 3)\n"
6364
- ">>> plt.plot(x, special.erfcx(x))\n"
6365
- ">>> plt.xlabel('$x$')\n"
6366
- ">>> plt.ylabel('$erfcx(x)$')\n"
6367
- ">>> plt.show()")
6368
- ufunc_erfcx_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
6369
- ufunc_erfcx_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
6370
- ufunc_erfcx_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
6371
- ufunc_erfcx_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
6372
- ufunc_erfcx_types[0] = <char>NPY_FLOAT
6373
- ufunc_erfcx_types[1] = <char>NPY_FLOAT
6374
- ufunc_erfcx_types[2] = <char>NPY_DOUBLE
6375
- ufunc_erfcx_types[3] = <char>NPY_DOUBLE
6376
- ufunc_erfcx_types[4] = <char>NPY_CFLOAT
6377
- ufunc_erfcx_types[5] = <char>NPY_CFLOAT
6378
- ufunc_erfcx_types[6] = <char>NPY_CDOUBLE
6379
- ufunc_erfcx_types[7] = <char>NPY_CDOUBLE
6380
- ufunc_erfcx_ptr[2*0] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfcx
6381
- ufunc_erfcx_ptr[2*0+1] = <void*>(<char*>"erfcx")
6382
- ufunc_erfcx_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfcx
6383
- ufunc_erfcx_ptr[2*1+1] = <void*>(<char*>"erfcx")
6384
- ufunc_erfcx_ptr[2*2] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfcx_complex
6385
- ufunc_erfcx_ptr[2*2+1] = <void*>(<char*>"erfcx")
6386
- ufunc_erfcx_ptr[2*3] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfcx_complex
6387
- ufunc_erfcx_ptr[2*3+1] = <void*>(<char*>"erfcx")
6388
- ufunc_erfcx_data[0] = &ufunc_erfcx_ptr[2*0]
6389
- ufunc_erfcx_data[1] = &ufunc_erfcx_ptr[2*1]
6390
- ufunc_erfcx_data[2] = &ufunc_erfcx_ptr[2*2]
6391
- ufunc_erfcx_data[3] = &ufunc_erfcx_ptr[2*3]
6392
- erfcx = np.PyUFunc_FromFuncAndData(ufunc_erfcx_loops, ufunc_erfcx_data, ufunc_erfcx_types, 4, 1, 1, 0, "erfcx", ufunc_erfcx_doc, 0)
6393
-
6394
- cdef np.PyUFuncGenericFunction ufunc_erfi_loops[4]
6395
- cdef void *ufunc_erfi_ptr[8]
6396
- cdef void *ufunc_erfi_data[4]
6397
- cdef char ufunc_erfi_types[8]
6398
- cdef char *ufunc_erfi_doc = (
6399
- "erfi(z, out=None)\n"
6400
- "\n"
6401
- "Imaginary error function, ``-i erf(i z)``.\n"
6402
- "\n"
6403
- "Parameters\n"
6404
- "----------\n"
6405
- "z : array_like\n"
6406
- " Real or complex valued argument\n"
6407
- "out : ndarray, optional\n"
6408
- " Optional output array for the function results\n"
6409
- "\n"
6410
- "Returns\n"
6411
- "-------\n"
6412
- "scalar or ndarray\n"
6413
- " Values of the imaginary error function\n"
6414
- "\n"
6415
- "See Also\n"
6416
- "--------\n"
6417
- "erf, erfc, erfcx, dawsn, wofz\n"
6418
- "\n"
6419
- "Notes\n"
6420
- "-----\n"
6421
- "\n"
6422
- ".. versionadded:: 0.12.0\n"
6423
- "\n"
6424
- "References\n"
6425
- "----------\n"
6426
- ".. [1] Steven G. Johnson, Faddeeva W function implementation.\n"
6427
- " http://ab-initio.mit.edu/Faddeeva\n"
6428
- "\n"
6429
- "Examples\n"
6430
- "--------\n"
6431
- ">>> import numpy as np\n"
6432
- ">>> from scipy import special\n"
6433
- ">>> import matplotlib.pyplot as plt\n"
6434
- ">>> x = np.linspace(-3, 3)\n"
6435
- ">>> plt.plot(x, special.erfi(x))\n"
6436
- ">>> plt.xlabel('$x$')\n"
6437
- ">>> plt.ylabel('$erfi(x)$')\n"
6438
- ">>> plt.show()")
6439
- ufunc_erfi_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
6440
- ufunc_erfi_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
6441
- ufunc_erfi_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
6442
- ufunc_erfi_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
6443
- ufunc_erfi_types[0] = <char>NPY_FLOAT
6444
- ufunc_erfi_types[1] = <char>NPY_FLOAT
6445
- ufunc_erfi_types[2] = <char>NPY_DOUBLE
6446
- ufunc_erfi_types[3] = <char>NPY_DOUBLE
6447
- ufunc_erfi_types[4] = <char>NPY_CFLOAT
6448
- ufunc_erfi_types[5] = <char>NPY_CFLOAT
6449
- ufunc_erfi_types[6] = <char>NPY_CDOUBLE
6450
- ufunc_erfi_types[7] = <char>NPY_CDOUBLE
6451
- ufunc_erfi_ptr[2*0] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfi
6452
- ufunc_erfi_ptr[2*0+1] = <void*>(<char*>"erfi")
6453
- ufunc_erfi_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfi
6454
- ufunc_erfi_ptr[2*1+1] = <void*>(<char*>"erfi")
6455
- ufunc_erfi_ptr[2*2] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfi_complex
6456
- ufunc_erfi_ptr[2*2+1] = <void*>(<char*>"erfi")
6457
- ufunc_erfi_ptr[2*3] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_erfi_complex
6458
- ufunc_erfi_ptr[2*3+1] = <void*>(<char*>"erfi")
6459
- ufunc_erfi_data[0] = &ufunc_erfi_ptr[2*0]
6460
- ufunc_erfi_data[1] = &ufunc_erfi_ptr[2*1]
6461
- ufunc_erfi_data[2] = &ufunc_erfi_ptr[2*2]
6462
- ufunc_erfi_data[3] = &ufunc_erfi_ptr[2*3]
6463
- erfi = np.PyUFunc_FromFuncAndData(ufunc_erfi_loops, ufunc_erfi_data, ufunc_erfi_types, 4, 1, 1, 0, "erfi", ufunc_erfi_doc, 0)
6030
+ erfcinv = np.PyUFunc_FromFuncAndData(ufunc_erfcinv_loops, ufunc_erfcinv_data, ufunc_erfcinv_types, 2, 1, 1, 0, 'erfcinv', ufunc_erfcinv_doc, 0)
6464
6031
 
6465
6032
  cdef np.PyUFuncGenericFunction ufunc_erfinv_loops[2]
6466
6033
  cdef void *ufunc_erfinv_ptr[4]
@@ -6546,7 +6113,7 @@ ufunc_erfinv_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_erfinv_double
6546
6113
  ufunc_erfinv_ptr[2*1+1] = <void*>(<char*>"erfinv")
6547
6114
  ufunc_erfinv_data[0] = &ufunc_erfinv_ptr[2*0]
6548
6115
  ufunc_erfinv_data[1] = &ufunc_erfinv_ptr[2*1]
6549
- erfinv = np.PyUFunc_FromFuncAndData(ufunc_erfinv_loops, ufunc_erfinv_data, ufunc_erfinv_types, 2, 1, 1, 0, "erfinv", ufunc_erfinv_doc, 0)
6116
+ erfinv = np.PyUFunc_FromFuncAndData(ufunc_erfinv_loops, ufunc_erfinv_data, ufunc_erfinv_types, 2, 1, 1, 0, 'erfinv', ufunc_erfinv_doc, 0)
6550
6117
 
6551
6118
  cdef np.PyUFuncGenericFunction ufunc_eval_chebyc_loops[5]
6552
6119
  cdef void *ufunc_eval_chebyc_ptr[10]
@@ -6644,7 +6211,7 @@ ufunc_eval_chebyc_data[1] = &ufunc_eval_chebyc_ptr[2*1]
6644
6211
  ufunc_eval_chebyc_data[2] = &ufunc_eval_chebyc_ptr[2*2]
6645
6212
  ufunc_eval_chebyc_data[3] = &ufunc_eval_chebyc_ptr[2*3]
6646
6213
  ufunc_eval_chebyc_data[4] = &ufunc_eval_chebyc_ptr[2*4]
6647
- eval_chebyc = np.PyUFunc_FromFuncAndData(ufunc_eval_chebyc_loops, ufunc_eval_chebyc_data, ufunc_eval_chebyc_types, 5, 2, 1, 0, "eval_chebyc", ufunc_eval_chebyc_doc, 0)
6214
+ eval_chebyc = np.PyUFunc_FromFuncAndData(ufunc_eval_chebyc_loops, ufunc_eval_chebyc_data, ufunc_eval_chebyc_types, 5, 2, 1, 0, 'eval_chebyc', ufunc_eval_chebyc_doc, 0)
6648
6215
 
6649
6216
  cdef np.PyUFuncGenericFunction ufunc_eval_chebys_loops[5]
6650
6217
  cdef void *ufunc_eval_chebys_ptr[10]
@@ -6741,7 +6308,7 @@ ufunc_eval_chebys_data[1] = &ufunc_eval_chebys_ptr[2*1]
6741
6308
  ufunc_eval_chebys_data[2] = &ufunc_eval_chebys_ptr[2*2]
6742
6309
  ufunc_eval_chebys_data[3] = &ufunc_eval_chebys_ptr[2*3]
6743
6310
  ufunc_eval_chebys_data[4] = &ufunc_eval_chebys_ptr[2*4]
6744
- eval_chebys = np.PyUFunc_FromFuncAndData(ufunc_eval_chebys_loops, ufunc_eval_chebys_data, ufunc_eval_chebys_types, 5, 2, 1, 0, "eval_chebys", ufunc_eval_chebys_doc, 0)
6311
+ eval_chebys = np.PyUFunc_FromFuncAndData(ufunc_eval_chebys_loops, ufunc_eval_chebys_data, ufunc_eval_chebys_types, 5, 2, 1, 0, 'eval_chebys', ufunc_eval_chebys_doc, 0)
6745
6312
 
6746
6313
  cdef np.PyUFuncGenericFunction ufunc_eval_chebyt_loops[5]
6747
6314
  cdef void *ufunc_eval_chebyt_ptr[10]
@@ -6832,7 +6399,7 @@ ufunc_eval_chebyt_data[1] = &ufunc_eval_chebyt_ptr[2*1]
6832
6399
  ufunc_eval_chebyt_data[2] = &ufunc_eval_chebyt_ptr[2*2]
6833
6400
  ufunc_eval_chebyt_data[3] = &ufunc_eval_chebyt_ptr[2*3]
6834
6401
  ufunc_eval_chebyt_data[4] = &ufunc_eval_chebyt_ptr[2*4]
6835
- eval_chebyt = np.PyUFunc_FromFuncAndData(ufunc_eval_chebyt_loops, ufunc_eval_chebyt_data, ufunc_eval_chebyt_types, 5, 2, 1, 0, "eval_chebyt", ufunc_eval_chebyt_doc, 0)
6402
+ eval_chebyt = np.PyUFunc_FromFuncAndData(ufunc_eval_chebyt_loops, ufunc_eval_chebyt_data, ufunc_eval_chebyt_types, 5, 2, 1, 0, 'eval_chebyt', ufunc_eval_chebyt_doc, 0)
6836
6403
 
6837
6404
  cdef np.PyUFuncGenericFunction ufunc_eval_chebyu_loops[5]
6838
6405
  cdef void *ufunc_eval_chebyu_ptr[10]
@@ -6917,7 +6484,7 @@ ufunc_eval_chebyu_data[1] = &ufunc_eval_chebyu_ptr[2*1]
6917
6484
  ufunc_eval_chebyu_data[2] = &ufunc_eval_chebyu_ptr[2*2]
6918
6485
  ufunc_eval_chebyu_data[3] = &ufunc_eval_chebyu_ptr[2*3]
6919
6486
  ufunc_eval_chebyu_data[4] = &ufunc_eval_chebyu_ptr[2*4]
6920
- eval_chebyu = np.PyUFunc_FromFuncAndData(ufunc_eval_chebyu_loops, ufunc_eval_chebyu_data, ufunc_eval_chebyu_types, 5, 2, 1, 0, "eval_chebyu", ufunc_eval_chebyu_doc, 0)
6487
+ eval_chebyu = np.PyUFunc_FromFuncAndData(ufunc_eval_chebyu_loops, ufunc_eval_chebyu_data, ufunc_eval_chebyu_types, 5, 2, 1, 0, 'eval_chebyu', ufunc_eval_chebyu_doc, 0)
6921
6488
 
6922
6489
  cdef np.PyUFuncGenericFunction ufunc_eval_gegenbauer_loops[5]
6923
6490
  cdef void *ufunc_eval_gegenbauer_ptr[10]
@@ -7009,7 +6576,7 @@ ufunc_eval_gegenbauer_data[1] = &ufunc_eval_gegenbauer_ptr[2*1]
7009
6576
  ufunc_eval_gegenbauer_data[2] = &ufunc_eval_gegenbauer_ptr[2*2]
7010
6577
  ufunc_eval_gegenbauer_data[3] = &ufunc_eval_gegenbauer_ptr[2*3]
7011
6578
  ufunc_eval_gegenbauer_data[4] = &ufunc_eval_gegenbauer_ptr[2*4]
7012
- eval_gegenbauer = np.PyUFunc_FromFuncAndData(ufunc_eval_gegenbauer_loops, ufunc_eval_gegenbauer_data, ufunc_eval_gegenbauer_types, 5, 3, 1, 0, "eval_gegenbauer", ufunc_eval_gegenbauer_doc, 0)
6579
+ eval_gegenbauer = np.PyUFunc_FromFuncAndData(ufunc_eval_gegenbauer_loops, ufunc_eval_gegenbauer_data, ufunc_eval_gegenbauer_types, 5, 3, 1, 0, 'eval_gegenbauer', ufunc_eval_gegenbauer_doc, 0)
7013
6580
 
7014
6581
  cdef np.PyUFuncGenericFunction ufunc_eval_genlaguerre_loops[5]
7015
6582
  cdef void *ufunc_eval_genlaguerre_ptr[10]
@@ -7104,7 +6671,7 @@ ufunc_eval_genlaguerre_data[1] = &ufunc_eval_genlaguerre_ptr[2*1]
7104
6671
  ufunc_eval_genlaguerre_data[2] = &ufunc_eval_genlaguerre_ptr[2*2]
7105
6672
  ufunc_eval_genlaguerre_data[3] = &ufunc_eval_genlaguerre_ptr[2*3]
7106
6673
  ufunc_eval_genlaguerre_data[4] = &ufunc_eval_genlaguerre_ptr[2*4]
7107
- eval_genlaguerre = np.PyUFunc_FromFuncAndData(ufunc_eval_genlaguerre_loops, ufunc_eval_genlaguerre_data, ufunc_eval_genlaguerre_types, 5, 3, 1, 0, "eval_genlaguerre", ufunc_eval_genlaguerre_doc, 0)
6674
+ eval_genlaguerre = np.PyUFunc_FromFuncAndData(ufunc_eval_genlaguerre_loops, ufunc_eval_genlaguerre_data, ufunc_eval_genlaguerre_types, 5, 3, 1, 0, 'eval_genlaguerre', ufunc_eval_genlaguerre_doc, 0)
7108
6675
 
7109
6676
  cdef np.PyUFuncGenericFunction ufunc_eval_hermite_loops[1]
7110
6677
  cdef void *ufunc_eval_hermite_ptr[2]
@@ -7158,7 +6725,7 @@ ufunc_eval_hermite_types[2] = <char>NPY_DOUBLE
7158
6725
  ufunc_eval_hermite_ptr[2*0] = <void*>_func_eval_hermite
7159
6726
  ufunc_eval_hermite_ptr[2*0+1] = <void*>(<char*>"eval_hermite")
7160
6727
  ufunc_eval_hermite_data[0] = &ufunc_eval_hermite_ptr[2*0]
7161
- eval_hermite = np.PyUFunc_FromFuncAndData(ufunc_eval_hermite_loops, ufunc_eval_hermite_data, ufunc_eval_hermite_types, 1, 2, 1, 0, "eval_hermite", ufunc_eval_hermite_doc, 0)
6728
+ eval_hermite = np.PyUFunc_FromFuncAndData(ufunc_eval_hermite_loops, ufunc_eval_hermite_data, ufunc_eval_hermite_types, 1, 2, 1, 0, 'eval_hermite', ufunc_eval_hermite_doc, 0)
7162
6729
 
7163
6730
  cdef np.PyUFuncGenericFunction ufunc_eval_hermitenorm_loops[1]
7164
6731
  cdef void *ufunc_eval_hermitenorm_ptr[2]
@@ -7213,7 +6780,7 @@ ufunc_eval_hermitenorm_types[2] = <char>NPY_DOUBLE
7213
6780
  ufunc_eval_hermitenorm_ptr[2*0] = <void*>_func_eval_hermitenorm
7214
6781
  ufunc_eval_hermitenorm_ptr[2*0+1] = <void*>(<char*>"eval_hermitenorm")
7215
6782
  ufunc_eval_hermitenorm_data[0] = &ufunc_eval_hermitenorm_ptr[2*0]
7216
- eval_hermitenorm = np.PyUFunc_FromFuncAndData(ufunc_eval_hermitenorm_loops, ufunc_eval_hermitenorm_data, ufunc_eval_hermitenorm_types, 1, 2, 1, 0, "eval_hermitenorm", ufunc_eval_hermitenorm_doc, 0)
6783
+ eval_hermitenorm = np.PyUFunc_FromFuncAndData(ufunc_eval_hermitenorm_loops, ufunc_eval_hermitenorm_data, ufunc_eval_hermitenorm_types, 1, 2, 1, 0, 'eval_hermitenorm', ufunc_eval_hermitenorm_doc, 0)
7217
6784
 
7218
6785
  cdef np.PyUFuncGenericFunction ufunc_eval_jacobi_loops[5]
7219
6786
  cdef void *ufunc_eval_jacobi_ptr[10]
@@ -7312,7 +6879,7 @@ ufunc_eval_jacobi_data[1] = &ufunc_eval_jacobi_ptr[2*1]
7312
6879
  ufunc_eval_jacobi_data[2] = &ufunc_eval_jacobi_ptr[2*2]
7313
6880
  ufunc_eval_jacobi_data[3] = &ufunc_eval_jacobi_ptr[2*3]
7314
6881
  ufunc_eval_jacobi_data[4] = &ufunc_eval_jacobi_ptr[2*4]
7315
- eval_jacobi = np.PyUFunc_FromFuncAndData(ufunc_eval_jacobi_loops, ufunc_eval_jacobi_data, ufunc_eval_jacobi_types, 5, 4, 1, 0, "eval_jacobi", ufunc_eval_jacobi_doc, 0)
6882
+ eval_jacobi = np.PyUFunc_FromFuncAndData(ufunc_eval_jacobi_loops, ufunc_eval_jacobi_data, ufunc_eval_jacobi_types, 5, 4, 1, 0, 'eval_jacobi', ufunc_eval_jacobi_doc, 0)
7316
6883
 
7317
6884
  cdef np.PyUFuncGenericFunction ufunc_eval_laguerre_loops[5]
7318
6885
  cdef void *ufunc_eval_laguerre_ptr[10]
@@ -7397,7 +6964,7 @@ ufunc_eval_laguerre_data[1] = &ufunc_eval_laguerre_ptr[2*1]
7397
6964
  ufunc_eval_laguerre_data[2] = &ufunc_eval_laguerre_ptr[2*2]
7398
6965
  ufunc_eval_laguerre_data[3] = &ufunc_eval_laguerre_ptr[2*3]
7399
6966
  ufunc_eval_laguerre_data[4] = &ufunc_eval_laguerre_ptr[2*4]
7400
- eval_laguerre = np.PyUFunc_FromFuncAndData(ufunc_eval_laguerre_loops, ufunc_eval_laguerre_data, ufunc_eval_laguerre_types, 5, 2, 1, 0, "eval_laguerre", ufunc_eval_laguerre_doc, 0)
6967
+ eval_laguerre = np.PyUFunc_FromFuncAndData(ufunc_eval_laguerre_loops, ufunc_eval_laguerre_data, ufunc_eval_laguerre_types, 5, 2, 1, 0, 'eval_laguerre', ufunc_eval_laguerre_doc, 0)
7401
6968
 
7402
6969
  cdef np.PyUFuncGenericFunction ufunc_eval_legendre_loops[5]
7403
6970
  cdef void *ufunc_eval_legendre_ptr[10]
@@ -7519,7 +7086,7 @@ ufunc_eval_legendre_data[1] = &ufunc_eval_legendre_ptr[2*1]
7519
7086
  ufunc_eval_legendre_data[2] = &ufunc_eval_legendre_ptr[2*2]
7520
7087
  ufunc_eval_legendre_data[3] = &ufunc_eval_legendre_ptr[2*3]
7521
7088
  ufunc_eval_legendre_data[4] = &ufunc_eval_legendre_ptr[2*4]
7522
- eval_legendre = np.PyUFunc_FromFuncAndData(ufunc_eval_legendre_loops, ufunc_eval_legendre_data, ufunc_eval_legendre_types, 5, 2, 1, 0, "eval_legendre", ufunc_eval_legendre_doc, 0)
7089
+ eval_legendre = np.PyUFunc_FromFuncAndData(ufunc_eval_legendre_loops, ufunc_eval_legendre_data, ufunc_eval_legendre_types, 5, 2, 1, 0, 'eval_legendre', ufunc_eval_legendre_doc, 0)
7523
7090
 
7524
7091
  cdef np.PyUFuncGenericFunction ufunc_eval_sh_chebyt_loops[5]
7525
7092
  cdef void *ufunc_eval_sh_chebyt_ptr[10]
@@ -7603,7 +7170,7 @@ ufunc_eval_sh_chebyt_data[1] = &ufunc_eval_sh_chebyt_ptr[2*1]
7603
7170
  ufunc_eval_sh_chebyt_data[2] = &ufunc_eval_sh_chebyt_ptr[2*2]
7604
7171
  ufunc_eval_sh_chebyt_data[3] = &ufunc_eval_sh_chebyt_ptr[2*3]
7605
7172
  ufunc_eval_sh_chebyt_data[4] = &ufunc_eval_sh_chebyt_ptr[2*4]
7606
- eval_sh_chebyt = np.PyUFunc_FromFuncAndData(ufunc_eval_sh_chebyt_loops, ufunc_eval_sh_chebyt_data, ufunc_eval_sh_chebyt_types, 5, 2, 1, 0, "eval_sh_chebyt", ufunc_eval_sh_chebyt_doc, 0)
7173
+ eval_sh_chebyt = np.PyUFunc_FromFuncAndData(ufunc_eval_sh_chebyt_loops, ufunc_eval_sh_chebyt_data, ufunc_eval_sh_chebyt_types, 5, 2, 1, 0, 'eval_sh_chebyt', ufunc_eval_sh_chebyt_doc, 0)
7607
7174
 
7608
7175
  cdef np.PyUFuncGenericFunction ufunc_eval_sh_chebyu_loops[5]
7609
7176
  cdef void *ufunc_eval_sh_chebyu_ptr[10]
@@ -7686,7 +7253,7 @@ ufunc_eval_sh_chebyu_data[1] = &ufunc_eval_sh_chebyu_ptr[2*1]
7686
7253
  ufunc_eval_sh_chebyu_data[2] = &ufunc_eval_sh_chebyu_ptr[2*2]
7687
7254
  ufunc_eval_sh_chebyu_data[3] = &ufunc_eval_sh_chebyu_ptr[2*3]
7688
7255
  ufunc_eval_sh_chebyu_data[4] = &ufunc_eval_sh_chebyu_ptr[2*4]
7689
- eval_sh_chebyu = np.PyUFunc_FromFuncAndData(ufunc_eval_sh_chebyu_loops, ufunc_eval_sh_chebyu_data, ufunc_eval_sh_chebyu_types, 5, 2, 1, 0, "eval_sh_chebyu", ufunc_eval_sh_chebyu_doc, 0)
7256
+ eval_sh_chebyu = np.PyUFunc_FromFuncAndData(ufunc_eval_sh_chebyu_loops, ufunc_eval_sh_chebyu_data, ufunc_eval_sh_chebyu_types, 5, 2, 1, 0, 'eval_sh_chebyu', ufunc_eval_sh_chebyu_doc, 0)
7690
7257
 
7691
7258
  cdef np.PyUFuncGenericFunction ufunc_eval_sh_jacobi_loops[5]
7692
7259
  cdef void *ufunc_eval_sh_jacobi_ptr[10]
@@ -7781,7 +7348,7 @@ ufunc_eval_sh_jacobi_data[1] = &ufunc_eval_sh_jacobi_ptr[2*1]
7781
7348
  ufunc_eval_sh_jacobi_data[2] = &ufunc_eval_sh_jacobi_ptr[2*2]
7782
7349
  ufunc_eval_sh_jacobi_data[3] = &ufunc_eval_sh_jacobi_ptr[2*3]
7783
7350
  ufunc_eval_sh_jacobi_data[4] = &ufunc_eval_sh_jacobi_ptr[2*4]
7784
- eval_sh_jacobi = np.PyUFunc_FromFuncAndData(ufunc_eval_sh_jacobi_loops, ufunc_eval_sh_jacobi_data, ufunc_eval_sh_jacobi_types, 5, 4, 1, 0, "eval_sh_jacobi", ufunc_eval_sh_jacobi_doc, 0)
7351
+ eval_sh_jacobi = np.PyUFunc_FromFuncAndData(ufunc_eval_sh_jacobi_loops, ufunc_eval_sh_jacobi_data, ufunc_eval_sh_jacobi_types, 5, 4, 1, 0, 'eval_sh_jacobi', ufunc_eval_sh_jacobi_doc, 0)
7785
7352
 
7786
7353
  cdef np.PyUFuncGenericFunction ufunc_eval_sh_legendre_loops[5]
7787
7354
  cdef void *ufunc_eval_sh_legendre_ptr[10]
@@ -7864,175 +7431,7 @@ ufunc_eval_sh_legendre_data[1] = &ufunc_eval_sh_legendre_ptr[2*1]
7864
7431
  ufunc_eval_sh_legendre_data[2] = &ufunc_eval_sh_legendre_ptr[2*2]
7865
7432
  ufunc_eval_sh_legendre_data[3] = &ufunc_eval_sh_legendre_ptr[2*3]
7866
7433
  ufunc_eval_sh_legendre_data[4] = &ufunc_eval_sh_legendre_ptr[2*4]
7867
- eval_sh_legendre = np.PyUFunc_FromFuncAndData(ufunc_eval_sh_legendre_loops, ufunc_eval_sh_legendre_data, ufunc_eval_sh_legendre_types, 5, 2, 1, 0, "eval_sh_legendre", ufunc_eval_sh_legendre_doc, 0)
7868
-
7869
- cdef np.PyUFuncGenericFunction ufunc_exp10_loops[2]
7870
- cdef void *ufunc_exp10_ptr[4]
7871
- cdef void *ufunc_exp10_data[2]
7872
- cdef char ufunc_exp10_types[4]
7873
- cdef char *ufunc_exp10_doc = (
7874
- "exp10(x, out=None)\n"
7875
- "\n"
7876
- "Compute ``10**x`` element-wise.\n"
7877
- "\n"
7878
- "Parameters\n"
7879
- "----------\n"
7880
- "x : array_like\n"
7881
- " `x` must contain real numbers.\n"
7882
- "out : ndarray, optional\n"
7883
- " Optional output array for the function values\n"
7884
- "\n"
7885
- "Returns\n"
7886
- "-------\n"
7887
- "scalar or ndarray\n"
7888
- " ``10**x``, computed element-wise.\n"
7889
- "\n"
7890
- "Examples\n"
7891
- "--------\n"
7892
- ">>> import numpy as np\n"
7893
- ">>> from scipy.special import exp10\n"
7894
- "\n"
7895
- ">>> exp10(3)\n"
7896
- "1000.0\n"
7897
- ">>> x = np.array([[-1, -0.5, 0], [0.5, 1, 1.5]])\n"
7898
- ">>> exp10(x)\n"
7899
- "array([[ 0.1 , 0.31622777, 1. ],\n"
7900
- " [ 3.16227766, 10. , 31.6227766 ]])")
7901
- ufunc_exp10_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
7902
- ufunc_exp10_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
7903
- ufunc_exp10_types[0] = <char>NPY_FLOAT
7904
- ufunc_exp10_types[1] = <char>NPY_FLOAT
7905
- ufunc_exp10_types[2] = <char>NPY_DOUBLE
7906
- ufunc_exp10_types[3] = <char>NPY_DOUBLE
7907
- ufunc_exp10_ptr[2*0] = <void*>_func_cephes_exp10
7908
- ufunc_exp10_ptr[2*0+1] = <void*>(<char*>"exp10")
7909
- ufunc_exp10_ptr[2*1] = <void*>_func_cephes_exp10
7910
- ufunc_exp10_ptr[2*1+1] = <void*>(<char*>"exp10")
7911
- ufunc_exp10_data[0] = &ufunc_exp10_ptr[2*0]
7912
- ufunc_exp10_data[1] = &ufunc_exp10_ptr[2*1]
7913
- exp10 = np.PyUFunc_FromFuncAndData(ufunc_exp10_loops, ufunc_exp10_data, ufunc_exp10_types, 2, 1, 1, 0, "exp10", ufunc_exp10_doc, 0)
7914
-
7915
- cdef np.PyUFuncGenericFunction ufunc_exp2_loops[2]
7916
- cdef void *ufunc_exp2_ptr[4]
7917
- cdef void *ufunc_exp2_data[2]
7918
- cdef char ufunc_exp2_types[4]
7919
- cdef char *ufunc_exp2_doc = (
7920
- "exp2(x, out=None)\n"
7921
- "\n"
7922
- "Compute ``2**x`` element-wise.\n"
7923
- "\n"
7924
- "Parameters\n"
7925
- "----------\n"
7926
- "x : array_like\n"
7927
- " `x` must contain real numbers.\n"
7928
- "out : ndarray, optional\n"
7929
- " Optional output array for the function values\n"
7930
- "\n"
7931
- "Returns\n"
7932
- "-------\n"
7933
- "scalar or ndarray\n"
7934
- " ``2**x``, computed element-wise.\n"
7935
- "\n"
7936
- "Examples\n"
7937
- "--------\n"
7938
- ">>> import numpy as np\n"
7939
- ">>> from scipy.special import exp2\n"
7940
- "\n"
7941
- ">>> exp2(3)\n"
7942
- "8.0\n"
7943
- ">>> x = np.array([[-1, -0.5, 0], [0.5, 1, 1.5]])\n"
7944
- ">>> exp2(x)\n"
7945
- "array([[ 0.5 , 0.70710678, 1. ],\n"
7946
- " [ 1.41421356, 2. , 2.82842712]])")
7947
- ufunc_exp2_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
7948
- ufunc_exp2_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
7949
- ufunc_exp2_types[0] = <char>NPY_FLOAT
7950
- ufunc_exp2_types[1] = <char>NPY_FLOAT
7951
- ufunc_exp2_types[2] = <char>NPY_DOUBLE
7952
- ufunc_exp2_types[3] = <char>NPY_DOUBLE
7953
- ufunc_exp2_ptr[2*0] = <void*>_func_cephes_exp2
7954
- ufunc_exp2_ptr[2*0+1] = <void*>(<char*>"exp2")
7955
- ufunc_exp2_ptr[2*1] = <void*>_func_cephes_exp2
7956
- ufunc_exp2_ptr[2*1+1] = <void*>(<char*>"exp2")
7957
- ufunc_exp2_data[0] = &ufunc_exp2_ptr[2*0]
7958
- ufunc_exp2_data[1] = &ufunc_exp2_ptr[2*1]
7959
- exp2 = np.PyUFunc_FromFuncAndData(ufunc_exp2_loops, ufunc_exp2_data, ufunc_exp2_types, 2, 1, 1, 0, "exp2", ufunc_exp2_doc, 0)
7960
-
7961
- cdef np.PyUFuncGenericFunction ufunc_expm1_loops[4]
7962
- cdef void *ufunc_expm1_ptr[8]
7963
- cdef void *ufunc_expm1_data[4]
7964
- cdef char ufunc_expm1_types[8]
7965
- cdef char *ufunc_expm1_doc = (
7966
- "expm1(x, out=None)\n"
7967
- "\n"
7968
- "Compute ``exp(x) - 1``.\n"
7969
- "\n"
7970
- "When `x` is near zero, ``exp(x)`` is near 1, so the numerical calculation\n"
7971
- "of ``exp(x) - 1`` can suffer from catastrophic loss of precision.\n"
7972
- "``expm1(x)`` is implemented to avoid the loss of precision that occurs when\n"
7973
- "`x` is near zero.\n"
7974
- "\n"
7975
- "Parameters\n"
7976
- "----------\n"
7977
- "x : array_like\n"
7978
- " `x` must contain real numbers.\n"
7979
- "out : ndarray, optional\n"
7980
- " Optional output array for the function values\n"
7981
- "\n"
7982
- "Returns\n"
7983
- "-------\n"
7984
- "scalar or ndarray\n"
7985
- " ``exp(x) - 1`` computed element-wise.\n"
7986
- "\n"
7987
- "Examples\n"
7988
- "--------\n"
7989
- ">>> import numpy as np\n"
7990
- ">>> from scipy.special import expm1\n"
7991
- "\n"
7992
- ">>> expm1(1.0)\n"
7993
- "1.7182818284590451\n"
7994
- ">>> expm1([-0.2, -0.1, 0, 0.1, 0.2])\n"
7995
- "array([-0.18126925, -0.09516258, 0. , 0.10517092, 0.22140276])\n"
7996
- "\n"
7997
- "The exact value of ``exp(7.5e-13) - 1`` is::\n"
7998
- "\n"
7999
- " 7.5000000000028125000000007031250000001318...*10**-13.\n"
8000
- "\n"
8001
- "Here is what ``expm1(7.5e-13)`` gives:\n"
8002
- "\n"
8003
- ">>> expm1(7.5e-13)\n"
8004
- "7.5000000000028135e-13\n"
8005
- "\n"
8006
- "Compare that to ``exp(7.5e-13) - 1``, where the subtraction results in\n"
8007
- "a \"catastrophic\" loss of precision:\n"
8008
- "\n"
8009
- ">>> np.exp(7.5e-13) - 1\n"
8010
- "7.5006667543675576e-13")
8011
- ufunc_expm1_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
8012
- ufunc_expm1_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
8013
- ufunc_expm1_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
8014
- ufunc_expm1_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
8015
- ufunc_expm1_types[0] = <char>NPY_FLOAT
8016
- ufunc_expm1_types[1] = <char>NPY_FLOAT
8017
- ufunc_expm1_types[2] = <char>NPY_DOUBLE
8018
- ufunc_expm1_types[3] = <char>NPY_DOUBLE
8019
- ufunc_expm1_types[4] = <char>NPY_CFLOAT
8020
- ufunc_expm1_types[5] = <char>NPY_CFLOAT
8021
- ufunc_expm1_types[6] = <char>NPY_CDOUBLE
8022
- ufunc_expm1_types[7] = <char>NPY_CDOUBLE
8023
- ufunc_expm1_ptr[2*0] = <void*>_func_cephes_expm1
8024
- ufunc_expm1_ptr[2*0+1] = <void*>(<char*>"expm1")
8025
- ufunc_expm1_ptr[2*1] = <void*>_func_cephes_expm1
8026
- ufunc_expm1_ptr[2*1+1] = <void*>(<char*>"expm1")
8027
- ufunc_expm1_ptr[2*2] = <void*>_func_cexpm1
8028
- ufunc_expm1_ptr[2*2+1] = <void*>(<char*>"expm1")
8029
- ufunc_expm1_ptr[2*3] = <void*>_func_cexpm1
8030
- ufunc_expm1_ptr[2*3+1] = <void*>(<char*>"expm1")
8031
- ufunc_expm1_data[0] = &ufunc_expm1_ptr[2*0]
8032
- ufunc_expm1_data[1] = &ufunc_expm1_ptr[2*1]
8033
- ufunc_expm1_data[2] = &ufunc_expm1_ptr[2*2]
8034
- ufunc_expm1_data[3] = &ufunc_expm1_ptr[2*3]
8035
- expm1 = np.PyUFunc_FromFuncAndData(ufunc_expm1_loops, ufunc_expm1_data, ufunc_expm1_types, 4, 1, 1, 0, "expm1", ufunc_expm1_doc, 0)
7434
+ eval_sh_legendre = np.PyUFunc_FromFuncAndData(ufunc_eval_sh_legendre_loops, ufunc_eval_sh_legendre_data, ufunc_eval_sh_legendre_types, 5, 2, 1, 0, 'eval_sh_legendre', ufunc_eval_sh_legendre_doc, 0)
8036
7435
 
8037
7436
  cdef np.PyUFuncGenericFunction ufunc_expn_loops[3]
8038
7437
  cdef void *ufunc_expn_ptr[6]
@@ -8125,7 +7524,7 @@ ufunc_expn_ptr[2*2+1] = <void*>(<char*>"expn")
8125
7524
  ufunc_expn_data[0] = &ufunc_expn_ptr[2*0]
8126
7525
  ufunc_expn_data[1] = &ufunc_expn_ptr[2*1]
8127
7526
  ufunc_expn_data[2] = &ufunc_expn_ptr[2*2]
8128
- expn = np.PyUFunc_FromFuncAndData(ufunc_expn_loops, ufunc_expn_data, ufunc_expn_types, 3, 2, 1, 0, "expn", ufunc_expn_doc, 0)
7527
+ expn = np.PyUFunc_FromFuncAndData(ufunc_expn_loops, ufunc_expn_data, ufunc_expn_types, 3, 2, 1, 0, 'expn', ufunc_expn_doc, 0)
8129
7528
 
8130
7529
  cdef np.PyUFuncGenericFunction ufunc_fdtr_loops[2]
8131
7530
  cdef void *ufunc_fdtr_ptr[4]
@@ -8255,7 +7654,7 @@ ufunc_fdtr_ptr[2*1] = <void*>_func_xsf_fdtr
8255
7654
  ufunc_fdtr_ptr[2*1+1] = <void*>(<char*>"fdtr")
8256
7655
  ufunc_fdtr_data[0] = &ufunc_fdtr_ptr[2*0]
8257
7656
  ufunc_fdtr_data[1] = &ufunc_fdtr_ptr[2*1]
8258
- fdtr = np.PyUFunc_FromFuncAndData(ufunc_fdtr_loops, ufunc_fdtr_data, ufunc_fdtr_types, 2, 3, 1, 0, "fdtr", ufunc_fdtr_doc, 0)
7657
+ fdtr = np.PyUFunc_FromFuncAndData(ufunc_fdtr_loops, ufunc_fdtr_data, ufunc_fdtr_types, 2, 3, 1, 0, 'fdtr', ufunc_fdtr_doc, 0)
8259
7658
 
8260
7659
  cdef np.PyUFuncGenericFunction ufunc_fdtrc_loops[2]
8261
7660
  cdef void *ufunc_fdtrc_ptr[4]
@@ -8375,7 +7774,7 @@ ufunc_fdtrc_ptr[2*1] = <void*>_func_xsf_fdtrc
8375
7774
  ufunc_fdtrc_ptr[2*1+1] = <void*>(<char*>"fdtrc")
8376
7775
  ufunc_fdtrc_data[0] = &ufunc_fdtrc_ptr[2*0]
8377
7776
  ufunc_fdtrc_data[1] = &ufunc_fdtrc_ptr[2*1]
8378
- fdtrc = np.PyUFunc_FromFuncAndData(ufunc_fdtrc_loops, ufunc_fdtrc_data, ufunc_fdtrc_types, 2, 3, 1, 0, "fdtrc", ufunc_fdtrc_doc, 0)
7777
+ fdtrc = np.PyUFunc_FromFuncAndData(ufunc_fdtrc_loops, ufunc_fdtrc_data, ufunc_fdtrc_types, 2, 3, 1, 0, 'fdtrc', ufunc_fdtrc_doc, 0)
8379
7778
 
8380
7779
  cdef np.PyUFuncGenericFunction ufunc_fdtri_loops[2]
8381
7780
  cdef void *ufunc_fdtri_ptr[4]
@@ -8511,7 +7910,7 @@ ufunc_fdtri_ptr[2*1] = <void*>_func_xsf_fdtri
8511
7910
  ufunc_fdtri_ptr[2*1+1] = <void*>(<char*>"fdtri")
8512
7911
  ufunc_fdtri_data[0] = &ufunc_fdtri_ptr[2*0]
8513
7912
  ufunc_fdtri_data[1] = &ufunc_fdtri_ptr[2*1]
8514
- fdtri = np.PyUFunc_FromFuncAndData(ufunc_fdtri_loops, ufunc_fdtri_data, ufunc_fdtri_types, 2, 3, 1, 0, "fdtri", ufunc_fdtri_doc, 0)
7913
+ fdtri = np.PyUFunc_FromFuncAndData(ufunc_fdtri_loops, ufunc_fdtri_data, ufunc_fdtri_types, 2, 3, 1, 0, 'fdtri', ufunc_fdtri_doc, 0)
8515
7914
 
8516
7915
  cdef np.PyUFuncGenericFunction ufunc_fdtridfd_loops[2]
8517
7916
  cdef void *ufunc_fdtridfd_ptr[4]
@@ -8578,7 +7977,7 @@ ufunc_fdtridfd_ptr[2*1] = <void*>_func_fdtridfd
8578
7977
  ufunc_fdtridfd_ptr[2*1+1] = <void*>(<char*>"fdtridfd")
8579
7978
  ufunc_fdtridfd_data[0] = &ufunc_fdtridfd_ptr[2*0]
8580
7979
  ufunc_fdtridfd_data[1] = &ufunc_fdtridfd_ptr[2*1]
8581
- fdtridfd = np.PyUFunc_FromFuncAndData(ufunc_fdtridfd_loops, ufunc_fdtridfd_data, ufunc_fdtridfd_types, 2, 3, 1, 0, "fdtridfd", ufunc_fdtridfd_doc, 0)
7980
+ fdtridfd = np.PyUFunc_FromFuncAndData(ufunc_fdtridfd_loops, ufunc_fdtridfd_data, ufunc_fdtridfd_types, 2, 3, 1, 0, 'fdtridfd', ufunc_fdtridfd_doc, 0)
8582
7981
 
8583
7982
  cdef np.PyUFuncGenericFunction ufunc_gdtr_loops[2]
8584
7983
  cdef void *ufunc_gdtr_ptr[4]
@@ -8716,7 +8115,7 @@ ufunc_gdtr_ptr[2*1] = <void*>_func_xsf_gdtr
8716
8115
  ufunc_gdtr_ptr[2*1+1] = <void*>(<char*>"gdtr")
8717
8116
  ufunc_gdtr_data[0] = &ufunc_gdtr_ptr[2*0]
8718
8117
  ufunc_gdtr_data[1] = &ufunc_gdtr_ptr[2*1]
8719
- gdtr = np.PyUFunc_FromFuncAndData(ufunc_gdtr_loops, ufunc_gdtr_data, ufunc_gdtr_types, 2, 3, 1, 0, "gdtr", ufunc_gdtr_doc, 0)
8118
+ gdtr = np.PyUFunc_FromFuncAndData(ufunc_gdtr_loops, ufunc_gdtr_data, ufunc_gdtr_types, 2, 3, 1, 0, 'gdtr', ufunc_gdtr_doc, 0)
8720
8119
 
8721
8120
  cdef np.PyUFuncGenericFunction ufunc_gdtrc_loops[2]
8722
8121
  cdef void *ufunc_gdtrc_ptr[4]
@@ -8854,7 +8253,7 @@ ufunc_gdtrc_ptr[2*1] = <void*>_func_xsf_gdtrc
8854
8253
  ufunc_gdtrc_ptr[2*1+1] = <void*>(<char*>"gdtrc")
8855
8254
  ufunc_gdtrc_data[0] = &ufunc_gdtrc_ptr[2*0]
8856
8255
  ufunc_gdtrc_data[1] = &ufunc_gdtrc_ptr[2*1]
8857
- gdtrc = np.PyUFunc_FromFuncAndData(ufunc_gdtrc_loops, ufunc_gdtrc_data, ufunc_gdtrc_types, 2, 3, 1, 0, "gdtrc", ufunc_gdtrc_doc, 0)
8256
+ gdtrc = np.PyUFunc_FromFuncAndData(ufunc_gdtrc_loops, ufunc_gdtrc_data, ufunc_gdtrc_types, 2, 3, 1, 0, 'gdtrc', ufunc_gdtrc_doc, 0)
8858
8257
 
8859
8258
  cdef np.PyUFuncGenericFunction ufunc_gdtria_loops[2]
8860
8259
  cdef void *ufunc_gdtria_ptr[4]
@@ -8942,7 +8341,7 @@ ufunc_gdtria_ptr[2*1] = <void*>_func_gdtria
8942
8341
  ufunc_gdtria_ptr[2*1+1] = <void*>(<char*>"gdtria")
8943
8342
  ufunc_gdtria_data[0] = &ufunc_gdtria_ptr[2*0]
8944
8343
  ufunc_gdtria_data[1] = &ufunc_gdtria_ptr[2*1]
8945
- gdtria = np.PyUFunc_FromFuncAndData(ufunc_gdtria_loops, ufunc_gdtria_data, ufunc_gdtria_types, 2, 3, 1, 0, "gdtria", ufunc_gdtria_doc, 0)
8344
+ gdtria = np.PyUFunc_FromFuncAndData(ufunc_gdtria_loops, ufunc_gdtria_data, ufunc_gdtria_types, 2, 3, 1, 0, 'gdtria', ufunc_gdtria_doc, 0)
8946
8345
 
8947
8346
  cdef np.PyUFuncGenericFunction ufunc_gdtrib_loops[2]
8948
8347
  cdef void *ufunc_gdtrib_ptr[4]
@@ -9037,7 +8436,7 @@ ufunc_gdtrib_ptr[2*1] = <void*>_func_xsf_gdtrib
9037
8436
  ufunc_gdtrib_ptr[2*1+1] = <void*>(<char*>"gdtrib")
9038
8437
  ufunc_gdtrib_data[0] = &ufunc_gdtrib_ptr[2*0]
9039
8438
  ufunc_gdtrib_data[1] = &ufunc_gdtrib_ptr[2*1]
9040
- gdtrib = np.PyUFunc_FromFuncAndData(ufunc_gdtrib_loops, ufunc_gdtrib_data, ufunc_gdtrib_types, 2, 3, 1, 0, "gdtrib", ufunc_gdtrib_doc, 0)
8439
+ gdtrib = np.PyUFunc_FromFuncAndData(ufunc_gdtrib_loops, ufunc_gdtrib_data, ufunc_gdtrib_types, 2, 3, 1, 0, 'gdtrib', ufunc_gdtrib_doc, 0)
9041
8440
 
9042
8441
  cdef np.PyUFuncGenericFunction ufunc_gdtrix_loops[2]
9043
8442
  cdef void *ufunc_gdtrix_ptr[4]
@@ -9126,7 +8525,7 @@ ufunc_gdtrix_ptr[2*1] = <void*>_func_gdtrix
9126
8525
  ufunc_gdtrix_ptr[2*1+1] = <void*>(<char*>"gdtrix")
9127
8526
  ufunc_gdtrix_data[0] = &ufunc_gdtrix_ptr[2*0]
9128
8527
  ufunc_gdtrix_data[1] = &ufunc_gdtrix_ptr[2*1]
9129
- gdtrix = np.PyUFunc_FromFuncAndData(ufunc_gdtrix_loops, ufunc_gdtrix_data, ufunc_gdtrix_types, 2, 3, 1, 0, "gdtrix", ufunc_gdtrix_doc, 0)
8528
+ gdtrix = np.PyUFunc_FromFuncAndData(ufunc_gdtrix_loops, ufunc_gdtrix_data, ufunc_gdtrix_types, 2, 3, 1, 0, 'gdtrix', ufunc_gdtrix_doc, 0)
9130
8529
 
9131
8530
  cdef np.PyUFuncGenericFunction ufunc_huber_loops[2]
9132
8531
  cdef void *ufunc_huber_ptr[4]
@@ -9251,7 +8650,7 @@ ufunc_huber_ptr[2*1] = <void*>_func_huber
9251
8650
  ufunc_huber_ptr[2*1+1] = <void*>(<char*>"huber")
9252
8651
  ufunc_huber_data[0] = &ufunc_huber_ptr[2*0]
9253
8652
  ufunc_huber_data[1] = &ufunc_huber_ptr[2*1]
9254
- huber = np.PyUFunc_FromFuncAndData(ufunc_huber_loops, ufunc_huber_data, ufunc_huber_types, 2, 2, 1, 0, "huber", ufunc_huber_doc, 0)
8653
+ huber = np.PyUFunc_FromFuncAndData(ufunc_huber_loops, ufunc_huber_data, ufunc_huber_types, 2, 2, 1, 0, 'huber', ufunc_huber_doc, 0)
9255
8654
 
9256
8655
  cdef np.PyUFuncGenericFunction ufunc_hyp0f1_loops[4]
9257
8656
  cdef void *ufunc_hyp0f1_ptr[8]
@@ -9348,7 +8747,7 @@ ufunc_hyp0f1_data[0] = &ufunc_hyp0f1_ptr[2*0]
9348
8747
  ufunc_hyp0f1_data[1] = &ufunc_hyp0f1_ptr[2*1]
9349
8748
  ufunc_hyp0f1_data[2] = &ufunc_hyp0f1_ptr[2*2]
9350
8749
  ufunc_hyp0f1_data[3] = &ufunc_hyp0f1_ptr[2*3]
9351
- hyp0f1 = np.PyUFunc_FromFuncAndData(ufunc_hyp0f1_loops, ufunc_hyp0f1_data, ufunc_hyp0f1_types, 4, 2, 1, 0, "hyp0f1", ufunc_hyp0f1_doc, 0)
8750
+ hyp0f1 = np.PyUFunc_FromFuncAndData(ufunc_hyp0f1_loops, ufunc_hyp0f1_data, ufunc_hyp0f1_types, 4, 2, 1, 0, 'hyp0f1', ufunc_hyp0f1_doc, 0)
9352
8751
 
9353
8752
  cdef np.PyUFuncGenericFunction ufunc_hyp1f1_loops[4]
9354
8753
  cdef void *ufunc_hyp1f1_ptr[8]
@@ -9463,7 +8862,7 @@ ufunc_hyp1f1_data[0] = &ufunc_hyp1f1_ptr[2*0]
9463
8862
  ufunc_hyp1f1_data[1] = &ufunc_hyp1f1_ptr[2*1]
9464
8863
  ufunc_hyp1f1_data[2] = &ufunc_hyp1f1_ptr[2*2]
9465
8864
  ufunc_hyp1f1_data[3] = &ufunc_hyp1f1_ptr[2*3]
9466
- hyp1f1 = np.PyUFunc_FromFuncAndData(ufunc_hyp1f1_loops, ufunc_hyp1f1_data, ufunc_hyp1f1_types, 4, 3, 1, 0, "hyp1f1", ufunc_hyp1f1_doc, 0)
8865
+ hyp1f1 = np.PyUFunc_FromFuncAndData(ufunc_hyp1f1_loops, ufunc_hyp1f1_data, ufunc_hyp1f1_types, 4, 3, 1, 0, 'hyp1f1', ufunc_hyp1f1_doc, 0)
9467
8866
 
9468
8867
  cdef np.PyUFuncGenericFunction ufunc_hyperu_loops[2]
9469
8868
  cdef void *ufunc_hyperu_ptr[4]
@@ -9547,7 +8946,7 @@ ufunc_hyperu_ptr[2*1] = <void*>_func_hyperu
9547
8946
  ufunc_hyperu_ptr[2*1+1] = <void*>(<char*>"hyperu")
9548
8947
  ufunc_hyperu_data[0] = &ufunc_hyperu_ptr[2*0]
9549
8948
  ufunc_hyperu_data[1] = &ufunc_hyperu_ptr[2*1]
9550
- hyperu = np.PyUFunc_FromFuncAndData(ufunc_hyperu_loops, ufunc_hyperu_data, ufunc_hyperu_types, 2, 3, 1, 0, "hyperu", ufunc_hyperu_doc, 0)
8949
+ hyperu = np.PyUFunc_FromFuncAndData(ufunc_hyperu_loops, ufunc_hyperu_data, ufunc_hyperu_types, 2, 3, 1, 0, 'hyperu', ufunc_hyperu_doc, 0)
9551
8950
 
9552
8951
  cdef np.PyUFuncGenericFunction ufunc_inv_boxcox_loops[2]
9553
8952
  cdef void *ufunc_inv_boxcox_ptr[4]
@@ -9602,7 +9001,7 @@ ufunc_inv_boxcox_ptr[2*1] = <void*>_func_inv_boxcox
9602
9001
  ufunc_inv_boxcox_ptr[2*1+1] = <void*>(<char*>"inv_boxcox")
9603
9002
  ufunc_inv_boxcox_data[0] = &ufunc_inv_boxcox_ptr[2*0]
9604
9003
  ufunc_inv_boxcox_data[1] = &ufunc_inv_boxcox_ptr[2*1]
9605
- inv_boxcox = np.PyUFunc_FromFuncAndData(ufunc_inv_boxcox_loops, ufunc_inv_boxcox_data, ufunc_inv_boxcox_types, 2, 2, 1, 0, "inv_boxcox", ufunc_inv_boxcox_doc, 0)
9004
+ inv_boxcox = np.PyUFunc_FromFuncAndData(ufunc_inv_boxcox_loops, ufunc_inv_boxcox_data, ufunc_inv_boxcox_types, 2, 2, 1, 0, 'inv_boxcox', ufunc_inv_boxcox_doc, 0)
9606
9005
 
9607
9006
  cdef np.PyUFuncGenericFunction ufunc_inv_boxcox1p_loops[2]
9608
9007
  cdef void *ufunc_inv_boxcox1p_ptr[4]
@@ -9657,7 +9056,7 @@ ufunc_inv_boxcox1p_ptr[2*1] = <void*>_func_inv_boxcox1p
9657
9056
  ufunc_inv_boxcox1p_ptr[2*1+1] = <void*>(<char*>"inv_boxcox1p")
9658
9057
  ufunc_inv_boxcox1p_data[0] = &ufunc_inv_boxcox1p_ptr[2*0]
9659
9058
  ufunc_inv_boxcox1p_data[1] = &ufunc_inv_boxcox1p_ptr[2*1]
9660
- inv_boxcox1p = np.PyUFunc_FromFuncAndData(ufunc_inv_boxcox1p_loops, ufunc_inv_boxcox1p_data, ufunc_inv_boxcox1p_types, 2, 2, 1, 0, "inv_boxcox1p", ufunc_inv_boxcox1p_doc, 0)
9059
+ inv_boxcox1p = np.PyUFunc_FromFuncAndData(ufunc_inv_boxcox1p_loops, ufunc_inv_boxcox1p_data, ufunc_inv_boxcox1p_types, 2, 2, 1, 0, 'inv_boxcox1p', ufunc_inv_boxcox1p_doc, 0)
9661
9060
 
9662
9061
  cdef np.PyUFuncGenericFunction ufunc_kl_div_loops[2]
9663
9062
  cdef void *ufunc_kl_div_ptr[4]
@@ -9724,7 +9123,7 @@ ufunc_kl_div_ptr[2*1] = <void*>_func_kl_div
9724
9123
  ufunc_kl_div_ptr[2*1+1] = <void*>(<char*>"kl_div")
9725
9124
  ufunc_kl_div_data[0] = &ufunc_kl_div_ptr[2*0]
9726
9125
  ufunc_kl_div_data[1] = &ufunc_kl_div_ptr[2*1]
9727
- kl_div = np.PyUFunc_FromFuncAndData(ufunc_kl_div_loops, ufunc_kl_div_data, ufunc_kl_div_types, 2, 2, 1, 0, "kl_div", ufunc_kl_div_doc, 0)
9126
+ kl_div = np.PyUFunc_FromFuncAndData(ufunc_kl_div_loops, ufunc_kl_div_data, ufunc_kl_div_types, 2, 2, 1, 0, 'kl_div', ufunc_kl_div_doc, 0)
9728
9127
 
9729
9128
  cdef np.PyUFuncGenericFunction ufunc_kn_loops[3]
9730
9129
  cdef void *ufunc_kn_ptr[6]
@@ -9815,7 +9214,7 @@ ufunc_kn_ptr[2*2+1] = <void*>(<char*>"kn")
9815
9214
  ufunc_kn_data[0] = &ufunc_kn_ptr[2*0]
9816
9215
  ufunc_kn_data[1] = &ufunc_kn_ptr[2*1]
9817
9216
  ufunc_kn_data[2] = &ufunc_kn_ptr[2*2]
9818
- kn = np.PyUFunc_FromFuncAndData(ufunc_kn_loops, ufunc_kn_data, ufunc_kn_types, 3, 2, 1, 0, "kn", ufunc_kn_doc, 0)
9217
+ kn = np.PyUFunc_FromFuncAndData(ufunc_kn_loops, ufunc_kn_data, ufunc_kn_types, 3, 2, 1, 0, 'kn', ufunc_kn_doc, 0)
9819
9218
 
9820
9219
  cdef np.PyUFuncGenericFunction ufunc_kolmogi_loops[2]
9821
9220
  cdef void *ufunc_kolmogi_ptr[4]
@@ -9873,7 +9272,7 @@ ufunc_kolmogi_ptr[2*1] = <void*>_func_xsf_kolmogi
9873
9272
  ufunc_kolmogi_ptr[2*1+1] = <void*>(<char*>"kolmogi")
9874
9273
  ufunc_kolmogi_data[0] = &ufunc_kolmogi_ptr[2*0]
9875
9274
  ufunc_kolmogi_data[1] = &ufunc_kolmogi_ptr[2*1]
9876
- kolmogi = np.PyUFunc_FromFuncAndData(ufunc_kolmogi_loops, ufunc_kolmogi_data, ufunc_kolmogi_types, 2, 1, 1, 0, "kolmogi", ufunc_kolmogi_doc, 0)
9275
+ kolmogi = np.PyUFunc_FromFuncAndData(ufunc_kolmogi_loops, ufunc_kolmogi_data, ufunc_kolmogi_types, 2, 1, 1, 0, 'kolmogi', ufunc_kolmogi_doc, 0)
9877
9276
 
9878
9277
  cdef np.PyUFuncGenericFunction ufunc_kolmogorov_loops[2]
9879
9278
  cdef void *ufunc_kolmogorov_ptr[4]
@@ -9984,151 +9383,7 @@ ufunc_kolmogorov_ptr[2*1] = <void*>_func_xsf_kolmogorov
9984
9383
  ufunc_kolmogorov_ptr[2*1+1] = <void*>(<char*>"kolmogorov")
9985
9384
  ufunc_kolmogorov_data[0] = &ufunc_kolmogorov_ptr[2*0]
9986
9385
  ufunc_kolmogorov_data[1] = &ufunc_kolmogorov_ptr[2*1]
9987
- kolmogorov = np.PyUFunc_FromFuncAndData(ufunc_kolmogorov_loops, ufunc_kolmogorov_data, ufunc_kolmogorov_types, 2, 1, 1, 0, "kolmogorov", ufunc_kolmogorov_doc, 0)
9988
-
9989
- cdef np.PyUFuncGenericFunction ufunc_log1p_loops[4]
9990
- cdef void *ufunc_log1p_ptr[8]
9991
- cdef void *ufunc_log1p_data[4]
9992
- cdef char ufunc_log1p_types[8]
9993
- cdef char *ufunc_log1p_doc = (
9994
- "log1p(x, out=None)\n"
9995
- "\n"
9996
- "Calculates log(1 + x) for use when `x` is near zero.\n"
9997
- "\n"
9998
- "Parameters\n"
9999
- "----------\n"
10000
- "x : array_like\n"
10001
- " Real or complex valued input.\n"
10002
- "out : ndarray, optional\n"
10003
- " Optional output array for the function results.\n"
10004
- "\n"
10005
- "Returns\n"
10006
- "-------\n"
10007
- "scalar or ndarray\n"
10008
- " Values of ``log(1 + x)``.\n"
10009
- "\n"
10010
- "See Also\n"
10011
- "--------\n"
10012
- "expm1, cosm1\n"
10013
- "\n"
10014
- "Examples\n"
10015
- "--------\n"
10016
- ">>> import numpy as np\n"
10017
- ">>> import scipy.special as sc\n"
10018
- "\n"
10019
- "It is more accurate than using ``log(1 + x)`` directly for ``x``\n"
10020
- "near 0. Note that in the below example ``1 + 1e-17 == 1`` to\n"
10021
- "double precision.\n"
10022
- "\n"
10023
- ">>> sc.log1p(1e-17)\n"
10024
- "1e-17\n"
10025
- ">>> np.log(1 + 1e-17)\n"
10026
- "0.0")
10027
- ufunc_log1p_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
10028
- ufunc_log1p_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
10029
- ufunc_log1p_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
10030
- ufunc_log1p_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
10031
- ufunc_log1p_types[0] = <char>NPY_FLOAT
10032
- ufunc_log1p_types[1] = <char>NPY_FLOAT
10033
- ufunc_log1p_types[2] = <char>NPY_DOUBLE
10034
- ufunc_log1p_types[3] = <char>NPY_DOUBLE
10035
- ufunc_log1p_types[4] = <char>NPY_CFLOAT
10036
- ufunc_log1p_types[5] = <char>NPY_CFLOAT
10037
- ufunc_log1p_types[6] = <char>NPY_CDOUBLE
10038
- ufunc_log1p_types[7] = <char>NPY_CDOUBLE
10039
- ufunc_log1p_ptr[2*0] = <void*>_func_cephes_log1p
10040
- ufunc_log1p_ptr[2*0+1] = <void*>(<char*>"log1p")
10041
- ufunc_log1p_ptr[2*1] = <void*>_func_cephes_log1p
10042
- ufunc_log1p_ptr[2*1+1] = <void*>(<char*>"log1p")
10043
- ufunc_log1p_ptr[2*2] = <void*>_func_clog1p
10044
- ufunc_log1p_ptr[2*2+1] = <void*>(<char*>"log1p")
10045
- ufunc_log1p_ptr[2*3] = <void*>_func_clog1p
10046
- ufunc_log1p_ptr[2*3+1] = <void*>(<char*>"log1p")
10047
- ufunc_log1p_data[0] = &ufunc_log1p_ptr[2*0]
10048
- ufunc_log1p_data[1] = &ufunc_log1p_ptr[2*1]
10049
- ufunc_log1p_data[2] = &ufunc_log1p_ptr[2*2]
10050
- ufunc_log1p_data[3] = &ufunc_log1p_ptr[2*3]
10051
- log1p = np.PyUFunc_FromFuncAndData(ufunc_log1p_loops, ufunc_log1p_data, ufunc_log1p_types, 4, 1, 1, 0, "log1p", ufunc_log1p_doc, 0)
10052
-
10053
- cdef np.PyUFuncGenericFunction ufunc_log_ndtr_loops[4]
10054
- cdef void *ufunc_log_ndtr_ptr[8]
10055
- cdef void *ufunc_log_ndtr_data[4]
10056
- cdef char ufunc_log_ndtr_types[8]
10057
- cdef char *ufunc_log_ndtr_doc = (
10058
- "log_ndtr(x, out=None)\n"
10059
- "\n"
10060
- "Logarithm of Gaussian cumulative distribution function.\n"
10061
- "\n"
10062
- "Returns the log of the area under the standard Gaussian probability\n"
10063
- "density function, integrated from minus infinity to `x`::\n"
10064
- "\n"
10065
- " log(1/sqrt(2*pi) * integral(exp(-t**2 / 2), t=-inf..x))\n"
10066
- "\n"
10067
- "Parameters\n"
10068
- "----------\n"
10069
- "x : array_like, real or complex\n"
10070
- " Argument\n"
10071
- "out : ndarray, optional\n"
10072
- " Optional output array for the function results\n"
10073
- "\n"
10074
- "Returns\n"
10075
- "-------\n"
10076
- "scalar or ndarray\n"
10077
- " The value of the log of the normal CDF evaluated at `x`\n"
10078
- "\n"
10079
- "See Also\n"
10080
- "--------\n"
10081
- "erf\n"
10082
- "erfc\n"
10083
- "scipy.stats.norm\n"
10084
- "ndtr\n"
10085
- "\n"
10086
- "Examples\n"
10087
- "--------\n"
10088
- ">>> import numpy as np\n"
10089
- ">>> from scipy.special import log_ndtr, ndtr\n"
10090
- "\n"
10091
- "The benefit of ``log_ndtr(x)`` over the naive implementation\n"
10092
- "``np.log(ndtr(x))`` is most evident with moderate to large positive\n"
10093
- "values of ``x``:\n"
10094
- "\n"
10095
- ">>> x = np.array([6, 7, 9, 12, 15, 25])\n"
10096
- ">>> log_ndtr(x)\n"
10097
- "array([-9.86587646e-010, -1.27981254e-012, -1.12858841e-019,\n"
10098
- " -1.77648211e-033, -3.67096620e-051, -3.05669671e-138])\n"
10099
- "\n"
10100
- "The results of the naive calculation for the moderate ``x`` values\n"
10101
- "have only 5 or 6 correct significant digits. For values of ``x``\n"
10102
- "greater than approximately 8.3, the naive expression returns 0:\n"
10103
- "\n"
10104
- ">>> np.log(ndtr(x))\n"
10105
- "array([-9.86587701e-10, -1.27986510e-12, 0.00000000e+00,\n"
10106
- " 0.00000000e+00, 0.00000000e+00, 0.00000000e+00])")
10107
- ufunc_log_ndtr_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
10108
- ufunc_log_ndtr_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
10109
- ufunc_log_ndtr_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
10110
- ufunc_log_ndtr_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
10111
- ufunc_log_ndtr_types[0] = <char>NPY_FLOAT
10112
- ufunc_log_ndtr_types[1] = <char>NPY_FLOAT
10113
- ufunc_log_ndtr_types[2] = <char>NPY_DOUBLE
10114
- ufunc_log_ndtr_types[3] = <char>NPY_DOUBLE
10115
- ufunc_log_ndtr_types[4] = <char>NPY_CFLOAT
10116
- ufunc_log_ndtr_types[5] = <char>NPY_CFLOAT
10117
- ufunc_log_ndtr_types[6] = <char>NPY_CDOUBLE
10118
- ufunc_log_ndtr_types[7] = <char>NPY_CDOUBLE
10119
- ufunc_log_ndtr_ptr[2*0] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_log_ndtr
10120
- ufunc_log_ndtr_ptr[2*0+1] = <void*>(<char*>"log_ndtr")
10121
- ufunc_log_ndtr_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_log_ndtr
10122
- ufunc_log_ndtr_ptr[2*1+1] = <void*>(<char*>"log_ndtr")
10123
- ufunc_log_ndtr_ptr[2*2] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_log_ndtr_complex
10124
- ufunc_log_ndtr_ptr[2*2+1] = <void*>(<char*>"log_ndtr")
10125
- ufunc_log_ndtr_ptr[2*3] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_log_ndtr_complex
10126
- ufunc_log_ndtr_ptr[2*3+1] = <void*>(<char*>"log_ndtr")
10127
- ufunc_log_ndtr_data[0] = &ufunc_log_ndtr_ptr[2*0]
10128
- ufunc_log_ndtr_data[1] = &ufunc_log_ndtr_ptr[2*1]
10129
- ufunc_log_ndtr_data[2] = &ufunc_log_ndtr_ptr[2*2]
10130
- ufunc_log_ndtr_data[3] = &ufunc_log_ndtr_ptr[2*3]
10131
- log_ndtr = np.PyUFunc_FromFuncAndData(ufunc_log_ndtr_loops, ufunc_log_ndtr_data, ufunc_log_ndtr_types, 4, 1, 1, 0, "log_ndtr", ufunc_log_ndtr_doc, 0)
9386
+ kolmogorov = np.PyUFunc_FromFuncAndData(ufunc_kolmogorov_loops, ufunc_kolmogorov_data, ufunc_kolmogorov_types, 2, 1, 1, 0, 'kolmogorov', ufunc_kolmogorov_doc, 0)
10132
9387
 
10133
9388
  cdef np.PyUFuncGenericFunction ufunc_lpmv_loops[2]
10134
9389
  cdef void *ufunc_lpmv_ptr[4]
@@ -10203,7 +9458,7 @@ ufunc_lpmv_ptr[2*1] = <void*>_func_pmv_wrap
10203
9458
  ufunc_lpmv_ptr[2*1+1] = <void*>(<char*>"lpmv")
10204
9459
  ufunc_lpmv_data[0] = &ufunc_lpmv_ptr[2*0]
10205
9460
  ufunc_lpmv_data[1] = &ufunc_lpmv_ptr[2*1]
10206
- lpmv = np.PyUFunc_FromFuncAndData(ufunc_lpmv_loops, ufunc_lpmv_data, ufunc_lpmv_types, 2, 3, 1, 0, "lpmv", ufunc_lpmv_doc, 0)
9461
+ lpmv = np.PyUFunc_FromFuncAndData(ufunc_lpmv_loops, ufunc_lpmv_data, ufunc_lpmv_types, 2, 3, 1, 0, 'lpmv', ufunc_lpmv_doc, 0)
10207
9462
 
10208
9463
  cdef np.PyUFuncGenericFunction ufunc_nbdtr_loops[3]
10209
9464
  cdef void *ufunc_nbdtr_ptr[6]
@@ -10356,7 +9611,7 @@ ufunc_nbdtr_ptr[2*2+1] = <void*>(<char*>"nbdtr")
10356
9611
  ufunc_nbdtr_data[0] = &ufunc_nbdtr_ptr[2*0]
10357
9612
  ufunc_nbdtr_data[1] = &ufunc_nbdtr_ptr[2*1]
10358
9613
  ufunc_nbdtr_data[2] = &ufunc_nbdtr_ptr[2*2]
10359
- nbdtr = np.PyUFunc_FromFuncAndData(ufunc_nbdtr_loops, ufunc_nbdtr_data, ufunc_nbdtr_types, 3, 3, 1, 0, "nbdtr", ufunc_nbdtr_doc, 0)
9614
+ nbdtr = np.PyUFunc_FromFuncAndData(ufunc_nbdtr_loops, ufunc_nbdtr_data, ufunc_nbdtr_types, 3, 3, 1, 0, 'nbdtr', ufunc_nbdtr_doc, 0)
10360
9615
 
10361
9616
  cdef np.PyUFuncGenericFunction ufunc_nbdtrc_loops[3]
10362
9617
  cdef void *ufunc_nbdtrc_ptr[6]
@@ -10509,7 +9764,7 @@ ufunc_nbdtrc_ptr[2*2+1] = <void*>(<char*>"nbdtrc")
10509
9764
  ufunc_nbdtrc_data[0] = &ufunc_nbdtrc_ptr[2*0]
10510
9765
  ufunc_nbdtrc_data[1] = &ufunc_nbdtrc_ptr[2*1]
10511
9766
  ufunc_nbdtrc_data[2] = &ufunc_nbdtrc_ptr[2*2]
10512
- nbdtrc = np.PyUFunc_FromFuncAndData(ufunc_nbdtrc_loops, ufunc_nbdtrc_data, ufunc_nbdtrc_types, 3, 3, 1, 0, "nbdtrc", ufunc_nbdtrc_doc, 0)
9767
+ nbdtrc = np.PyUFunc_FromFuncAndData(ufunc_nbdtrc_loops, ufunc_nbdtrc_data, ufunc_nbdtrc_types, 3, 3, 1, 0, 'nbdtrc', ufunc_nbdtrc_doc, 0)
10513
9768
 
10514
9769
  cdef np.PyUFuncGenericFunction ufunc_nbdtri_loops[3]
10515
9770
  cdef void *ufunc_nbdtri_ptr[6]
@@ -10640,7 +9895,7 @@ ufunc_nbdtri_ptr[2*2+1] = <void*>(<char*>"nbdtri")
10640
9895
  ufunc_nbdtri_data[0] = &ufunc_nbdtri_ptr[2*0]
10641
9896
  ufunc_nbdtri_data[1] = &ufunc_nbdtri_ptr[2*1]
10642
9897
  ufunc_nbdtri_data[2] = &ufunc_nbdtri_ptr[2*2]
10643
- nbdtri = np.PyUFunc_FromFuncAndData(ufunc_nbdtri_loops, ufunc_nbdtri_data, ufunc_nbdtri_types, 3, 3, 1, 0, "nbdtri", ufunc_nbdtri_doc, 0)
9898
+ nbdtri = np.PyUFunc_FromFuncAndData(ufunc_nbdtri_loops, ufunc_nbdtri_data, ufunc_nbdtri_types, 3, 3, 1, 0, 'nbdtri', ufunc_nbdtri_doc, 0)
10644
9899
 
10645
9900
  cdef np.PyUFuncGenericFunction ufunc_nbdtrik_loops[2]
10646
9901
  cdef void *ufunc_nbdtrik_ptr[4]
@@ -10765,7 +10020,7 @@ ufunc_nbdtrik_ptr[2*1] = <void*>_func_nbdtrik
10765
10020
  ufunc_nbdtrik_ptr[2*1+1] = <void*>(<char*>"nbdtrik")
10766
10021
  ufunc_nbdtrik_data[0] = &ufunc_nbdtrik_ptr[2*0]
10767
10022
  ufunc_nbdtrik_data[1] = &ufunc_nbdtrik_ptr[2*1]
10768
- nbdtrik = np.PyUFunc_FromFuncAndData(ufunc_nbdtrik_loops, ufunc_nbdtrik_data, ufunc_nbdtrik_types, 2, 3, 1, 0, "nbdtrik", ufunc_nbdtrik_doc, 0)
10023
+ nbdtrik = np.PyUFunc_FromFuncAndData(ufunc_nbdtrik_loops, ufunc_nbdtrik_data, ufunc_nbdtrik_types, 2, 3, 1, 0, 'nbdtrik', ufunc_nbdtrik_doc, 0)
10769
10024
 
10770
10025
  cdef np.PyUFuncGenericFunction ufunc_nbdtrin_loops[2]
10771
10026
  cdef void *ufunc_nbdtrin_ptr[4]
@@ -10859,7 +10114,7 @@ ufunc_nbdtrin_ptr[2*1] = <void*>_func_nbdtrin
10859
10114
  ufunc_nbdtrin_ptr[2*1+1] = <void*>(<char*>"nbdtrin")
10860
10115
  ufunc_nbdtrin_data[0] = &ufunc_nbdtrin_ptr[2*0]
10861
10116
  ufunc_nbdtrin_data[1] = &ufunc_nbdtrin_ptr[2*1]
10862
- nbdtrin = np.PyUFunc_FromFuncAndData(ufunc_nbdtrin_loops, ufunc_nbdtrin_data, ufunc_nbdtrin_types, 2, 3, 1, 0, "nbdtrin", ufunc_nbdtrin_doc, 0)
10117
+ nbdtrin = np.PyUFunc_FromFuncAndData(ufunc_nbdtrin_loops, ufunc_nbdtrin_data, ufunc_nbdtrin_types, 2, 3, 1, 0, 'nbdtrin', ufunc_nbdtrin_doc, 0)
10863
10118
 
10864
10119
  cdef np.PyUFuncGenericFunction ufunc_ncfdtr_loops[2]
10865
10120
  cdef void *ufunc_ncfdtr_ptr[4]
@@ -10972,7 +10227,7 @@ ufunc_ncfdtr_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncf_cdf_double
10972
10227
  ufunc_ncfdtr_ptr[2*1+1] = <void*>(<char*>"ncfdtr")
10973
10228
  ufunc_ncfdtr_data[0] = &ufunc_ncfdtr_ptr[2*0]
10974
10229
  ufunc_ncfdtr_data[1] = &ufunc_ncfdtr_ptr[2*1]
10975
- ncfdtr = np.PyUFunc_FromFuncAndData(ufunc_ncfdtr_loops, ufunc_ncfdtr_data, ufunc_ncfdtr_types, 2, 4, 1, 0, "ncfdtr", ufunc_ncfdtr_doc, 0)
10230
+ ncfdtr = np.PyUFunc_FromFuncAndData(ufunc_ncfdtr_loops, ufunc_ncfdtr_data, ufunc_ncfdtr_types, 2, 4, 1, 0, 'ncfdtr', ufunc_ncfdtr_doc, 0)
10976
10231
 
10977
10232
  cdef np.PyUFuncGenericFunction ufunc_ncfdtri_loops[2]
10978
10233
  cdef void *ufunc_ncfdtri_ptr[4]
@@ -11058,7 +10313,7 @@ ufunc_ncfdtri_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_ncf_ppf_double
11058
10313
  ufunc_ncfdtri_ptr[2*1+1] = <void*>(<char*>"ncfdtri")
11059
10314
  ufunc_ncfdtri_data[0] = &ufunc_ncfdtri_ptr[2*0]
11060
10315
  ufunc_ncfdtri_data[1] = &ufunc_ncfdtri_ptr[2*1]
11061
- ncfdtri = np.PyUFunc_FromFuncAndData(ufunc_ncfdtri_loops, ufunc_ncfdtri_data, ufunc_ncfdtri_types, 2, 4, 1, 0, "ncfdtri", ufunc_ncfdtri_doc, 0)
10316
+ ncfdtri = np.PyUFunc_FromFuncAndData(ufunc_ncfdtri_loops, ufunc_ncfdtri_data, ufunc_ncfdtri_types, 2, 4, 1, 0, 'ncfdtri', ufunc_ncfdtri_doc, 0)
11062
10317
 
11063
10318
  cdef np.PyUFuncGenericFunction ufunc_ncfdtridfd_loops[2]
11064
10319
  cdef void *ufunc_ncfdtridfd_ptr[4]
@@ -11138,7 +10393,7 @@ ufunc_ncfdtridfd_ptr[2*1] = <void*>_func_ncfdtridfd
11138
10393
  ufunc_ncfdtridfd_ptr[2*1+1] = <void*>(<char*>"ncfdtridfd")
11139
10394
  ufunc_ncfdtridfd_data[0] = &ufunc_ncfdtridfd_ptr[2*0]
11140
10395
  ufunc_ncfdtridfd_data[1] = &ufunc_ncfdtridfd_ptr[2*1]
11141
- ncfdtridfd = np.PyUFunc_FromFuncAndData(ufunc_ncfdtridfd_loops, ufunc_ncfdtridfd_data, ufunc_ncfdtridfd_types, 2, 4, 1, 0, "ncfdtridfd", ufunc_ncfdtridfd_doc, 0)
10396
+ ncfdtridfd = np.PyUFunc_FromFuncAndData(ufunc_ncfdtridfd_loops, ufunc_ncfdtridfd_data, ufunc_ncfdtridfd_types, 2, 4, 1, 0, 'ncfdtridfd', ufunc_ncfdtridfd_doc, 0)
11142
10397
 
11143
10398
  cdef np.PyUFuncGenericFunction ufunc_ncfdtridfn_loops[2]
11144
10399
  cdef void *ufunc_ncfdtridfn_ptr[4]
@@ -11218,7 +10473,7 @@ ufunc_ncfdtridfn_ptr[2*1] = <void*>_func_ncfdtridfn
11218
10473
  ufunc_ncfdtridfn_ptr[2*1+1] = <void*>(<char*>"ncfdtridfn")
11219
10474
  ufunc_ncfdtridfn_data[0] = &ufunc_ncfdtridfn_ptr[2*0]
11220
10475
  ufunc_ncfdtridfn_data[1] = &ufunc_ncfdtridfn_ptr[2*1]
11221
- ncfdtridfn = np.PyUFunc_FromFuncAndData(ufunc_ncfdtridfn_loops, ufunc_ncfdtridfn_data, ufunc_ncfdtridfn_types, 2, 4, 1, 0, "ncfdtridfn", ufunc_ncfdtridfn_doc, 0)
10476
+ ncfdtridfn = np.PyUFunc_FromFuncAndData(ufunc_ncfdtridfn_loops, ufunc_ncfdtridfn_data, ufunc_ncfdtridfn_types, 2, 4, 1, 0, 'ncfdtridfn', ufunc_ncfdtridfn_doc, 0)
11222
10477
 
11223
10478
  cdef np.PyUFuncGenericFunction ufunc_ncfdtrinc_loops[2]
11224
10479
  cdef void *ufunc_ncfdtrinc_ptr[4]
@@ -11291,7 +10546,7 @@ ufunc_ncfdtrinc_ptr[2*1] = <void*>_func_ncfdtrinc
11291
10546
  ufunc_ncfdtrinc_ptr[2*1+1] = <void*>(<char*>"ncfdtrinc")
11292
10547
  ufunc_ncfdtrinc_data[0] = &ufunc_ncfdtrinc_ptr[2*0]
11293
10548
  ufunc_ncfdtrinc_data[1] = &ufunc_ncfdtrinc_ptr[2*1]
11294
- ncfdtrinc = np.PyUFunc_FromFuncAndData(ufunc_ncfdtrinc_loops, ufunc_ncfdtrinc_data, ufunc_ncfdtrinc_types, 2, 4, 1, 0, "ncfdtrinc", ufunc_ncfdtrinc_doc, 0)
10549
+ ncfdtrinc = np.PyUFunc_FromFuncAndData(ufunc_ncfdtrinc_loops, ufunc_ncfdtrinc_data, ufunc_ncfdtrinc_types, 2, 4, 1, 0, 'ncfdtrinc', ufunc_ncfdtrinc_doc, 0)
11295
10550
 
11296
10551
  cdef np.PyUFuncGenericFunction ufunc_nctdtr_loops[2]
11297
10552
  cdef void *ufunc_nctdtr_ptr[4]
@@ -11374,7 +10629,7 @@ ufunc_nctdtr_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_cdf_double
11374
10629
  ufunc_nctdtr_ptr[2*1+1] = <void*>(<char*>"nctdtr")
11375
10630
  ufunc_nctdtr_data[0] = &ufunc_nctdtr_ptr[2*0]
11376
10631
  ufunc_nctdtr_data[1] = &ufunc_nctdtr_ptr[2*1]
11377
- nctdtr = np.PyUFunc_FromFuncAndData(ufunc_nctdtr_loops, ufunc_nctdtr_data, ufunc_nctdtr_types, 2, 3, 1, 0, "nctdtr", ufunc_nctdtr_doc, 0)
10632
+ nctdtr = np.PyUFunc_FromFuncAndData(ufunc_nctdtr_loops, ufunc_nctdtr_data, ufunc_nctdtr_types, 2, 3, 1, 0, 'nctdtr', ufunc_nctdtr_doc, 0)
11378
10633
 
11379
10634
  cdef np.PyUFuncGenericFunction ufunc_nctdtridf_loops[2]
11380
10635
  cdef void *ufunc_nctdtridf_ptr[4]
@@ -11441,7 +10696,7 @@ ufunc_nctdtridf_ptr[2*1] = <void*>_func_nctdtridf
11441
10696
  ufunc_nctdtridf_ptr[2*1+1] = <void*>(<char*>"nctdtridf")
11442
10697
  ufunc_nctdtridf_data[0] = &ufunc_nctdtridf_ptr[2*0]
11443
10698
  ufunc_nctdtridf_data[1] = &ufunc_nctdtridf_ptr[2*1]
11444
- nctdtridf = np.PyUFunc_FromFuncAndData(ufunc_nctdtridf_loops, ufunc_nctdtridf_data, ufunc_nctdtridf_types, 2, 3, 1, 0, "nctdtridf", ufunc_nctdtridf_doc, 0)
10699
+ nctdtridf = np.PyUFunc_FromFuncAndData(ufunc_nctdtridf_loops, ufunc_nctdtridf_data, ufunc_nctdtridf_types, 2, 3, 1, 0, 'nctdtridf', ufunc_nctdtridf_doc, 0)
11445
10700
 
11446
10701
  cdef np.PyUFuncGenericFunction ufunc_nctdtrinc_loops[2]
11447
10702
  cdef void *ufunc_nctdtrinc_ptr[4]
@@ -11507,7 +10762,7 @@ ufunc_nctdtrinc_ptr[2*1] = <void*>_func_nctdtrinc
11507
10762
  ufunc_nctdtrinc_ptr[2*1+1] = <void*>(<char*>"nctdtrinc")
11508
10763
  ufunc_nctdtrinc_data[0] = &ufunc_nctdtrinc_ptr[2*0]
11509
10764
  ufunc_nctdtrinc_data[1] = &ufunc_nctdtrinc_ptr[2*1]
11510
- nctdtrinc = np.PyUFunc_FromFuncAndData(ufunc_nctdtrinc_loops, ufunc_nctdtrinc_data, ufunc_nctdtrinc_types, 2, 3, 1, 0, "nctdtrinc", ufunc_nctdtrinc_doc, 0)
10765
+ nctdtrinc = np.PyUFunc_FromFuncAndData(ufunc_nctdtrinc_loops, ufunc_nctdtrinc_data, ufunc_nctdtrinc_types, 2, 3, 1, 0, 'nctdtrinc', ufunc_nctdtrinc_doc, 0)
11511
10766
 
11512
10767
  cdef np.PyUFuncGenericFunction ufunc_nctdtrit_loops[2]
11513
10768
  cdef void *ufunc_nctdtrit_ptr[4]
@@ -11525,7 +10780,7 @@ cdef char *ufunc_nctdtrit_doc = (
11525
10780
  "df : array_like\n"
11526
10781
  " Degrees of freedom of the distribution. Should be in range (0, inf).\n"
11527
10782
  "nc : array_like\n"
11528
- " Noncentrality parameter. Should be in range (-1e6, 1e6).\n"
10783
+ " Noncentrality parameter.\n"
11529
10784
  "p : array_like\n"
11530
10785
  " CDF values, in range (0, 1].\n"
11531
10786
  "out : ndarray, optional\n"
@@ -11542,6 +10797,19 @@ cdef char *ufunc_nctdtrit_doc = (
11542
10797
  "nctdtridf : Calculate degrees of freedom, given CDF and iCDF values.\n"
11543
10798
  "nctdtrinc : Calculate non-centrality parameter, given CDF iCDF values.\n"
11544
10799
  "\n"
10800
+ "Notes\n"
10801
+ "-----\n"
10802
+ "This function calculates the quantile of the non-central t distribution using\n"
10803
+ "the Boost Math C++ library [1]_.\n"
10804
+ "\n"
10805
+ "Note that the argument order of `nctdtrit` is different from that of the\n"
10806
+ "similar ``ppf`` method of `scipy.stats.nct`: `t` is the last\n"
10807
+ "parameter of `nctdtrit` but the first parameter of ``scipy.stats.nct.ppf``.\n"
10808
+ "\n"
10809
+ "References\n"
10810
+ "----------\n"
10811
+ ".. [1] The Boost Developers. \"Boost C++ Libraries\". https://www.boost.org/.\n"
10812
+ "\n"
11545
10813
  "Examples\n"
11546
10814
  "--------\n"
11547
10815
  ">>> from scipy.special import nctdtr, nctdtrit\n"
@@ -11557,7 +10825,7 @@ cdef char *ufunc_nctdtrit_doc = (
11557
10825
  "\n"
11558
10826
  ">>> nctdtrit(3, 1, p)\n"
11559
10827
  "array([0.5, 1. , 1.5])")
11560
- ufunc_nctdtrit_loops[0] = <np.PyUFuncGenericFunction>loop_d_ddd__As_fff_f
10828
+ ufunc_nctdtrit_loops[0] = <np.PyUFuncGenericFunction>loop_f_fff__As_fff_f
11561
10829
  ufunc_nctdtrit_loops[1] = <np.PyUFuncGenericFunction>loop_d_ddd__As_ddd_d
11562
10830
  ufunc_nctdtrit_types[0] = <char>NPY_FLOAT
11563
10831
  ufunc_nctdtrit_types[1] = <char>NPY_FLOAT
@@ -11567,98 +10835,13 @@ ufunc_nctdtrit_types[4] = <char>NPY_DOUBLE
11567
10835
  ufunc_nctdtrit_types[5] = <char>NPY_DOUBLE
11568
10836
  ufunc_nctdtrit_types[6] = <char>NPY_DOUBLE
11569
10837
  ufunc_nctdtrit_types[7] = <char>NPY_DOUBLE
11570
- ufunc_nctdtrit_ptr[2*0] = <void*>_func_nctdtrit
10838
+ ufunc_nctdtrit_ptr[2*0] = <void*>scipy.special._ufuncs_cxx._export_nct_ppf_float
11571
10839
  ufunc_nctdtrit_ptr[2*0+1] = <void*>(<char*>"nctdtrit")
11572
- ufunc_nctdtrit_ptr[2*1] = <void*>_func_nctdtrit
10840
+ ufunc_nctdtrit_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_nct_ppf_double
11573
10841
  ufunc_nctdtrit_ptr[2*1+1] = <void*>(<char*>"nctdtrit")
11574
10842
  ufunc_nctdtrit_data[0] = &ufunc_nctdtrit_ptr[2*0]
11575
10843
  ufunc_nctdtrit_data[1] = &ufunc_nctdtrit_ptr[2*1]
11576
- nctdtrit = np.PyUFunc_FromFuncAndData(ufunc_nctdtrit_loops, ufunc_nctdtrit_data, ufunc_nctdtrit_types, 2, 3, 1, 0, "nctdtrit", ufunc_nctdtrit_doc, 0)
11577
-
11578
- cdef np.PyUFuncGenericFunction ufunc_ndtr_loops[4]
11579
- cdef void *ufunc_ndtr_ptr[8]
11580
- cdef void *ufunc_ndtr_data[4]
11581
- cdef char ufunc_ndtr_types[8]
11582
- cdef char *ufunc_ndtr_doc = (
11583
- "ndtr(x, out=None)\n"
11584
- "\n"
11585
- "Cumulative distribution of the standard normal distribution.\n"
11586
- "\n"
11587
- "Returns the area under the standard Gaussian probability\n"
11588
- "density function, integrated from minus infinity to `x`\n"
11589
- "\n"
11590
- ".. math::\n"
11591
- "\n"
11592
- " \\frac{1}{\\sqrt{2\\pi}} \\int_{-\\infty}^x \\exp(-t^2/2) dt\n"
11593
- "\n"
11594
- "Parameters\n"
11595
- "----------\n"
11596
- "x : array_like, real or complex\n"
11597
- " Argument\n"
11598
- "out : ndarray, optional\n"
11599
- " Optional output array for the function results\n"
11600
- "\n"
11601
- "Returns\n"
11602
- "-------\n"
11603
- "scalar or ndarray\n"
11604
- " The value of the normal CDF evaluated at `x`\n"
11605
- "\n"
11606
- "See Also\n"
11607
- "--------\n"
11608
- "log_ndtr : Logarithm of ndtr\n"
11609
- "ndtri : Inverse of ndtr, standard normal percentile function\n"
11610
- "erf : Error function\n"
11611
- "erfc : 1 - erf\n"
11612
- "scipy.stats.norm : Normal distribution\n"
11613
- "\n"
11614
- "Examples\n"
11615
- "--------\n"
11616
- "Evaluate `ndtr` at one point.\n"
11617
- "\n"
11618
- ">>> import numpy as np\n"
11619
- ">>> from scipy.special import ndtr\n"
11620
- ">>> ndtr(0.5)\n"
11621
- "0.6914624612740131\n"
11622
- "\n"
11623
- "Evaluate the function at several points by providing a NumPy array\n"
11624
- "or list for `x`.\n"
11625
- "\n"
11626
- ">>> ndtr([0, 0.5, 2])\n"
11627
- "array([0.5 , 0.69146246, 0.97724987])\n"
11628
- "\n"
11629
- "Plot the function.\n"
11630
- "\n"
11631
- ">>> import matplotlib.pyplot as plt\n"
11632
- ">>> x = np.linspace(-5, 5, 100)\n"
11633
- ">>> fig, ax = plt.subplots()\n"
11634
- ">>> ax.plot(x, ndtr(x))\n"
11635
- ">>> ax.set_title(r\"Standard normal cumulative distribution function $\\Phi$\")\n"
11636
- ">>> plt.show()")
11637
- ufunc_ndtr_loops[0] = <np.PyUFuncGenericFunction>loop_d_d__As_f_f
11638
- ufunc_ndtr_loops[1] = <np.PyUFuncGenericFunction>loop_d_d__As_d_d
11639
- ufunc_ndtr_loops[2] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
11640
- ufunc_ndtr_loops[3] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
11641
- ufunc_ndtr_types[0] = <char>NPY_FLOAT
11642
- ufunc_ndtr_types[1] = <char>NPY_FLOAT
11643
- ufunc_ndtr_types[2] = <char>NPY_DOUBLE
11644
- ufunc_ndtr_types[3] = <char>NPY_DOUBLE
11645
- ufunc_ndtr_types[4] = <char>NPY_CFLOAT
11646
- ufunc_ndtr_types[5] = <char>NPY_CFLOAT
11647
- ufunc_ndtr_types[6] = <char>NPY_CDOUBLE
11648
- ufunc_ndtr_types[7] = <char>NPY_CDOUBLE
11649
- ufunc_ndtr_ptr[2*0] = <void*>_func_xsf_ndtr
11650
- ufunc_ndtr_ptr[2*0+1] = <void*>(<char*>"ndtr")
11651
- ufunc_ndtr_ptr[2*1] = <void*>_func_xsf_ndtr
11652
- ufunc_ndtr_ptr[2*1+1] = <void*>(<char*>"ndtr")
11653
- ufunc_ndtr_ptr[2*2] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_ndtr
11654
- ufunc_ndtr_ptr[2*2+1] = <void*>(<char*>"ndtr")
11655
- ufunc_ndtr_ptr[2*3] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_ndtr
11656
- ufunc_ndtr_ptr[2*3+1] = <void*>(<char*>"ndtr")
11657
- ufunc_ndtr_data[0] = &ufunc_ndtr_ptr[2*0]
11658
- ufunc_ndtr_data[1] = &ufunc_ndtr_ptr[2*1]
11659
- ufunc_ndtr_data[2] = &ufunc_ndtr_ptr[2*2]
11660
- ufunc_ndtr_data[3] = &ufunc_ndtr_ptr[2*3]
11661
- ndtr = np.PyUFunc_FromFuncAndData(ufunc_ndtr_loops, ufunc_ndtr_data, ufunc_ndtr_types, 4, 1, 1, 0, "ndtr", ufunc_ndtr_doc, 0)
10844
+ nctdtrit = np.PyUFunc_FromFuncAndData(ufunc_nctdtrit_loops, ufunc_nctdtrit_data, ufunc_nctdtrit_types, 2, 3, 1, 0, 'nctdtrit', ufunc_nctdtrit_doc, 0)
11662
10845
 
11663
10846
  cdef np.PyUFuncGenericFunction ufunc_ndtri_loops[2]
11664
10847
  cdef void *ufunc_ndtri_ptr[4]
@@ -11728,7 +10911,7 @@ ufunc_ndtri_ptr[2*1] = <void*>_func_xsf_ndtri
11728
10911
  ufunc_ndtri_ptr[2*1+1] = <void*>(<char*>"ndtri")
11729
10912
  ufunc_ndtri_data[0] = &ufunc_ndtri_ptr[2*0]
11730
10913
  ufunc_ndtri_data[1] = &ufunc_ndtri_ptr[2*1]
11731
- ndtri = np.PyUFunc_FromFuncAndData(ufunc_ndtri_loops, ufunc_ndtri_data, ufunc_ndtri_types, 2, 1, 1, 0, "ndtri", ufunc_ndtri_doc, 0)
10914
+ ndtri = np.PyUFunc_FromFuncAndData(ufunc_ndtri_loops, ufunc_ndtri_data, ufunc_ndtri_types, 2, 1, 1, 0, 'ndtri', ufunc_ndtri_doc, 0)
11732
10915
 
11733
10916
  cdef np.PyUFuncGenericFunction ufunc_ndtri_exp_loops[2]
11734
10917
  cdef void *ufunc_ndtri_exp_ptr[4]
@@ -11798,7 +10981,7 @@ ufunc_ndtri_exp_ptr[2*1] = <void*>_func_ndtri_exp
11798
10981
  ufunc_ndtri_exp_ptr[2*1+1] = <void*>(<char*>"ndtri_exp")
11799
10982
  ufunc_ndtri_exp_data[0] = &ufunc_ndtri_exp_ptr[2*0]
11800
10983
  ufunc_ndtri_exp_data[1] = &ufunc_ndtri_exp_ptr[2*1]
11801
- ndtri_exp = np.PyUFunc_FromFuncAndData(ufunc_ndtri_exp_loops, ufunc_ndtri_exp_data, ufunc_ndtri_exp_types, 2, 1, 1, 0, "ndtri_exp", ufunc_ndtri_exp_doc, 0)
10984
+ ndtri_exp = np.PyUFunc_FromFuncAndData(ufunc_ndtri_exp_loops, ufunc_ndtri_exp_data, ufunc_ndtri_exp_types, 2, 1, 1, 0, 'ndtri_exp', ufunc_ndtri_exp_doc, 0)
11802
10985
 
11803
10986
  cdef np.PyUFuncGenericFunction ufunc_nrdtrimn_loops[2]
11804
10987
  cdef void *ufunc_nrdtrimn_ptr[4]
@@ -11869,7 +11052,7 @@ ufunc_nrdtrimn_ptr[2*1] = <void*>_func_nrdtrimn
11869
11052
  ufunc_nrdtrimn_ptr[2*1+1] = <void*>(<char*>"nrdtrimn")
11870
11053
  ufunc_nrdtrimn_data[0] = &ufunc_nrdtrimn_ptr[2*0]
11871
11054
  ufunc_nrdtrimn_data[1] = &ufunc_nrdtrimn_ptr[2*1]
11872
- nrdtrimn = np.PyUFunc_FromFuncAndData(ufunc_nrdtrimn_loops, ufunc_nrdtrimn_data, ufunc_nrdtrimn_types, 2, 3, 1, 0, "nrdtrimn", ufunc_nrdtrimn_doc, 0)
11055
+ nrdtrimn = np.PyUFunc_FromFuncAndData(ufunc_nrdtrimn_loops, ufunc_nrdtrimn_data, ufunc_nrdtrimn_types, 2, 3, 1, 0, 'nrdtrimn', ufunc_nrdtrimn_doc, 0)
11873
11056
 
11874
11057
  cdef np.PyUFuncGenericFunction ufunc_nrdtrisd_loops[2]
11875
11058
  cdef void *ufunc_nrdtrisd_ptr[4]
@@ -11941,7 +11124,7 @@ ufunc_nrdtrisd_ptr[2*1] = <void*>_func_nrdtrisd
11941
11124
  ufunc_nrdtrisd_ptr[2*1+1] = <void*>(<char*>"nrdtrisd")
11942
11125
  ufunc_nrdtrisd_data[0] = &ufunc_nrdtrisd_ptr[2*0]
11943
11126
  ufunc_nrdtrisd_data[1] = &ufunc_nrdtrisd_ptr[2*1]
11944
- nrdtrisd = np.PyUFunc_FromFuncAndData(ufunc_nrdtrisd_loops, ufunc_nrdtrisd_data, ufunc_nrdtrisd_types, 2, 3, 1, 0, "nrdtrisd", ufunc_nrdtrisd_doc, 0)
11127
+ nrdtrisd = np.PyUFunc_FromFuncAndData(ufunc_nrdtrisd_loops, ufunc_nrdtrisd_data, ufunc_nrdtrisd_types, 2, 3, 1, 0, 'nrdtrisd', ufunc_nrdtrisd_doc, 0)
11945
11128
 
11946
11129
  cdef np.PyUFuncGenericFunction ufunc_owens_t_loops[2]
11947
11130
  cdef void *ufunc_owens_t_ptr[4]
@@ -11997,7 +11180,7 @@ ufunc_owens_t_ptr[2*1] = <void*>_func_xsf_owens_t
11997
11180
  ufunc_owens_t_ptr[2*1+1] = <void*>(<char*>"owens_t")
11998
11181
  ufunc_owens_t_data[0] = &ufunc_owens_t_ptr[2*0]
11999
11182
  ufunc_owens_t_data[1] = &ufunc_owens_t_ptr[2*1]
12000
- owens_t = np.PyUFunc_FromFuncAndData(ufunc_owens_t_loops, ufunc_owens_t_data, ufunc_owens_t_types, 2, 2, 1, 0, "owens_t", ufunc_owens_t_doc, 0)
11183
+ owens_t = np.PyUFunc_FromFuncAndData(ufunc_owens_t_loops, ufunc_owens_t_data, ufunc_owens_t_types, 2, 2, 1, 0, 'owens_t', ufunc_owens_t_doc, 0)
12001
11184
 
12002
11185
  cdef np.PyUFuncGenericFunction ufunc_pdtr_loops[2]
12003
11186
  cdef void *ufunc_pdtr_ptr[4]
@@ -12069,7 +11252,7 @@ ufunc_pdtr_ptr[2*1] = <void*>_func_xsf_pdtr
12069
11252
  ufunc_pdtr_ptr[2*1+1] = <void*>(<char*>"pdtr")
12070
11253
  ufunc_pdtr_data[0] = &ufunc_pdtr_ptr[2*0]
12071
11254
  ufunc_pdtr_data[1] = &ufunc_pdtr_ptr[2*1]
12072
- pdtr = np.PyUFunc_FromFuncAndData(ufunc_pdtr_loops, ufunc_pdtr_data, ufunc_pdtr_types, 2, 2, 1, 0, "pdtr", ufunc_pdtr_doc, 0)
11255
+ pdtr = np.PyUFunc_FromFuncAndData(ufunc_pdtr_loops, ufunc_pdtr_data, ufunc_pdtr_types, 2, 2, 1, 0, 'pdtr', ufunc_pdtr_doc, 0)
12073
11256
 
12074
11257
  cdef np.PyUFuncGenericFunction ufunc_pdtrc_loops[2]
12075
11258
  cdef void *ufunc_pdtrc_ptr[4]
@@ -12135,7 +11318,7 @@ ufunc_pdtrc_ptr[2*1] = <void*>_func_xsf_pdtrc
12135
11318
  ufunc_pdtrc_ptr[2*1+1] = <void*>(<char*>"pdtrc")
12136
11319
  ufunc_pdtrc_data[0] = &ufunc_pdtrc_ptr[2*0]
12137
11320
  ufunc_pdtrc_data[1] = &ufunc_pdtrc_ptr[2*1]
12138
- pdtrc = np.PyUFunc_FromFuncAndData(ufunc_pdtrc_loops, ufunc_pdtrc_data, ufunc_pdtrc_types, 2, 2, 1, 0, "pdtrc", ufunc_pdtrc_doc, 0)
11321
+ pdtrc = np.PyUFunc_FromFuncAndData(ufunc_pdtrc_loops, ufunc_pdtrc_data, ufunc_pdtrc_types, 2, 2, 1, 0, 'pdtrc', ufunc_pdtrc_doc, 0)
12139
11322
 
12140
11323
  cdef np.PyUFuncGenericFunction ufunc_pdtri_loops[3]
12141
11324
  cdef void *ufunc_pdtri_ptr[6]
@@ -12207,7 +11390,7 @@ ufunc_pdtri_ptr[2*2+1] = <void*>(<char*>"pdtri")
12207
11390
  ufunc_pdtri_data[0] = &ufunc_pdtri_ptr[2*0]
12208
11391
  ufunc_pdtri_data[1] = &ufunc_pdtri_ptr[2*1]
12209
11392
  ufunc_pdtri_data[2] = &ufunc_pdtri_ptr[2*2]
12210
- pdtri = np.PyUFunc_FromFuncAndData(ufunc_pdtri_loops, ufunc_pdtri_data, ufunc_pdtri_types, 3, 2, 1, 0, "pdtri", ufunc_pdtri_doc, 0)
11393
+ pdtri = np.PyUFunc_FromFuncAndData(ufunc_pdtri_loops, ufunc_pdtri_data, ufunc_pdtri_types, 3, 2, 1, 0, 'pdtri', ufunc_pdtri_doc, 0)
12211
11394
 
12212
11395
  cdef np.PyUFuncGenericFunction ufunc_pdtrik_loops[2]
12213
11396
  cdef void *ufunc_pdtrik_ptr[4]
@@ -12267,7 +11450,7 @@ ufunc_pdtrik_ptr[2*1] = <void*>_func_pdtrik
12267
11450
  ufunc_pdtrik_ptr[2*1+1] = <void*>(<char*>"pdtrik")
12268
11451
  ufunc_pdtrik_data[0] = &ufunc_pdtrik_ptr[2*0]
12269
11452
  ufunc_pdtrik_data[1] = &ufunc_pdtrik_ptr[2*1]
12270
- pdtrik = np.PyUFunc_FromFuncAndData(ufunc_pdtrik_loops, ufunc_pdtrik_data, ufunc_pdtrik_types, 2, 2, 1, 0, "pdtrik", ufunc_pdtrik_doc, 0)
11453
+ pdtrik = np.PyUFunc_FromFuncAndData(ufunc_pdtrik_loops, ufunc_pdtrik_data, ufunc_pdtrik_types, 2, 2, 1, 0, 'pdtrik', ufunc_pdtrik_doc, 0)
12271
11454
 
12272
11455
  cdef np.PyUFuncGenericFunction ufunc_poch_loops[2]
12273
11456
  cdef void *ufunc_poch_ptr[4]
@@ -12346,7 +11529,7 @@ ufunc_poch_ptr[2*1] = <void*>_func_cephes_poch
12346
11529
  ufunc_poch_ptr[2*1+1] = <void*>(<char*>"poch")
12347
11530
  ufunc_poch_data[0] = &ufunc_poch_ptr[2*0]
12348
11531
  ufunc_poch_data[1] = &ufunc_poch_ptr[2*1]
12349
- poch = np.PyUFunc_FromFuncAndData(ufunc_poch_loops, ufunc_poch_data, ufunc_poch_types, 2, 2, 1, 0, "poch", ufunc_poch_doc, 0)
11532
+ poch = np.PyUFunc_FromFuncAndData(ufunc_poch_loops, ufunc_poch_data, ufunc_poch_types, 2, 2, 1, 0, 'poch', ufunc_poch_doc, 0)
12350
11533
 
12351
11534
  cdef np.PyUFuncGenericFunction ufunc_powm1_loops[2]
12352
11535
  cdef void *ufunc_powm1_ptr[4]
@@ -12429,7 +11612,7 @@ ufunc_powm1_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_powm1_double
12429
11612
  ufunc_powm1_ptr[2*1+1] = <void*>(<char*>"powm1")
12430
11613
  ufunc_powm1_data[0] = &ufunc_powm1_ptr[2*0]
12431
11614
  ufunc_powm1_data[1] = &ufunc_powm1_ptr[2*1]
12432
- powm1 = np.PyUFunc_FromFuncAndData(ufunc_powm1_loops, ufunc_powm1_data, ufunc_powm1_types, 2, 2, 1, 0, "powm1", ufunc_powm1_doc, 0)
11615
+ powm1 = np.PyUFunc_FromFuncAndData(ufunc_powm1_loops, ufunc_powm1_data, ufunc_powm1_types, 2, 2, 1, 0, 'powm1', ufunc_powm1_doc, 0)
12433
11616
 
12434
11617
  cdef np.PyUFuncGenericFunction ufunc_pseudo_huber_loops[2]
12435
11618
  cdef void *ufunc_pseudo_huber_ptr[4]
@@ -12579,7 +11762,7 @@ ufunc_pseudo_huber_ptr[2*1] = <void*>_func_pseudo_huber
12579
11762
  ufunc_pseudo_huber_ptr[2*1+1] = <void*>(<char*>"pseudo_huber")
12580
11763
  ufunc_pseudo_huber_data[0] = &ufunc_pseudo_huber_ptr[2*0]
12581
11764
  ufunc_pseudo_huber_data[1] = &ufunc_pseudo_huber_ptr[2*1]
12582
- pseudo_huber = np.PyUFunc_FromFuncAndData(ufunc_pseudo_huber_loops, ufunc_pseudo_huber_data, ufunc_pseudo_huber_types, 2, 2, 1, 0, "pseudo_huber", ufunc_pseudo_huber_doc, 0)
11765
+ pseudo_huber = np.PyUFunc_FromFuncAndData(ufunc_pseudo_huber_loops, ufunc_pseudo_huber_data, ufunc_pseudo_huber_types, 2, 2, 1, 0, 'pseudo_huber', ufunc_pseudo_huber_doc, 0)
12583
11766
 
12584
11767
  cdef np.PyUFuncGenericFunction ufunc_rel_entr_loops[2]
12585
11768
  cdef void *ufunc_rel_entr_ptr[4]
@@ -12655,7 +11838,7 @@ ufunc_rel_entr_ptr[2*1] = <void*>_func_rel_entr
12655
11838
  ufunc_rel_entr_ptr[2*1+1] = <void*>(<char*>"rel_entr")
12656
11839
  ufunc_rel_entr_data[0] = &ufunc_rel_entr_ptr[2*0]
12657
11840
  ufunc_rel_entr_data[1] = &ufunc_rel_entr_ptr[2*1]
12658
- rel_entr = np.PyUFunc_FromFuncAndData(ufunc_rel_entr_loops, ufunc_rel_entr_data, ufunc_rel_entr_types, 2, 2, 1, 0, "rel_entr", ufunc_rel_entr_doc, 0)
11841
+ rel_entr = np.PyUFunc_FromFuncAndData(ufunc_rel_entr_loops, ufunc_rel_entr_data, ufunc_rel_entr_types, 2, 2, 1, 0, 'rel_entr', ufunc_rel_entr_doc, 0)
12659
11842
 
12660
11843
  cdef np.PyUFuncGenericFunction ufunc_round_loops[2]
12661
11844
  cdef void *ufunc_round_ptr[4]
@@ -12702,7 +11885,7 @@ ufunc_round_ptr[2*1] = <void*>_func_cephes_round
12702
11885
  ufunc_round_ptr[2*1+1] = <void*>(<char*>"round")
12703
11886
  ufunc_round_data[0] = &ufunc_round_ptr[2*0]
12704
11887
  ufunc_round_data[1] = &ufunc_round_ptr[2*1]
12705
- round = np.PyUFunc_FromFuncAndData(ufunc_round_loops, ufunc_round_data, ufunc_round_types, 2, 1, 1, 0, "round", ufunc_round_doc, 0)
11888
+ round = np.PyUFunc_FromFuncAndData(ufunc_round_loops, ufunc_round_data, ufunc_round_types, 2, 1, 1, 0, 'round', ufunc_round_doc, 0)
12706
11889
 
12707
11890
  cdef np.PyUFuncGenericFunction ufunc_shichi_loops[4]
12708
11891
  cdef void *ufunc_shichi_ptr[8]
@@ -12842,7 +12025,7 @@ ufunc_shichi_data[0] = &ufunc_shichi_ptr[2*0]
12842
12025
  ufunc_shichi_data[1] = &ufunc_shichi_ptr[2*1]
12843
12026
  ufunc_shichi_data[2] = &ufunc_shichi_ptr[2*2]
12844
12027
  ufunc_shichi_data[3] = &ufunc_shichi_ptr[2*3]
12845
- shichi = np.PyUFunc_FromFuncAndData(ufunc_shichi_loops, ufunc_shichi_data, ufunc_shichi_types, 4, 1, 2, 0, "shichi", ufunc_shichi_doc, 0)
12028
+ shichi = np.PyUFunc_FromFuncAndData(ufunc_shichi_loops, ufunc_shichi_data, ufunc_shichi_types, 4, 1, 2, 0, 'shichi', ufunc_shichi_doc, 0)
12846
12029
 
12847
12030
  cdef np.PyUFuncGenericFunction ufunc_sici_loops[4]
12848
12031
  cdef void *ufunc_sici_ptr[8]
@@ -12991,7 +12174,7 @@ ufunc_sici_data[0] = &ufunc_sici_ptr[2*0]
12991
12174
  ufunc_sici_data[1] = &ufunc_sici_ptr[2*1]
12992
12175
  ufunc_sici_data[2] = &ufunc_sici_ptr[2*2]
12993
12176
  ufunc_sici_data[3] = &ufunc_sici_ptr[2*3]
12994
- sici = np.PyUFunc_FromFuncAndData(ufunc_sici_loops, ufunc_sici_data, ufunc_sici_types, 4, 1, 2, 0, "sici", ufunc_sici_doc, 0)
12177
+ sici = np.PyUFunc_FromFuncAndData(ufunc_sici_loops, ufunc_sici_data, ufunc_sici_types, 4, 1, 2, 0, 'sici', ufunc_sici_doc, 0)
12995
12178
 
12996
12179
  cdef np.PyUFuncGenericFunction ufunc_smirnov_loops[3]
12997
12180
  cdef void *ufunc_smirnov_ptr[6]
@@ -13128,7 +12311,7 @@ ufunc_smirnov_ptr[2*2+1] = <void*>(<char*>"smirnov")
13128
12311
  ufunc_smirnov_data[0] = &ufunc_smirnov_ptr[2*0]
13129
12312
  ufunc_smirnov_data[1] = &ufunc_smirnov_ptr[2*1]
13130
12313
  ufunc_smirnov_data[2] = &ufunc_smirnov_ptr[2*2]
13131
- smirnov = np.PyUFunc_FromFuncAndData(ufunc_smirnov_loops, ufunc_smirnov_data, ufunc_smirnov_types, 3, 2, 1, 0, "smirnov", ufunc_smirnov_doc, 0)
12314
+ smirnov = np.PyUFunc_FromFuncAndData(ufunc_smirnov_loops, ufunc_smirnov_data, ufunc_smirnov_types, 3, 2, 1, 0, 'smirnov', ufunc_smirnov_doc, 0)
13132
12315
 
13133
12316
  cdef np.PyUFuncGenericFunction ufunc_smirnovi_loops[3]
13134
12317
  cdef void *ufunc_smirnovi_ptr[6]
@@ -13210,7 +12393,7 @@ ufunc_smirnovi_ptr[2*2+1] = <void*>(<char*>"smirnovi")
13210
12393
  ufunc_smirnovi_data[0] = &ufunc_smirnovi_ptr[2*0]
13211
12394
  ufunc_smirnovi_data[1] = &ufunc_smirnovi_ptr[2*1]
13212
12395
  ufunc_smirnovi_data[2] = &ufunc_smirnovi_ptr[2*2]
13213
- smirnovi = np.PyUFunc_FromFuncAndData(ufunc_smirnovi_loops, ufunc_smirnovi_data, ufunc_smirnovi_types, 3, 2, 1, 0, "smirnovi", ufunc_smirnovi_doc, 0)
12396
+ smirnovi = np.PyUFunc_FromFuncAndData(ufunc_smirnovi_loops, ufunc_smirnovi_data, ufunc_smirnovi_types, 3, 2, 1, 0, 'smirnovi', ufunc_smirnovi_doc, 0)
13214
12397
 
13215
12398
  cdef np.PyUFuncGenericFunction ufunc_spence_loops[4]
13216
12399
  cdef void *ufunc_spence_ptr[8]
@@ -13330,7 +12513,7 @@ ufunc_spence_data[0] = &ufunc_spence_ptr[2*0]
13330
12513
  ufunc_spence_data[1] = &ufunc_spence_ptr[2*1]
13331
12514
  ufunc_spence_data[2] = &ufunc_spence_ptr[2*2]
13332
12515
  ufunc_spence_data[3] = &ufunc_spence_ptr[2*3]
13333
- spence = np.PyUFunc_FromFuncAndData(ufunc_spence_loops, ufunc_spence_data, ufunc_spence_types, 4, 1, 1, 0, "spence", ufunc_spence_doc, 0)
12516
+ spence = np.PyUFunc_FromFuncAndData(ufunc_spence_loops, ufunc_spence_data, ufunc_spence_types, 4, 1, 1, 0, 'spence', ufunc_spence_doc, 0)
13334
12517
 
13335
12518
  cdef np.PyUFuncGenericFunction ufunc_stdtr_loops[2]
13336
12519
  cdef void *ufunc_stdtr_ptr[4]
@@ -13440,7 +12623,7 @@ ufunc_stdtr_ptr[2*1] = <void*>_func_stdtr
13440
12623
  ufunc_stdtr_ptr[2*1+1] = <void*>(<char*>"stdtr")
13441
12624
  ufunc_stdtr_data[0] = &ufunc_stdtr_ptr[2*0]
13442
12625
  ufunc_stdtr_data[1] = &ufunc_stdtr_ptr[2*1]
13443
- stdtr = np.PyUFunc_FromFuncAndData(ufunc_stdtr_loops, ufunc_stdtr_data, ufunc_stdtr_types, 2, 2, 1, 0, "stdtr", ufunc_stdtr_doc, 0)
12626
+ stdtr = np.PyUFunc_FromFuncAndData(ufunc_stdtr_loops, ufunc_stdtr_data, ufunc_stdtr_types, 2, 2, 1, 0, 'stdtr', ufunc_stdtr_doc, 0)
13444
12627
 
13445
12628
  cdef np.PyUFuncGenericFunction ufunc_stdtridf_loops[2]
13446
12629
  cdef void *ufunc_stdtridf_ptr[4]
@@ -13503,7 +12686,7 @@ ufunc_stdtridf_ptr[2*1] = <void*>_func_stdtridf
13503
12686
  ufunc_stdtridf_ptr[2*1+1] = <void*>(<char*>"stdtridf")
13504
12687
  ufunc_stdtridf_data[0] = &ufunc_stdtridf_ptr[2*0]
13505
12688
  ufunc_stdtridf_data[1] = &ufunc_stdtridf_ptr[2*1]
13506
- stdtridf = np.PyUFunc_FromFuncAndData(ufunc_stdtridf_loops, ufunc_stdtridf_data, ufunc_stdtridf_types, 2, 2, 1, 0, "stdtridf", ufunc_stdtridf_doc, 0)
12689
+ stdtridf = np.PyUFunc_FromFuncAndData(ufunc_stdtridf_loops, ufunc_stdtridf_data, ufunc_stdtridf_types, 2, 2, 1, 0, 'stdtridf', ufunc_stdtridf_doc, 0)
13507
12690
 
13508
12691
  cdef np.PyUFuncGenericFunction ufunc_stdtrit_loops[2]
13509
12692
  cdef void *ufunc_stdtrit_ptr[4]
@@ -13619,7 +12802,7 @@ ufunc_stdtrit_ptr[2*1] = <void*>_func_stdtrit
13619
12802
  ufunc_stdtrit_ptr[2*1+1] = <void*>(<char*>"stdtrit")
13620
12803
  ufunc_stdtrit_data[0] = &ufunc_stdtrit_ptr[2*0]
13621
12804
  ufunc_stdtrit_data[1] = &ufunc_stdtrit_ptr[2*1]
13622
- stdtrit = np.PyUFunc_FromFuncAndData(ufunc_stdtrit_loops, ufunc_stdtrit_data, ufunc_stdtrit_types, 2, 2, 1, 0, "stdtrit", ufunc_stdtrit_doc, 0)
12805
+ stdtrit = np.PyUFunc_FromFuncAndData(ufunc_stdtrit_loops, ufunc_stdtrit_data, ufunc_stdtrit_types, 2, 2, 1, 0, 'stdtrit', ufunc_stdtrit_doc, 0)
13623
12806
 
13624
12807
  cdef np.PyUFuncGenericFunction ufunc_tklmbda_loops[2]
13625
12808
  cdef void *ufunc_tklmbda_ptr[4]
@@ -13753,194 +12936,7 @@ ufunc_tklmbda_ptr[2*1] = <void*>_func_xsf_tukeylambdacdf
13753
12936
  ufunc_tklmbda_ptr[2*1+1] = <void*>(<char*>"tklmbda")
13754
12937
  ufunc_tklmbda_data[0] = &ufunc_tklmbda_ptr[2*0]
13755
12938
  ufunc_tklmbda_data[1] = &ufunc_tklmbda_ptr[2*1]
13756
- tklmbda = np.PyUFunc_FromFuncAndData(ufunc_tklmbda_loops, ufunc_tklmbda_data, ufunc_tklmbda_types, 2, 2, 1, 0, "tklmbda", ufunc_tklmbda_doc, 0)
13757
-
13758
- cdef np.PyUFuncGenericFunction ufunc_voigt_profile_loops[2]
13759
- cdef void *ufunc_voigt_profile_ptr[4]
13760
- cdef void *ufunc_voigt_profile_data[2]
13761
- cdef char ufunc_voigt_profile_types[8]
13762
- cdef char *ufunc_voigt_profile_doc = (
13763
- "voigt_profile(x, sigma, gamma, out=None)\n"
13764
- "\n"
13765
- "Voigt profile.\n"
13766
- "\n"
13767
- "The Voigt profile is a convolution of a 1-D Normal distribution with\n"
13768
- "standard deviation ``sigma`` and a 1-D Cauchy distribution with half-width at\n"
13769
- "half-maximum ``gamma``.\n"
13770
- "\n"
13771
- "If ``sigma = 0``, PDF of Cauchy distribution is returned.\n"
13772
- "Conversely, if ``gamma = 0``, PDF of Normal distribution is returned.\n"
13773
- "If ``sigma = gamma = 0``, the return value is ``Inf`` for ``x = 0``,\n"
13774
- "and ``0`` for all other ``x``.\n"
13775
- "\n"
13776
- "Parameters\n"
13777
- "----------\n"
13778
- "x : array_like\n"
13779
- " Real argument\n"
13780
- "sigma : array_like\n"
13781
- " The standard deviation of the Normal distribution part\n"
13782
- "gamma : array_like\n"
13783
- " The half-width at half-maximum of the Cauchy distribution part\n"
13784
- "out : ndarray, optional\n"
13785
- " Optional output array for the function values\n"
13786
- "\n"
13787
- "Returns\n"
13788
- "-------\n"
13789
- "scalar or ndarray\n"
13790
- " The Voigt profile at the given arguments\n"
13791
- "\n"
13792
- "See Also\n"
13793
- "--------\n"
13794
- "wofz : Faddeeva function\n"
13795
- "\n"
13796
- "Notes\n"
13797
- "-----\n"
13798
- "It can be expressed in terms of Faddeeva function\n"
13799
- "\n"
13800
- ".. math:: V(x; \\sigma, \\gamma) = \\frac{Re[w(z)]}{\\sigma\\sqrt{2\\pi}},\n"
13801
- ".. math:: z = \\frac{x + i\\gamma}{\\sqrt{2}\\sigma}\n"
13802
- "\n"
13803
- "where :math:`w(z)` is the Faddeeva function.\n"
13804
- "\n"
13805
- "References\n"
13806
- "----------\n"
13807
- ".. [1] https://en.wikipedia.org/wiki/Voigt_profile\n"
13808
- "\n"
13809
- "Examples\n"
13810
- "--------\n"
13811
- "Calculate the function at point 2 for ``sigma=1`` and ``gamma=1``.\n"
13812
- "\n"
13813
- ">>> from scipy.special import voigt_profile\n"
13814
- ">>> import numpy as np\n"
13815
- ">>> import matplotlib.pyplot as plt\n"
13816
- ">>> voigt_profile(2, 1., 1.)\n"
13817
- "0.09071519942627544\n"
13818
- "\n"
13819
- "Calculate the function at several points by providing a NumPy array\n"
13820
- "for `x`.\n"
13821
- "\n"
13822
- ">>> values = np.array([-2., 0., 5])\n"
13823
- ">>> voigt_profile(values, 1., 1.)\n"
13824
- "array([0.0907152 , 0.20870928, 0.01388492])\n"
13825
- "\n"
13826
- "Plot the function for different parameter sets.\n"
13827
- "\n"
13828
- ">>> fig, ax = plt.subplots(figsize=(8, 8))\n"
13829
- ">>> x = np.linspace(-10, 10, 500)\n"
13830
- ">>> parameters_list = [(1.5, 0., \"solid\"), (1.3, 0.5, \"dashed\"),\n"
13831
- "... (0., 1.8, \"dotted\"), (1., 1., \"dashdot\")]\n"
13832
- ">>> for params in parameters_list:\n"
13833
- "... sigma, gamma, linestyle = params\n"
13834
- "... voigt = voigt_profile(x, sigma, gamma)\n"
13835
- "... ax.plot(x, voigt, label=rf\"$\\sigma={sigma},\\, \\gamma={gamma}$\",\n"
13836
- "... ls=linestyle)\n"
13837
- ">>> ax.legend()\n"
13838
- ">>> plt.show()\n"
13839
- "\n"
13840
- "Verify visually that the Voigt profile indeed arises as the convolution\n"
13841
- "of a normal and a Cauchy distribution.\n"
13842
- "\n"
13843
- ">>> from scipy.signal import convolve\n"
13844
- ">>> x, dx = np.linspace(-10, 10, 500, retstep=True)\n"
13845
- ">>> def gaussian(x, sigma):\n"
13846
- "... return np.exp(-0.5 * x**2/sigma**2)/(sigma * np.sqrt(2*np.pi))\n"
13847
- ">>> def cauchy(x, gamma):\n"
13848
- "... return gamma/(np.pi * (np.square(x)+gamma**2))\n"
13849
- ">>> sigma = 2\n"
13850
- ">>> gamma = 1\n"
13851
- ">>> gauss_profile = gaussian(x, sigma)\n"
13852
- ">>> cauchy_profile = cauchy(x, gamma)\n"
13853
- ">>> convolved = dx * convolve(cauchy_profile, gauss_profile, mode=\"same\")\n"
13854
- ">>> voigt = voigt_profile(x, sigma, gamma)\n"
13855
- ">>> fig, ax = plt.subplots(figsize=(8, 8))\n"
13856
- ">>> ax.plot(x, gauss_profile, label=\"Gauss: $G$\", c='b')\n"
13857
- ">>> ax.plot(x, cauchy_profile, label=\"Cauchy: $C$\", c='y', ls=\"dashed\")\n"
13858
- ">>> xx = 0.5*(x[1:] + x[:-1]) # midpoints\n"
13859
- ">>> ax.plot(xx, convolved[1:], label=\"Convolution: $G * C$\", ls='dashdot',\n"
13860
- "... c='k')\n"
13861
- ">>> ax.plot(x, voigt, label=\"Voigt\", ls='dotted', c='r')\n"
13862
- ">>> ax.legend()\n"
13863
- ">>> plt.show()")
13864
- ufunc_voigt_profile_loops[0] = <np.PyUFuncGenericFunction>loop_d_ddd__As_fff_f
13865
- ufunc_voigt_profile_loops[1] = <np.PyUFuncGenericFunction>loop_d_ddd__As_ddd_d
13866
- ufunc_voigt_profile_types[0] = <char>NPY_FLOAT
13867
- ufunc_voigt_profile_types[1] = <char>NPY_FLOAT
13868
- ufunc_voigt_profile_types[2] = <char>NPY_FLOAT
13869
- ufunc_voigt_profile_types[3] = <char>NPY_FLOAT
13870
- ufunc_voigt_profile_types[4] = <char>NPY_DOUBLE
13871
- ufunc_voigt_profile_types[5] = <char>NPY_DOUBLE
13872
- ufunc_voigt_profile_types[6] = <char>NPY_DOUBLE
13873
- ufunc_voigt_profile_types[7] = <char>NPY_DOUBLE
13874
- ufunc_voigt_profile_ptr[2*0] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_voigt_profile
13875
- ufunc_voigt_profile_ptr[2*0+1] = <void*>(<char*>"voigt_profile")
13876
- ufunc_voigt_profile_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_voigt_profile
13877
- ufunc_voigt_profile_ptr[2*1+1] = <void*>(<char*>"voigt_profile")
13878
- ufunc_voigt_profile_data[0] = &ufunc_voigt_profile_ptr[2*0]
13879
- ufunc_voigt_profile_data[1] = &ufunc_voigt_profile_ptr[2*1]
13880
- voigt_profile = np.PyUFunc_FromFuncAndData(ufunc_voigt_profile_loops, ufunc_voigt_profile_data, ufunc_voigt_profile_types, 2, 3, 1, 0, "voigt_profile", ufunc_voigt_profile_doc, 0)
13881
-
13882
- cdef np.PyUFuncGenericFunction ufunc_wofz_loops[2]
13883
- cdef void *ufunc_wofz_ptr[4]
13884
- cdef void *ufunc_wofz_data[2]
13885
- cdef char ufunc_wofz_types[4]
13886
- cdef char *ufunc_wofz_doc = (
13887
- "wofz(z, out=None)\n"
13888
- "\n"
13889
- "Faddeeva function\n"
13890
- "\n"
13891
- "Returns the value of the Faddeeva function for complex argument::\n"
13892
- "\n"
13893
- " exp(-z**2) * erfc(-i*z)\n"
13894
- "\n"
13895
- "Parameters\n"
13896
- "----------\n"
13897
- "z : array_like\n"
13898
- " complex argument\n"
13899
- "out : ndarray, optional\n"
13900
- " Optional output array for the function results\n"
13901
- "\n"
13902
- "Returns\n"
13903
- "-------\n"
13904
- "scalar or ndarray\n"
13905
- " Value of the Faddeeva function\n"
13906
- "\n"
13907
- "See Also\n"
13908
- "--------\n"
13909
- "dawsn, erf, erfc, erfcx, erfi\n"
13910
- "\n"
13911
- "References\n"
13912
- "----------\n"
13913
- ".. [1] Steven G. Johnson, Faddeeva W function implementation.\n"
13914
- " http://ab-initio.mit.edu/Faddeeva\n"
13915
- "\n"
13916
- "Examples\n"
13917
- "--------\n"
13918
- ">>> import numpy as np\n"
13919
- ">>> from scipy import special\n"
13920
- ">>> import matplotlib.pyplot as plt\n"
13921
- "\n"
13922
- ">>> x = np.linspace(-3, 3)\n"
13923
- ">>> z = special.wofz(x)\n"
13924
- "\n"
13925
- ">>> plt.plot(x, z.real, label='wofz(x).real')\n"
13926
- ">>> plt.plot(x, z.imag, label='wofz(x).imag')\n"
13927
- ">>> plt.xlabel('$x$')\n"
13928
- ">>> plt.legend(framealpha=1, shadow=True)\n"
13929
- ">>> plt.grid(alpha=0.25)\n"
13930
- ">>> plt.show()")
13931
- ufunc_wofz_loops[0] = <np.PyUFuncGenericFunction>loop_D_D__As_F_F
13932
- ufunc_wofz_loops[1] = <np.PyUFuncGenericFunction>loop_D_D__As_D_D
13933
- ufunc_wofz_types[0] = <char>NPY_CFLOAT
13934
- ufunc_wofz_types[1] = <char>NPY_CFLOAT
13935
- ufunc_wofz_types[2] = <char>NPY_CDOUBLE
13936
- ufunc_wofz_types[3] = <char>NPY_CDOUBLE
13937
- ufunc_wofz_ptr[2*0] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_w
13938
- ufunc_wofz_ptr[2*0+1] = <void*>(<char*>"wofz")
13939
- ufunc_wofz_ptr[2*1] = <void*>scipy.special._ufuncs_cxx._export_faddeeva_w
13940
- ufunc_wofz_ptr[2*1+1] = <void*>(<char*>"wofz")
13941
- ufunc_wofz_data[0] = &ufunc_wofz_ptr[2*0]
13942
- ufunc_wofz_data[1] = &ufunc_wofz_ptr[2*1]
13943
- wofz = np.PyUFunc_FromFuncAndData(ufunc_wofz_loops, ufunc_wofz_data, ufunc_wofz_types, 2, 1, 1, 0, "wofz", ufunc_wofz_doc, 0)
12939
+ tklmbda = np.PyUFunc_FromFuncAndData(ufunc_tklmbda_loops, ufunc_tklmbda_data, ufunc_tklmbda_types, 2, 2, 1, 0, 'tklmbda', ufunc_tklmbda_doc, 0)
13944
12940
 
13945
12941
  cdef np.PyUFuncGenericFunction ufunc_wrightomega_loops[4]
13946
12942
  cdef void *ufunc_wrightomega_ptr[8]
@@ -14053,188 +13049,7 @@ ufunc_wrightomega_data[0] = &ufunc_wrightomega_ptr[2*0]
14053
13049
  ufunc_wrightomega_data[1] = &ufunc_wrightomega_ptr[2*1]
14054
13050
  ufunc_wrightomega_data[2] = &ufunc_wrightomega_ptr[2*2]
14055
13051
  ufunc_wrightomega_data[3] = &ufunc_wrightomega_ptr[2*3]
14056
- wrightomega = np.PyUFunc_FromFuncAndData(ufunc_wrightomega_loops, ufunc_wrightomega_data, ufunc_wrightomega_types, 4, 1, 1, 0, "wrightomega", ufunc_wrightomega_doc, 0)
14057
-
14058
- cdef np.PyUFuncGenericFunction ufunc_xlog1py_loops[4]
14059
- cdef void *ufunc_xlog1py_ptr[8]
14060
- cdef void *ufunc_xlog1py_data[4]
14061
- cdef char ufunc_xlog1py_types[12]
14062
- cdef char *ufunc_xlog1py_doc = (
14063
- "xlog1py(x, y, out=None)\n"
14064
- "\n"
14065
- "Compute ``x*log1p(y)`` so that the result is 0 if ``x = 0``.\n"
14066
- "\n"
14067
- "Parameters\n"
14068
- "----------\n"
14069
- "x : array_like\n"
14070
- " Multiplier\n"
14071
- "y : array_like\n"
14072
- " Argument\n"
14073
- "out : ndarray, optional\n"
14074
- " Optional output array for the function results\n"
14075
- "\n"
14076
- "Returns\n"
14077
- "-------\n"
14078
- "z : scalar or ndarray\n"
14079
- " Computed x*log1p(y)\n"
14080
- "\n"
14081
- "Notes\n"
14082
- "-----\n"
14083
- "\n"
14084
- ".. versionadded:: 0.13.0\n"
14085
- "\n"
14086
- "Examples\n"
14087
- "--------\n"
14088
- "This example shows how the function can be used to calculate the log of\n"
14089
- "the probability mass function for a geometric discrete random variable.\n"
14090
- "The probability mass function of the geometric distribution is defined\n"
14091
- "as follows:\n"
14092
- "\n"
14093
- ".. math:: f(k) = (1-p)^{k-1} p\n"
14094
- "\n"
14095
- "where :math:`p` is the probability of a single success\n"
14096
- "and :math:`1-p` is the probability of a single failure\n"
14097
- "and :math:`k` is the number of trials to get the first success.\n"
14098
- "\n"
14099
- ">>> import numpy as np\n"
14100
- ">>> from scipy.special import xlog1py\n"
14101
- ">>> p = 0.5\n"
14102
- ">>> k = 100\n"
14103
- ">>> _pmf = np.power(1 - p, k - 1) * p\n"
14104
- ">>> _pmf\n"
14105
- "7.888609052210118e-31\n"
14106
- "\n"
14107
- "If we take k as a relatively large number the value of the probability\n"
14108
- "mass function can become very low. In such cases taking the log of the\n"
14109
- "pmf would be more suitable as the log function can change the values\n"
14110
- "to a scale that is more appropriate to work with.\n"
14111
- "\n"
14112
- ">>> _log_pmf = xlog1py(k - 1, -p) + np.log(p)\n"
14113
- ">>> _log_pmf\n"
14114
- "-69.31471805599453\n"
14115
- "\n"
14116
- "We can confirm that we get a value close to the original pmf value by\n"
14117
- "taking the exponential of the log pmf.\n"
14118
- "\n"
14119
- ">>> _orig_pmf = np.exp(_log_pmf)\n"
14120
- ">>> np.isclose(_pmf, _orig_pmf)\n"
14121
- "True")
14122
- ufunc_xlog1py_loops[0] = <np.PyUFuncGenericFunction>loop_d_dd__As_ff_f
14123
- ufunc_xlog1py_loops[1] = <np.PyUFuncGenericFunction>loop_d_dd__As_dd_d
14124
- ufunc_xlog1py_loops[2] = <np.PyUFuncGenericFunction>loop_D_DD__As_FF_F
14125
- ufunc_xlog1py_loops[3] = <np.PyUFuncGenericFunction>loop_D_DD__As_DD_D
14126
- ufunc_xlog1py_types[0] = <char>NPY_FLOAT
14127
- ufunc_xlog1py_types[1] = <char>NPY_FLOAT
14128
- ufunc_xlog1py_types[2] = <char>NPY_FLOAT
14129
- ufunc_xlog1py_types[3] = <char>NPY_DOUBLE
14130
- ufunc_xlog1py_types[4] = <char>NPY_DOUBLE
14131
- ufunc_xlog1py_types[5] = <char>NPY_DOUBLE
14132
- ufunc_xlog1py_types[6] = <char>NPY_CFLOAT
14133
- ufunc_xlog1py_types[7] = <char>NPY_CFLOAT
14134
- ufunc_xlog1py_types[8] = <char>NPY_CFLOAT
14135
- ufunc_xlog1py_types[9] = <char>NPY_CDOUBLE
14136
- ufunc_xlog1py_types[10] = <char>NPY_CDOUBLE
14137
- ufunc_xlog1py_types[11] = <char>NPY_CDOUBLE
14138
- ufunc_xlog1py_ptr[2*0] = <void*>_func_xlog1py[double]
14139
- ufunc_xlog1py_ptr[2*0+1] = <void*>(<char*>"xlog1py")
14140
- ufunc_xlog1py_ptr[2*1] = <void*>_func_xlog1py[double]
14141
- ufunc_xlog1py_ptr[2*1+1] = <void*>(<char*>"xlog1py")
14142
- ufunc_xlog1py_ptr[2*2] = <void*>_func_xlog1py[double_complex]
14143
- ufunc_xlog1py_ptr[2*2+1] = <void*>(<char*>"xlog1py")
14144
- ufunc_xlog1py_ptr[2*3] = <void*>_func_xlog1py[double_complex]
14145
- ufunc_xlog1py_ptr[2*3+1] = <void*>(<char*>"xlog1py")
14146
- ufunc_xlog1py_data[0] = &ufunc_xlog1py_ptr[2*0]
14147
- ufunc_xlog1py_data[1] = &ufunc_xlog1py_ptr[2*1]
14148
- ufunc_xlog1py_data[2] = &ufunc_xlog1py_ptr[2*2]
14149
- ufunc_xlog1py_data[3] = &ufunc_xlog1py_ptr[2*3]
14150
- xlog1py = np.PyUFunc_FromFuncAndData(ufunc_xlog1py_loops, ufunc_xlog1py_data, ufunc_xlog1py_types, 4, 2, 1, 0, "xlog1py", ufunc_xlog1py_doc, 0)
14151
-
14152
- cdef np.PyUFuncGenericFunction ufunc_xlogy_loops[4]
14153
- cdef void *ufunc_xlogy_ptr[8]
14154
- cdef void *ufunc_xlogy_data[4]
14155
- cdef char ufunc_xlogy_types[12]
14156
- cdef char *ufunc_xlogy_doc = (
14157
- "xlogy(x, y, out=None)\n"
14158
- "\n"
14159
- "Compute ``x*log(y)`` so that the result is 0 if ``x = 0``.\n"
14160
- "\n"
14161
- "Parameters\n"
14162
- "----------\n"
14163
- "x : array_like\n"
14164
- " Multiplier\n"
14165
- "y : array_like\n"
14166
- " Argument\n"
14167
- "out : ndarray, optional\n"
14168
- " Optional output array for the function results\n"
14169
- "\n"
14170
- "Returns\n"
14171
- "-------\n"
14172
- "z : scalar or ndarray\n"
14173
- " Computed x*log(y)\n"
14174
- "\n"
14175
- "Notes\n"
14176
- "-----\n"
14177
- "The log function used in the computation is the natural log.\n"
14178
- "\n"
14179
- ".. versionadded:: 0.13.0\n"
14180
- "\n"
14181
- "Examples\n"
14182
- "--------\n"
14183
- "We can use this function to calculate the binary logistic loss also\n"
14184
- "known as the binary cross entropy. This loss function is used for\n"
14185
- "binary classification problems and is defined as:\n"
14186
- "\n"
14187
- ".. math::\n"
14188
- " L = 1/n * \\sum_{i=0}^n -(y_i*log(y\\_pred_i) + (1-y_i)*log(1-y\\_pred_i))\n"
14189
- "\n"
14190
- "We can define the parameters `x` and `y` as y and y_pred respectively.\n"
14191
- "y is the array of the actual labels which over here can be either 0 or 1.\n"
14192
- "y_pred is the array of the predicted probabilities with respect to\n"
14193
- "the positive class (1).\n"
14194
- "\n"
14195
- ">>> import numpy as np\n"
14196
- ">>> from scipy.special import xlogy\n"
14197
- ">>> y = np.array([0, 1, 0, 1, 1, 0])\n"
14198
- ">>> y_pred = np.array([0.3, 0.8, 0.4, 0.7, 0.9, 0.2])\n"
14199
- ">>> n = len(y)\n"
14200
- ">>> loss = -(xlogy(y, y_pred) + xlogy(1 - y, 1 - y_pred)).sum()\n"
14201
- ">>> loss /= n\n"
14202
- ">>> loss\n"
14203
- "0.29597052165495025\n"
14204
- "\n"
14205
- "A lower loss is usually better as it indicates that the predictions are\n"
14206
- "similar to the actual labels. In this example since our predicted\n"
14207
- "probabilities are close to the actual labels, we get an overall loss\n"
14208
- "that is reasonably low and appropriate.")
14209
- ufunc_xlogy_loops[0] = <np.PyUFuncGenericFunction>loop_d_dd__As_ff_f
14210
- ufunc_xlogy_loops[1] = <np.PyUFuncGenericFunction>loop_d_dd__As_dd_d
14211
- ufunc_xlogy_loops[2] = <np.PyUFuncGenericFunction>loop_D_DD__As_FF_F
14212
- ufunc_xlogy_loops[3] = <np.PyUFuncGenericFunction>loop_D_DD__As_DD_D
14213
- ufunc_xlogy_types[0] = <char>NPY_FLOAT
14214
- ufunc_xlogy_types[1] = <char>NPY_FLOAT
14215
- ufunc_xlogy_types[2] = <char>NPY_FLOAT
14216
- ufunc_xlogy_types[3] = <char>NPY_DOUBLE
14217
- ufunc_xlogy_types[4] = <char>NPY_DOUBLE
14218
- ufunc_xlogy_types[5] = <char>NPY_DOUBLE
14219
- ufunc_xlogy_types[6] = <char>NPY_CFLOAT
14220
- ufunc_xlogy_types[7] = <char>NPY_CFLOAT
14221
- ufunc_xlogy_types[8] = <char>NPY_CFLOAT
14222
- ufunc_xlogy_types[9] = <char>NPY_CDOUBLE
14223
- ufunc_xlogy_types[10] = <char>NPY_CDOUBLE
14224
- ufunc_xlogy_types[11] = <char>NPY_CDOUBLE
14225
- ufunc_xlogy_ptr[2*0] = <void*>_func_xlogy[double]
14226
- ufunc_xlogy_ptr[2*0+1] = <void*>(<char*>"xlogy")
14227
- ufunc_xlogy_ptr[2*1] = <void*>_func_xlogy[double]
14228
- ufunc_xlogy_ptr[2*1+1] = <void*>(<char*>"xlogy")
14229
- ufunc_xlogy_ptr[2*2] = <void*>_func_xlogy[double_complex]
14230
- ufunc_xlogy_ptr[2*2+1] = <void*>(<char*>"xlogy")
14231
- ufunc_xlogy_ptr[2*3] = <void*>_func_xlogy[double_complex]
14232
- ufunc_xlogy_ptr[2*3+1] = <void*>(<char*>"xlogy")
14233
- ufunc_xlogy_data[0] = &ufunc_xlogy_ptr[2*0]
14234
- ufunc_xlogy_data[1] = &ufunc_xlogy_ptr[2*1]
14235
- ufunc_xlogy_data[2] = &ufunc_xlogy_ptr[2*2]
14236
- ufunc_xlogy_data[3] = &ufunc_xlogy_ptr[2*3]
14237
- xlogy = np.PyUFunc_FromFuncAndData(ufunc_xlogy_loops, ufunc_xlogy_data, ufunc_xlogy_types, 4, 2, 1, 0, "xlogy", ufunc_xlogy_doc, 0)
13052
+ wrightomega = np.PyUFunc_FromFuncAndData(ufunc_wrightomega_loops, ufunc_wrightomega_data, ufunc_wrightomega_types, 4, 1, 1, 0, 'wrightomega', ufunc_wrightomega_doc, 0)
14238
13053
 
14239
13054
  cdef np.PyUFuncGenericFunction ufunc_yn_loops[3]
14240
13055
  cdef void *ufunc_yn_ptr[6]
@@ -14348,9 +13163,9 @@ ufunc_yn_ptr[2*2+1] = <void*>(<char*>"yn")
14348
13163
  ufunc_yn_data[0] = &ufunc_yn_ptr[2*0]
14349
13164
  ufunc_yn_data[1] = &ufunc_yn_ptr[2*1]
14350
13165
  ufunc_yn_data[2] = &ufunc_yn_ptr[2*2]
14351
- yn = np.PyUFunc_FromFuncAndData(ufunc_yn_loops, ufunc_yn_data, ufunc_yn_types, 3, 2, 1, 0, "yn", ufunc_yn_doc, 0)
13166
+ yn = np.PyUFunc_FromFuncAndData(ufunc_yn_loops, ufunc_yn_data, ufunc_yn_types, 3, 2, 1, 0, 'yn', ufunc_yn_doc, 0)
14352
13167
 
14353
- from ._special_ufuncs import (_cospi, _lambertw, _scaled_exp1, _sinpi, _spherical_jn, _spherical_jn_d, _spherical_yn, _spherical_yn_d, _spherical_in, _spherical_in_d, _spherical_kn, _spherical_kn_d, airy, airye, bei, beip, ber, berp, binom, exp1, expi, expit, exprel, gamma, gammaln, hankel1, hankel1e, hankel2, hankel2e, hyp2f1, it2i0k0, it2j0y0, it2struve0, itairy, iti0k0, itj0y0, itmodstruve0, itstruve0, iv, _iv_ratio, _iv_ratio_c, ive, jv, jve, kei, keip, kelvin, ker, kerp, kv, kve, log_expit, log_wright_bessel, loggamma, logit, mathieu_a, mathieu_b, mathieu_cem, mathieu_modcem1, mathieu_modcem2, mathieu_modsem1, mathieu_modsem2, mathieu_sem, modfresnelm, modfresnelp, obl_ang1, obl_ang1_cv, obl_cv, obl_rad1, obl_rad1_cv, obl_rad2, obl_rad2_cv, pbdv, pbvv, pbwa, pro_ang1, pro_ang1_cv, pro_cv, pro_rad1, pro_rad1_cv, pro_rad2, pro_rad2_cv, psi, rgamma, sph_harm, wright_bessel, yv, yve, zetac, _zeta, sindg, cosdg, tandg, cotdg, i0, i0e, i1, i1e, k0, k0e, k1, k1e, y0, y1, j0, j1, struve, modstruve, beta, betaln, besselpoly, gammaln, gammasgn, cbrt, radian, cosm1, gammainc, gammaincinv, gammaincc, gammainccinv, fresnel, ellipe, ellipeinc, ellipk, ellipkinc, ellipkm1, ellipj, _riemann_zeta)
13168
+ from ._special_ufuncs import (_cospi, _lambertw, _scaled_exp1, _sinpi, _spherical_jn, _spherical_jn_d, _spherical_yn, _spherical_yn_d, _spherical_in, _spherical_in_d, _spherical_kn, _spherical_kn_d, airy, airye, bei, beip, ber, berp, binom, exp1, expi, expit, exprel, gamma, gammaln, hankel1, hankel1e, hankel2, hankel2e, hyp2f1, it2i0k0, it2j0y0, it2struve0, itairy, iti0k0, itj0y0, itmodstruve0, itstruve0, iv, _iv_ratio, _iv_ratio_c, ive, jv, jve, kei, keip, kelvin, ker, kerp, kv, kve, log_expit, log_wright_bessel, loggamma, logit, mathieu_a, mathieu_b, mathieu_cem, mathieu_modcem1, mathieu_modcem2, mathieu_modsem1, mathieu_modsem2, mathieu_sem, modfresnelm, modfresnelp, obl_ang1, obl_ang1_cv, obl_cv, obl_rad1, obl_rad1_cv, obl_rad2, obl_rad2_cv, pbdv, pbvv, pbwa, pro_ang1, pro_ang1_cv, pro_cv, pro_rad1, pro_rad1_cv, pro_rad2, pro_rad2_cv, psi, rgamma, sph_harm, wright_bessel, yv, yve, zetac, _zeta, sindg, cosdg, tandg, cotdg, i0, i0e, i1, i1e, k0, k0e, k1, k1e, y0, y1, j0, j1, struve, modstruve, beta, betaln, besselpoly, gammaln, gammasgn, cbrt, radian, cosm1, gammainc, gammaincinv, gammaincc, gammainccinv, fresnel, ellipe, ellipeinc, ellipk, ellipkinc, ellipkm1, ellipj, _riemann_zeta, erf, erfc, erfcx, erfi, voigt_profile, wofz, dawsn, ndtr, log_ndtr, exp2, exp10, expm1, log1p, xlogy, xlog1py, _log1pmx, _log1mexp)
14354
13169
 
14355
13170
  #
14356
13171
  # Aliases