numpy 1.9.3__zip → 1.10.0__zip

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 (1590) hide show
  1. numpy-1.10.0.post2/INSTALL.txt +200 -0
  2. numpy-1.10.0.post2/LICENSE.txt +30 -0
  3. numpy-1.10.0.post2/MANIFEST.in +31 -0
  4. numpy-1.10.0.post2/PKG-INFO +47 -0
  5. numpy-1.10.0.post2/cnew.txt +117 -0
  6. numpy-1.10.0.post2/cold.txt +44 -0
  7. numpy-1.10.0.post2/committers.txt +160 -0
  8. numpy-1.10.0.post2/cpre.txt +283 -0
  9. numpy-1.10.0.post2/crel.txt +161 -0
  10. numpy-1.10.0.post2/doc/release/1.10.0-notes.rst +439 -0
  11. numpy-1.10.0.post2/doc/source/conf.py +331 -0
  12. numpy-1.10.0.post2/doc/source/dev/development_environment.rst +211 -0
  13. numpy-1.10.0.post2/doc/source/dev/gitwash/development_workflow.rst +534 -0
  14. numpy-1.10.0.post2/doc/source/dev/gitwash/git_links.inc +95 -0
  15. numpy-1.10.0.post2/doc/source/dev/gitwash/index.rst +14 -0
  16. numpy-1.10.0.post2/doc/source/dev/index.rst +11 -0
  17. numpy-1.10.0.post2/doc/source/reference/arrays.classes.rst +490 -0
  18. numpy-1.10.0.post2/doc/source/reference/arrays.dtypes.rst +536 -0
  19. numpy-1.10.0.post2/doc/source/reference/arrays.indexing.rst +549 -0
  20. numpy-1.10.0.post2/doc/source/reference/arrays.interface.rst +337 -0
  21. numpy-1.10.0.post2/doc/source/reference/arrays.ndarray.rst +622 -0
  22. numpy-1.10.0.post2/doc/source/reference/arrays.scalars.rst +291 -0
  23. numpy-1.10.0.post2/doc/source/reference/c-api.array.rst +3393 -0
  24. numpy-1.10.0.post2/doc/source/reference/c-api.config.rst +103 -0
  25. numpy-1.10.0.post2/doc/source/reference/c-api.coremath.rst +420 -0
  26. numpy-1.10.0.post2/doc/source/reference/c-api.dtype.rst +376 -0
  27. numpy-1.10.0.post2/doc/source/reference/c-api.generalized-ufuncs.rst +191 -0
  28. numpy-1.10.0.post2/doc/source/reference/c-api.iterator.rst +1300 -0
  29. numpy-1.10.0.post2/doc/source/reference/c-api.types-and-structures.rst +1240 -0
  30. numpy-1.10.0.post2/doc/source/reference/c-api.ufunc.rst +413 -0
  31. numpy-1.10.0.post2/doc/source/reference/index.rst +43 -0
  32. numpy-1.10.0.post2/doc/source/reference/internals.code-explanations.rst +615 -0
  33. numpy-1.10.0.post2/doc/source/reference/routines.array-manipulation.rst +115 -0
  34. numpy-1.10.0.post2/doc/source/reference/routines.io.rst +78 -0
  35. numpy-1.10.0.post2/doc/source/reference/routines.linalg.rst +91 -0
  36. numpy-1.10.0.post2/doc/source/reference/routines.ma.rst +407 -0
  37. numpy-1.10.0.post2/doc/source/reference/routines.sort.rst +41 -0
  38. numpy-1.10.0.post2/doc/source/reference/routines.statistics.rst +57 -0
  39. numpy-1.10.0.post2/doc/source/reference/swig.interface-file.rst +1066 -0
  40. numpy-1.10.0.post2/doc/source/reference/swig.testing.rst +167 -0
  41. numpy-1.10.0.post2/doc/source/reference/ufuncs.rst +666 -0
  42. numpy-1.10.0.post2/doc/source/release.rst +20 -0
  43. numpy-1.10.0.post2/doc/source/user/basics.io.genfromtxt.rst +531 -0
  44. numpy-1.10.0.post2/doc/source/user/basics.rec.rst +7 -0
  45. numpy-1.10.0.post2/doc/source/user/c-info.beyond-basics.rst +560 -0
  46. numpy-1.10.0.post2/doc/source/user/c-info.how-to-extend.rst +642 -0
  47. numpy-1.10.0.post2/doc/source/user/c-info.python-as-glue.rst +1177 -0
  48. numpy-1.10.0.post2/doc/source/user/c-info.ufunc-tutorial.rst +1211 -0
  49. numpy-1.10.0.post2/doc/source/user/install.rst +194 -0
  50. numpy-1.10.0.post2/numpy/__init__.py +227 -0
  51. numpy-1.10.0.post2/numpy/_build_utils/README +8 -0
  52. numpy-1.10.0.post2/numpy/_build_utils/apple_accelerate.py +21 -0
  53. numpy-1.10.0.post2/numpy/_build_utils/common.py +138 -0
  54. numpy-1.10.0.post2/numpy/_build_utils/src/apple_sgemv_fix.c +227 -0
  55. numpy-1.10.0.post2/numpy/_build_utils/waf.py +531 -0
  56. numpy-1.10.0.post2/numpy/_import_tools.py +353 -0
  57. numpy-1.10.0.post2/numpy/add_newdocs.py +7611 -0
  58. numpy-1.10.0.post2/numpy/compat/_inspect.py +194 -0
  59. numpy-1.10.0.post2/numpy/compat/py3k.py +88 -0
  60. numpy-1.10.0.post2/numpy/compat/setup.py +12 -0
  61. numpy-1.10.0.post2/numpy/core/__init__.py +89 -0
  62. numpy-1.10.0.post2/numpy/core/_internal.py +761 -0
  63. numpy-1.10.0.post2/numpy/core/_methods.py +133 -0
  64. numpy-1.10.0.post2/numpy/core/arrayprint.py +760 -0
  65. numpy-1.10.0.post2/numpy/core/code_generators/cversions.txt +34 -0
  66. numpy-1.10.0.post2/numpy/core/code_generators/generate_ufunc_api.py +219 -0
  67. numpy-1.10.0.post2/numpy/core/code_generators/generate_umath.py +1017 -0
  68. numpy-1.10.0.post2/numpy/core/code_generators/numpy_api.py +415 -0
  69. numpy-1.10.0.post2/numpy/core/code_generators/ufunc_docstrings.py +3442 -0
  70. numpy-1.10.0.post2/numpy/core/defchararray.py +2689 -0
  71. numpy-1.10.0.post2/numpy/core/fromnumeric.py +3089 -0
  72. numpy-1.10.0.post2/numpy/core/function_base.py +203 -0
  73. numpy-1.10.0.post2/numpy/core/getlimits.py +308 -0
  74. numpy-1.10.0.post2/numpy/core/include/numpy/ndarrayobject.h +246 -0
  75. numpy-1.10.0.post2/numpy/core/include/numpy/ndarraytypes.h +1797 -0
  76. numpy-1.10.0.post2/numpy/core/include/numpy/npy_3kcompat.h +448 -0
  77. numpy-1.10.0.post2/numpy/core/include/numpy/npy_common.h +1051 -0
  78. numpy-1.10.0.post2/numpy/core/include/numpy/npy_cpu.h +92 -0
  79. numpy-1.10.0.post2/numpy/core/include/numpy/npy_endian.h +61 -0
  80. numpy-1.10.0.post2/numpy/core/include/numpy/npy_math.h +525 -0
  81. numpy-1.10.0.post2/numpy/core/include/numpy/numpyconfig.h +36 -0
  82. numpy-1.10.0.post2/numpy/core/machar.py +342 -0
  83. numpy-1.10.0.post2/numpy/core/memmap.py +311 -0
  84. numpy-1.10.0.post2/numpy/core/numeric.py +2893 -0
  85. numpy-1.10.0.post2/numpy/core/numerictypes.py +1036 -0
  86. numpy-1.10.0.post2/numpy/core/records.py +846 -0
  87. numpy-1.10.0.post2/numpy/core/setup.py +983 -0
  88. numpy-1.10.0.post2/numpy/core/setup_common.py +352 -0
  89. numpy-1.10.0.post2/numpy/core/shape_base.py +350 -0
  90. numpy-1.10.0.post2/numpy/core/src/multiarray/alloc.c +244 -0
  91. numpy-1.10.0.post2/numpy/core/src/multiarray/arrayobject.c +1858 -0
  92. numpy-1.10.0.post2/numpy/core/src/multiarray/arraytypes.c.src +4738 -0
  93. numpy-1.10.0.post2/numpy/core/src/multiarray/arraytypes.h +37 -0
  94. numpy-1.10.0.post2/numpy/core/src/multiarray/buffer.c +981 -0
  95. numpy-1.10.0.post2/numpy/core/src/multiarray/calculation.c +1224 -0
  96. numpy-1.10.0.post2/numpy/core/src/multiarray/cblasfuncs.c +812 -0
  97. numpy-1.10.0.post2/numpy/core/src/multiarray/cblasfuncs.h +10 -0
  98. numpy-1.10.0.post2/numpy/core/src/multiarray/common.c +911 -0
  99. numpy-1.10.0.post2/numpy/core/src/multiarray/common.h +250 -0
  100. numpy-1.10.0.post2/numpy/core/src/multiarray/compiled_base.c +1664 -0
  101. numpy-1.10.0.post2/numpy/core/src/multiarray/compiled_base.h +24 -0
  102. numpy-1.10.0.post2/numpy/core/src/multiarray/conversion_utils.c +1217 -0
  103. numpy-1.10.0.post2/numpy/core/src/multiarray/convert.c +590 -0
  104. numpy-1.10.0.post2/numpy/core/src/multiarray/convert_datatype.c +2155 -0
  105. numpy-1.10.0.post2/numpy/core/src/multiarray/ctors.c +3838 -0
  106. numpy-1.10.0.post2/numpy/core/src/multiarray/datetime.c +3821 -0
  107. numpy-1.10.0.post2/numpy/core/src/multiarray/datetime_busday.c +1322 -0
  108. numpy-1.10.0.post2/numpy/core/src/multiarray/datetime_busdaycal.c +552 -0
  109. numpy-1.10.0.post2/numpy/core/src/multiarray/datetime_strings.c +1772 -0
  110. numpy-1.10.0.post2/numpy/core/src/multiarray/descriptor.c +3719 -0
  111. numpy-1.10.0.post2/numpy/core/src/multiarray/dtype_transfer.c +4239 -0
  112. numpy-1.10.0.post2/numpy/core/src/multiarray/einsum.c.src +3005 -0
  113. numpy-1.10.0.post2/numpy/core/src/multiarray/getset.c +986 -0
  114. numpy-1.10.0.post2/numpy/core/src/multiarray/hashdescr.c +318 -0
  115. numpy-1.10.0.post2/numpy/core/src/multiarray/item_selection.c +2413 -0
  116. numpy-1.10.0.post2/numpy/core/src/multiarray/iterators.c +2192 -0
  117. numpy-1.10.0.post2/numpy/core/src/multiarray/lowlevel_strided_loops.c.src +1769 -0
  118. numpy-1.10.0.post2/numpy/core/src/multiarray/mapping.c +3380 -0
  119. numpy-1.10.0.post2/numpy/core/src/multiarray/mapping.h +77 -0
  120. numpy-1.10.0.post2/numpy/core/src/multiarray/methods.c +2514 -0
  121. numpy-1.10.0.post2/numpy/core/src/multiarray/multiarray_tests.c.src +1035 -0
  122. numpy-1.10.0.post2/numpy/core/src/multiarray/multiarraymodule.c +4628 -0
  123. numpy-1.10.0.post2/numpy/core/src/multiarray/multiarraymodule.h +15 -0
  124. numpy-1.10.0.post2/numpy/core/src/multiarray/nditer_api.c +2809 -0
  125. numpy-1.10.0.post2/numpy/core/src/multiarray/nditer_constr.c +3160 -0
  126. numpy-1.10.0.post2/numpy/core/src/multiarray/nditer_pywrap.c +2499 -0
  127. numpy-1.10.0.post2/numpy/core/src/multiarray/number.c +1106 -0
  128. numpy-1.10.0.post2/numpy/core/src/multiarray/number.h +77 -0
  129. numpy-1.10.0.post2/numpy/core/src/multiarray/numpymemoryview.c +308 -0
  130. numpy-1.10.0.post2/numpy/core/src/multiarray/numpyos.c +683 -0
  131. numpy-1.10.0.post2/numpy/core/src/multiarray/scalarapi.c +870 -0
  132. numpy-1.10.0.post2/numpy/core/src/multiarray/scalartypes.c.src +4343 -0
  133. numpy-1.10.0.post2/numpy/core/src/multiarray/scalartypes.h +55 -0
  134. numpy-1.10.0.post2/numpy/core/src/multiarray/shape.c +1131 -0
  135. numpy-1.10.0.post2/numpy/core/src/multiarray/ucsnarrow.c +174 -0
  136. numpy-1.10.0.post2/numpy/core/src/multiarray/vdot.c +180 -0
  137. numpy-1.10.0.post2/numpy/core/src/multiarray/vdot.h +18 -0
  138. numpy-1.10.0.post2/numpy/core/src/npymath/ieee754.c.src +808 -0
  139. numpy-1.10.0.post2/numpy/core/src/npymath/npy_math.c.src +597 -0
  140. numpy-1.10.0.post2/numpy/core/src/npymath/npy_math_complex.c.src +1788 -0
  141. numpy-1.10.0.post2/numpy/core/src/npymath/npy_math_private.h +544 -0
  142. numpy-1.10.0.post2/numpy/core/src/npysort/heapsort.c.src +402 -0
  143. numpy-1.10.0.post2/numpy/core/src/npysort/mergesort.c.src +488 -0
  144. numpy-1.10.0.post2/numpy/core/src/npysort/npysort_common.h +360 -0
  145. numpy-1.10.0.post2/numpy/core/src/npysort/quicksort.c.src +523 -0
  146. numpy-1.10.0.post2/numpy/core/src/npysort/selection.c.src +426 -0
  147. numpy-1.10.0.post2/numpy/core/src/private/npy_cblas.h +584 -0
  148. numpy-1.10.0.post2/numpy/core/src/private/npy_config.h +101 -0
  149. numpy-1.10.0.post2/numpy/core/src/private/npy_import.h +32 -0
  150. numpy-1.10.0.post2/numpy/core/src/private/npy_partition.h.src +122 -0
  151. numpy-1.10.0.post2/numpy/core/src/private/npy_sort.h +196 -0
  152. numpy-1.10.0.post2/numpy/core/src/private/templ_common.h.src +43 -0
  153. numpy-1.10.0.post2/numpy/core/src/private/ufunc_override.h +397 -0
  154. numpy-1.10.0.post2/numpy/core/src/umath/funcs.inc.src +356 -0
  155. numpy-1.10.0.post2/numpy/core/src/umath/loops.c.src +2675 -0
  156. numpy-1.10.0.post2/numpy/core/src/umath/loops.h.src +497 -0
  157. numpy-1.10.0.post2/numpy/core/src/umath/operand_flag_tests.c.src +105 -0
  158. numpy-1.10.0.post2/numpy/core/src/umath/scalarmath.c.src +1738 -0
  159. numpy-1.10.0.post2/numpy/core/src/umath/simd.inc.src +903 -0
  160. numpy-1.10.0.post2/numpy/core/src/umath/test_rational.c.src +1404 -0
  161. numpy-1.10.0.post2/numpy/core/src/umath/ufunc_object.c +5703 -0
  162. numpy-1.10.0.post2/numpy/core/src/umath/ufunc_type_resolution.c +2159 -0
  163. numpy-1.10.0.post2/numpy/core/src/umath/umath_tests.c.src +392 -0
  164. numpy-1.10.0.post2/numpy/core/src/umath/umathmodule.c +443 -0
  165. numpy-1.10.0.post2/numpy/core/tests/test_abc.py +47 -0
  166. numpy-1.10.0.post2/numpy/core/tests/test_api.py +515 -0
  167. numpy-1.10.0.post2/numpy/core/tests/test_arrayprint.py +171 -0
  168. numpy-1.10.0.post2/numpy/core/tests/test_datetime.py +1820 -0
  169. numpy-1.10.0.post2/numpy/core/tests/test_defchararray.py +703 -0
  170. numpy-1.10.0.post2/numpy/core/tests/test_deprecations.py +619 -0
  171. numpy-1.10.0.post2/numpy/core/tests/test_dtype.py +578 -0
  172. numpy-1.10.0.post2/numpy/core/tests/test_einsum.py +627 -0
  173. numpy-1.10.0.post2/numpy/core/tests/test_errstate.py +52 -0
  174. numpy-1.10.0.post2/numpy/core/tests/test_function_base.py +142 -0
  175. numpy-1.10.0.post2/numpy/core/tests/test_getlimits.py +77 -0
  176. numpy-1.10.0.post2/numpy/core/tests/test_half.py +436 -0
  177. numpy-1.10.0.post2/numpy/core/tests/test_indexerrors.py +126 -0
  178. numpy-1.10.0.post2/numpy/core/tests/test_indexing.py +1047 -0
  179. numpy-1.10.0.post2/numpy/core/tests/test_item_selection.py +73 -0
  180. numpy-1.10.0.post2/numpy/core/tests/test_machar.py +29 -0
  181. numpy-1.10.0.post2/numpy/core/tests/test_memmap.py +130 -0
  182. numpy-1.10.0.post2/numpy/core/tests/test_multiarray.py +5924 -0
  183. numpy-1.10.0.post2/numpy/core/tests/test_multiarray_assignment.py +84 -0
  184. numpy-1.10.0.post2/numpy/core/tests/test_nditer.py +2638 -0
  185. numpy-1.10.0.post2/numpy/core/tests/test_numeric.py +2204 -0
  186. numpy-1.10.0.post2/numpy/core/tests/test_numerictypes.py +382 -0
  187. numpy-1.10.0.post2/numpy/core/tests/test_print.py +248 -0
  188. numpy-1.10.0.post2/numpy/core/tests/test_records.py +299 -0
  189. numpy-1.10.0.post2/numpy/core/tests/test_regression.py +2177 -0
  190. numpy-1.10.0.post2/numpy/core/tests/test_scalarinherit.py +41 -0
  191. numpy-1.10.0.post2/numpy/core/tests/test_scalarmath.py +316 -0
  192. numpy-1.10.0.post2/numpy/core/tests/test_shape_base.py +319 -0
  193. numpy-1.10.0.post2/numpy/core/tests/test_ufunc.py +1227 -0
  194. numpy-1.10.0.post2/numpy/core/tests/test_umath.py +1933 -0
  195. numpy-1.10.0.post2/numpy/core/tests/test_umath_complex.py +538 -0
  196. numpy-1.10.0.post2/numpy/core/tests/test_unicode.py +360 -0
  197. numpy-1.10.0.post2/numpy/distutils/__init__.py +23 -0
  198. numpy-1.10.0.post2/numpy/distutils/ccompiler.py +690 -0
  199. numpy-1.10.0.post2/numpy/distutils/command/autodist.py +94 -0
  200. numpy-1.10.0.post2/numpy/distutils/command/build.py +47 -0
  201. numpy-1.10.0.post2/numpy/distutils/command/build_clib.py +295 -0
  202. numpy-1.10.0.post2/numpy/distutils/command/build_ext.py +522 -0
  203. numpy-1.10.0.post2/numpy/distutils/command/config.py +437 -0
  204. numpy-1.10.0.post2/numpy/distutils/exec_command.py +651 -0
  205. numpy-1.10.0.post2/numpy/distutils/fcompiler/compaq.py +128 -0
  206. numpy-1.10.0.post2/numpy/distutils/fcompiler/gnu.py +403 -0
  207. numpy-1.10.0.post2/numpy/distutils/fcompiler/intel.py +217 -0
  208. numpy-1.10.0.post2/numpy/distutils/fcompiler/pg.py +63 -0
  209. numpy-1.10.0.post2/numpy/distutils/fcompiler/sun.py +55 -0
  210. numpy-1.10.0.post2/numpy/distutils/intelccompiler.py +95 -0
  211. numpy-1.10.0.post2/numpy/distutils/lib2def.py +116 -0
  212. numpy-1.10.0.post2/numpy/distutils/mingw32ccompiler.py +599 -0
  213. numpy-1.10.0.post2/numpy/distutils/misc_util.py +2306 -0
  214. numpy-1.10.0.post2/numpy/distutils/msvc9compiler.py +23 -0
  215. numpy-1.10.0.post2/numpy/distutils/msvccompiler.py +17 -0
  216. numpy-1.10.0.post2/numpy/distutils/npy_pkg_config.py +451 -0
  217. numpy-1.10.0.post2/numpy/distutils/system_info.py +2397 -0
  218. numpy-1.10.0.post2/numpy/distutils/tests/f2py_ext/tests/test_fib2.py +12 -0
  219. numpy-1.10.0.post2/numpy/distutils/tests/f2py_f90_ext/tests/test_foo.py +11 -0
  220. numpy-1.10.0.post2/numpy/distutils/tests/gen_ext/tests/test_fib3.py +11 -0
  221. numpy-1.10.0.post2/numpy/distutils/tests/pyrex_ext/tests/test_primes.py +13 -0
  222. numpy-1.10.0.post2/numpy/distutils/tests/swig_ext/__init__.py +1 -0
  223. numpy-1.10.0.post2/numpy/distutils/tests/swig_ext/tests/test_example.py +17 -0
  224. numpy-1.10.0.post2/numpy/distutils/tests/swig_ext/tests/test_example2.py +15 -0
  225. numpy-1.10.0.post2/numpy/distutils/tests/test_fcompiler_gnu.py +60 -0
  226. numpy-1.10.0.post2/numpy/distutils/tests/test_fcompiler_intel.py +36 -0
  227. numpy-1.10.0.post2/numpy/distutils/tests/test_misc_util.py +79 -0
  228. numpy-1.10.0.post2/numpy/distutils/tests/test_npy_pkg_config.py +102 -0
  229. numpy-1.10.0.post2/numpy/distutils/tests/test_system_info.py +209 -0
  230. numpy-1.10.0.post2/numpy/distutils/unixccompiler.py +125 -0
  231. numpy-1.10.0.post2/numpy/doc/byteswapping.py +156 -0
  232. numpy-1.10.0.post2/numpy/doc/creation.py +144 -0
  233. numpy-1.10.0.post2/numpy/doc/glossary.py +423 -0
  234. numpy-1.10.0.post2/numpy/doc/indexing.py +439 -0
  235. numpy-1.10.0.post2/numpy/doc/structured_arrays.py +290 -0
  236. numpy-1.10.0.post2/numpy/f2py/__init__.py +49 -0
  237. numpy-1.10.0.post2/numpy/f2py/__main__.py +25 -0
  238. numpy-1.10.0.post2/numpy/f2py/auxfuncs.py +858 -0
  239. numpy-1.10.0.post2/numpy/f2py/capi_maps.py +851 -0
  240. numpy-1.10.0.post2/numpy/f2py/cb_rules.py +554 -0
  241. numpy-1.10.0.post2/numpy/f2py/cfuncs.py +1261 -0
  242. numpy-1.10.0.post2/numpy/f2py/common_rules.py +150 -0
  243. numpy-1.10.0.post2/numpy/f2py/crackfortran.py +3314 -0
  244. numpy-1.10.0.post2/numpy/f2py/diagnose.py +156 -0
  245. numpy-1.10.0.post2/numpy/f2py/f2py2e.py +656 -0
  246. numpy-1.10.0.post2/numpy/f2py/f2py_testing.py +48 -0
  247. numpy-1.10.0.post2/numpy/f2py/f90mod_rules.py +272 -0
  248. numpy-1.10.0.post2/numpy/f2py/func2subr.py +299 -0
  249. numpy-1.10.0.post2/numpy/f2py/rules.py +1475 -0
  250. numpy-1.10.0.post2/numpy/f2py/setup.py +117 -0
  251. numpy-1.10.0.post2/numpy/f2py/src/fortranobject.c +1037 -0
  252. numpy-1.10.0.post2/numpy/f2py/src/fortranobject.h +162 -0
  253. numpy-1.10.0.post2/numpy/f2py/tests/src/array_from_pyobj/wrapmodule.c +223 -0
  254. numpy-1.10.0.post2/numpy/f2py/tests/test_array_from_pyobj.py +593 -0
  255. numpy-1.10.0.post2/numpy/f2py/tests/test_assumed_shape.py +35 -0
  256. numpy-1.10.0.post2/numpy/f2py/tests/test_callback.py +136 -0
  257. numpy-1.10.0.post2/numpy/f2py/tests/test_kind.py +36 -0
  258. numpy-1.10.0.post2/numpy/f2py/tests/test_mixed.py +40 -0
  259. numpy-1.10.0.post2/numpy/f2py/tests/test_regression.py +34 -0
  260. numpy-1.10.0.post2/numpy/f2py/tests/test_return_character.py +148 -0
  261. numpy-1.10.0.post2/numpy/f2py/tests/test_return_complex.py +170 -0
  262. numpy-1.10.0.post2/numpy/f2py/tests/test_return_integer.py +180 -0
  263. numpy-1.10.0.post2/numpy/f2py/tests/test_return_logical.py +189 -0
  264. numpy-1.10.0.post2/numpy/f2py/tests/test_return_real.py +206 -0
  265. numpy-1.10.0.post2/numpy/f2py/tests/test_size.py +44 -0
  266. numpy-1.10.0.post2/numpy/f2py/tests/util.py +367 -0
  267. numpy-1.10.0.post2/numpy/f2py/use_rules.py +115 -0
  268. numpy-1.10.0.post2/numpy/fft/fftpack.c +1501 -0
  269. numpy-1.10.0.post2/numpy/fft/fftpack.h +28 -0
  270. numpy-1.10.0.post2/numpy/fft/fftpack.py +1241 -0
  271. numpy-1.10.0.post2/numpy/fft/fftpack_litemodule.c +363 -0
  272. numpy-1.10.0.post2/numpy/fft/info.py +187 -0
  273. numpy-1.10.0.post2/numpy/fft/setup.py +19 -0
  274. numpy-1.10.0.post2/numpy/fft/tests/test_fftpack.py +166 -0
  275. numpy-1.10.0.post2/numpy/fft/tests/test_helper.py +78 -0
  276. numpy-1.10.0.post2/numpy/lib/_iotools.py +917 -0
  277. numpy-1.10.0.post2/numpy/lib/arraypad.py +1497 -0
  278. numpy-1.10.0.post2/numpy/lib/arraysetops.py +480 -0
  279. numpy-1.10.0.post2/numpy/lib/arrayterator.py +226 -0
  280. numpy-1.10.0.post2/numpy/lib/financial.py +737 -0
  281. numpy-1.10.0.post2/numpy/lib/format.py +814 -0
  282. numpy-1.10.0.post2/numpy/lib/function_base.py +4150 -0
  283. numpy-1.10.0.post2/numpy/lib/index_tricks.py +874 -0
  284. numpy-1.10.0.post2/numpy/lib/info.py +152 -0
  285. numpy-1.10.0.post2/numpy/lib/nanfunctions.py +1237 -0
  286. numpy-1.10.0.post2/numpy/lib/npyio.py +1992 -0
  287. numpy-1.10.0.post2/numpy/lib/polynomial.py +1277 -0
  288. numpy-1.10.0.post2/numpy/lib/recfunctions.py +1003 -0
  289. numpy-1.10.0.post2/numpy/lib/setup.py +12 -0
  290. numpy-1.10.0.post2/numpy/lib/shape_base.py +872 -0
  291. numpy-1.10.0.post2/numpy/lib/stride_tricks.py +200 -0
  292. numpy-1.10.0.post2/numpy/lib/tests/data/py2-objarr.npy +0 -0
  293. numpy-1.10.0.post2/numpy/lib/tests/data/py2-objarr.npz +0 -0
  294. numpy-1.10.0.post2/numpy/lib/tests/data/py3-objarr.npy +0 -0
  295. numpy-1.10.0.post2/numpy/lib/tests/data/py3-objarr.npz +0 -0
  296. numpy-1.10.0.post2/numpy/lib/tests/test__iotools.py +348 -0
  297. numpy-1.10.0.post2/numpy/lib/tests/test__version.py +70 -0
  298. numpy-1.10.0.post2/numpy/lib/tests/test_arraypad.py +1047 -0
  299. numpy-1.10.0.post2/numpy/lib/tests/test_arraysetops.py +309 -0
  300. numpy-1.10.0.post2/numpy/lib/tests/test_financial.py +163 -0
  301. numpy-1.10.0.post2/numpy/lib/tests/test_format.py +841 -0
  302. numpy-1.10.0.post2/numpy/lib/tests/test_function_base.py +2555 -0
  303. numpy-1.10.0.post2/numpy/lib/tests/test_index_tricks.py +326 -0
  304. numpy-1.10.0.post2/numpy/lib/tests/test_io.py +1916 -0
  305. numpy-1.10.0.post2/numpy/lib/tests/test_nanfunctions.py +707 -0
  306. numpy-1.10.0.post2/numpy/lib/tests/test_packbits.py +26 -0
  307. numpy-1.10.0.post2/numpy/lib/tests/test_polynomial.py +188 -0
  308. numpy-1.10.0.post2/numpy/lib/tests/test_recfunctions.py +734 -0
  309. numpy-1.10.0.post2/numpy/lib/tests/test_shape_base.py +386 -0
  310. numpy-1.10.0.post2/numpy/lib/tests/test_stride_tricks.py +405 -0
  311. numpy-1.10.0.post2/numpy/lib/tests/test_twodim_base.py +535 -0
  312. numpy-1.10.0.post2/numpy/lib/tests/test_type_check.py +332 -0
  313. numpy-1.10.0.post2/numpy/lib/twodim_base.py +1007 -0
  314. numpy-1.10.0.post2/numpy/lib/type_check.py +596 -0
  315. numpy-1.10.0.post2/numpy/lib/utils.py +1122 -0
  316. numpy-1.10.0.post2/numpy/linalg/lapack_lite/python_xerbla.c +46 -0
  317. numpy-1.10.0.post2/numpy/linalg/lapack_litemodule.c +358 -0
  318. numpy-1.10.0.post2/numpy/linalg/linalg.py +2406 -0
  319. numpy-1.10.0.post2/numpy/linalg/tests/test_build.py +59 -0
  320. numpy-1.10.0.post2/numpy/linalg/tests/test_linalg.py +1351 -0
  321. numpy-1.10.0.post2/numpy/linalg/tests/test_regression.py +95 -0
  322. numpy-1.10.0.post2/numpy/linalg/umath_linalg.c.src +3236 -0
  323. numpy-1.10.0.post2/numpy/ma/__init__.py +56 -0
  324. numpy-1.10.0.post2/numpy/ma/bench.py +131 -0
  325. numpy-1.10.0.post2/numpy/ma/core.py +7608 -0
  326. numpy-1.10.0.post2/numpy/ma/extras.py +1953 -0
  327. numpy-1.10.0.post2/numpy/ma/mrecords.py +796 -0
  328. numpy-1.10.0.post2/numpy/ma/setup.py +13 -0
  329. numpy-1.10.0.post2/numpy/ma/tests/test_core.py +4100 -0
  330. numpy-1.10.0.post2/numpy/ma/tests/test_extras.py +1132 -0
  331. numpy-1.10.0.post2/numpy/ma/tests/test_mrecords.py +520 -0
  332. numpy-1.10.0.post2/numpy/ma/tests/test_old_ma.py +879 -0
  333. numpy-1.10.0.post2/numpy/ma/tests/test_regression.py +80 -0
  334. numpy-1.10.0.post2/numpy/ma/tests/test_subclassing.py +338 -0
  335. numpy-1.10.0.post2/numpy/ma/testutils.py +289 -0
  336. numpy-1.10.0.post2/numpy/ma/timer_comparison.py +440 -0
  337. numpy-1.10.0.post2/numpy/matlib.py +358 -0
  338. numpy-1.10.0.post2/numpy/matrixlib/defmatrix.py +1232 -0
  339. numpy-1.10.0.post2/numpy/matrixlib/tests/test_defmatrix.py +449 -0
  340. numpy-1.10.0.post2/numpy/matrixlib/tests/test_multiarray.py +23 -0
  341. numpy-1.10.0.post2/numpy/matrixlib/tests/test_numeric.py +23 -0
  342. numpy-1.10.0.post2/numpy/matrixlib/tests/test_regression.py +37 -0
  343. numpy-1.10.0.post2/numpy/polynomial/_polybase.py +962 -0
  344. numpy-1.10.0.post2/numpy/polynomial/chebyshev.py +2056 -0
  345. numpy-1.10.0.post2/numpy/polynomial/hermite.py +1831 -0
  346. numpy-1.10.0.post2/numpy/polynomial/hermite_e.py +1828 -0
  347. numpy-1.10.0.post2/numpy/polynomial/laguerre.py +1780 -0
  348. numpy-1.10.0.post2/numpy/polynomial/legendre.py +1808 -0
  349. numpy-1.10.0.post2/numpy/polynomial/polyutils.py +403 -0
  350. numpy-1.10.0.post2/numpy/random/mtrand/distributions.c +912 -0
  351. numpy-1.10.0.post2/numpy/random/mtrand/mtrand.c +34805 -0
  352. numpy-1.10.0.post2/numpy/random/mtrand/mtrand.pyx +4766 -0
  353. numpy-1.10.0.post2/numpy/random/setup.py +61 -0
  354. numpy-1.10.0.post2/numpy/random/tests/test_random.py +723 -0
  355. numpy-1.10.0.post2/numpy/random/tests/test_regression.py +117 -0
  356. numpy-1.10.0.post2/numpy/setup.py +29 -0
  357. numpy-1.10.0.post2/numpy/testing/__init__.py +15 -0
  358. numpy-1.10.0.post2/numpy/testing/decorators.py +271 -0
  359. numpy-1.10.0.post2/numpy/testing/noseclasses.py +353 -0
  360. numpy-1.10.0.post2/numpy/testing/nosetester.py +511 -0
  361. numpy-1.10.0.post2/numpy/testing/print_coercion_tables.py +91 -0
  362. numpy-1.10.0.post2/numpy/testing/setup.py +20 -0
  363. numpy-1.10.0.post2/numpy/testing/tests/test_decorators.py +182 -0
  364. numpy-1.10.0.post2/numpy/testing/tests/test_utils.py +781 -0
  365. numpy-1.10.0.post2/numpy/testing/utils.py +1831 -0
  366. numpy-1.10.0.post2/numpy/tests/test_ctypeslib.py +106 -0
  367. numpy-1.10.0.post2/numpy/tests/test_matlib.py +55 -0
  368. numpy-1.10.0.post2/numpy/tests/test_scripts.py +69 -0
  369. numpy-1.10.0.post2/numpy/version.py +10 -0
  370. numpy-1.10.0.post2/setup.py +260 -0
  371. numpy-1.10.0.post2/site.cfg.example +193 -0
  372. numpy-1.10.0.post2/tmp.txt +789 -0
  373. numpy-1.10.0.post2/tools/swig/README +145 -0
  374. numpy-1.10.0.post2/tools/swig/numpy.i +3161 -0
  375. numpy-1.10.0.post2/tools/swig/test/Array.i +135 -0
  376. numpy-1.10.0.post2/tools/swig/test/ArrayZ.cxx +131 -0
  377. numpy-1.10.0.post2/tools/swig/test/ArrayZ.h +56 -0
  378. numpy-1.10.0.post2/tools/swig/test/Flat.cxx +36 -0
  379. numpy-1.10.0.post2/tools/swig/test/Flat.h +34 -0
  380. numpy-1.10.0.post2/tools/swig/test/Flat.i +36 -0
  381. numpy-1.10.0.post2/tools/swig/test/Makefile +37 -0
  382. numpy-1.10.0.post2/tools/swig/test/setup.py +71 -0
  383. numpy-1.10.0.post2/tools/swig/test/testArray.py +385 -0
  384. numpy-1.10.0.post2/tools/swig/test/testFarray.py +159 -0
  385. numpy-1.10.0.post2/tools/swig/test/testFlat.py +200 -0
  386. numpy-1.10.0.post2/tools/swig/test/testFortran.py +173 -0
  387. numpy-1.10.0.post2/tools/swig/test/testMatrix.py +362 -0
  388. numpy-1.10.0.post2/tools/swig/test/testSuperTensor.py +388 -0
  389. numpy-1.10.0.post2/tools/swig/test/testTensor.py +402 -0
  390. numpy-1.10.0.post2/tools/swig/test/testVector.py +381 -0
  391. numpy-1.9.3/INSTALL.txt +0 -138
  392. numpy-1.9.3/LICENSE.txt +0 -30
  393. numpy-1.9.3/MANIFEST.in +0 -26
  394. numpy-1.9.3/PKG-INFO +0 -39
  395. numpy-1.9.3/doc/release/1.9.3-notes.rst +0 -23
  396. numpy-1.9.3/doc/source/conf.py +0 -331
  397. numpy-1.9.3/doc/source/dev/gitwash/branch_list.png +0 -0
  398. numpy-1.9.3/doc/source/dev/gitwash/branch_list_compare.png +0 -0
  399. numpy-1.9.3/doc/source/dev/gitwash/development_workflow.rst +0 -568
  400. numpy-1.9.3/doc/source/dev/gitwash/git_links.inc +0 -88
  401. numpy-1.9.3/doc/source/dev/gitwash/index.rst +0 -14
  402. numpy-1.9.3/doc/source/dev/index.rst +0 -10
  403. numpy-1.9.3/doc/source/reference/arrays.classes.rst +0 -427
  404. numpy-1.9.3/doc/source/reference/arrays.dtypes.rst +0 -534
  405. numpy-1.9.3/doc/source/reference/arrays.indexing.rst +0 -550
  406. numpy-1.9.3/doc/source/reference/arrays.interface.rst +0 -336
  407. numpy-1.9.3/doc/source/reference/arrays.ndarray.rst +0 -609
  408. numpy-1.9.3/doc/source/reference/arrays.scalars.rst +0 -291
  409. numpy-1.9.3/doc/source/reference/c-api.array.rst +0 -3362
  410. numpy-1.9.3/doc/source/reference/c-api.config.rst +0 -103
  411. numpy-1.9.3/doc/source/reference/c-api.coremath.rst +0 -420
  412. numpy-1.9.3/doc/source/reference/c-api.dtype.rst +0 -376
  413. numpy-1.9.3/doc/source/reference/c-api.generalized-ufuncs.rst +0 -171
  414. numpy-1.9.3/doc/source/reference/c-api.iterator.rst +0 -1298
  415. numpy-1.9.3/doc/source/reference/c-api.types-and-structures.rst +0 -1204
  416. numpy-1.9.3/doc/source/reference/c-api.ufunc.rst +0 -399
  417. numpy-1.9.3/doc/source/reference/index.rst +0 -44
  418. numpy-1.9.3/doc/source/reference/internals.code-explanations.rst +0 -666
  419. numpy-1.9.3/doc/source/reference/routines.array-manipulation.rst +0 -113
  420. numpy-1.9.3/doc/source/reference/routines.io.rst +0 -74
  421. numpy-1.9.3/doc/source/reference/routines.linalg.rst +0 -88
  422. numpy-1.9.3/doc/source/reference/routines.ma.rst +0 -405
  423. numpy-1.9.3/doc/source/reference/routines.sort.rst +0 -42
  424. numpy-1.9.3/doc/source/reference/routines.statistics.rst +0 -55
  425. numpy-1.9.3/doc/source/reference/swig.interface-file.rst +0 -1055
  426. numpy-1.9.3/doc/source/reference/swig.testing.rst +0 -166
  427. numpy-1.9.3/doc/source/reference/ufuncs.rst +0 -651
  428. numpy-1.9.3/doc/source/release.rst +0 -19
  429. numpy-1.9.3/doc/source/user/basics.io.genfromtxt.rst +0 -531
  430. numpy-1.9.3/doc/source/user/basics.rec.rst +0 -7
  431. numpy-1.9.3/doc/source/user/c-info.beyond-basics.rst +0 -560
  432. numpy-1.9.3/doc/source/user/c-info.how-to-extend.rst +0 -642
  433. numpy-1.9.3/doc/source/user/c-info.python-as-glue.rst +0 -1528
  434. numpy-1.9.3/doc/source/user/c-info.ufunc-tutorial.rst +0 -1211
  435. numpy-1.9.3/doc/source/user/install.rst +0 -180
  436. numpy-1.9.3/numpy/__init__.py +0 -216
  437. numpy-1.9.3/numpy/_import_tools.py +0 -348
  438. numpy-1.9.3/numpy/add_newdocs.py +0 -7518
  439. numpy-1.9.3/numpy/compat/_inspect.py +0 -221
  440. numpy-1.9.3/numpy/compat/py3k.py +0 -89
  441. numpy-1.9.3/numpy/compat/setup.py +0 -12
  442. numpy-1.9.3/numpy/core/__init__.py +0 -78
  443. numpy-1.9.3/numpy/core/_internal.py +0 -570
  444. numpy-1.9.3/numpy/core/_methods.py +0 -134
  445. numpy-1.9.3/numpy/core/arrayprint.py +0 -752
  446. numpy-1.9.3/numpy/core/blasdot/_dotblas.c +0 -1255
  447. numpy-1.9.3/numpy/core/blasdot/apple_sgemv_patch.c +0 -216
  448. numpy-1.9.3/numpy/core/blasdot/cblas.h +0 -578
  449. numpy-1.9.3/numpy/core/code_generators/cversions.txt +0 -31
  450. numpy-1.9.3/numpy/core/code_generators/generate_ufunc_api.py +0 -219
  451. numpy-1.9.3/numpy/core/code_generators/generate_umath.py +0 -972
  452. numpy-1.9.3/numpy/core/code_generators/numpy_api.py +0 -412
  453. numpy-1.9.3/numpy/core/code_generators/ufunc_docstrings.py +0 -3419
  454. numpy-1.9.3/numpy/core/defchararray.py +0 -2687
  455. numpy-1.9.3/numpy/core/fromnumeric.py +0 -2938
  456. numpy-1.9.3/numpy/core/function_base.py +0 -190
  457. numpy-1.9.3/numpy/core/getlimits.py +0 -306
  458. numpy-1.9.3/numpy/core/include/numpy/fenv/fenv.c +0 -38
  459. numpy-1.9.3/numpy/core/include/numpy/fenv/fenv.h +0 -224
  460. numpy-1.9.3/numpy/core/include/numpy/ndarrayobject.h +0 -237
  461. numpy-1.9.3/numpy/core/include/numpy/ndarraytypes.h +0 -1820
  462. numpy-1.9.3/numpy/core/include/numpy/npy_3kcompat.h +0 -506
  463. numpy-1.9.3/numpy/core/include/numpy/npy_common.h +0 -1038
  464. numpy-1.9.3/numpy/core/include/numpy/npy_cpu.h +0 -122
  465. numpy-1.9.3/numpy/core/include/numpy/npy_endian.h +0 -49
  466. numpy-1.9.3/numpy/core/include/numpy/npy_math.h +0 -479
  467. numpy-1.9.3/numpy/core/include/numpy/numpyconfig.h +0 -35
  468. numpy-1.9.3/numpy/core/machar.py +0 -338
  469. numpy-1.9.3/numpy/core/memmap.py +0 -308
  470. numpy-1.9.3/numpy/core/numeric.py +0 -2842
  471. numpy-1.9.3/numpy/core/numerictypes.py +0 -1042
  472. numpy-1.9.3/numpy/core/records.py +0 -804
  473. numpy-1.9.3/numpy/core/setup.py +0 -1016
  474. numpy-1.9.3/numpy/core/setup_common.py +0 -330
  475. numpy-1.9.3/numpy/core/shape_base.py +0 -277
  476. numpy-1.9.3/numpy/core/src/multiarray/alloc.c +0 -241
  477. numpy-1.9.3/numpy/core/src/multiarray/arrayobject.c +0 -1791
  478. numpy-1.9.3/numpy/core/src/multiarray/arraytypes.c.src +0 -4372
  479. numpy-1.9.3/numpy/core/src/multiarray/arraytypes.h +0 -13
  480. numpy-1.9.3/numpy/core/src/multiarray/buffer.c +0 -954
  481. numpy-1.9.3/numpy/core/src/multiarray/calculation.c +0 -1229
  482. numpy-1.9.3/numpy/core/src/multiarray/common.c +0 -798
  483. numpy-1.9.3/numpy/core/src/multiarray/common.h +0 -328
  484. numpy-1.9.3/numpy/core/src/multiarray/conversion_utils.c +0 -1240
  485. numpy-1.9.3/numpy/core/src/multiarray/convert.c +0 -589
  486. numpy-1.9.3/numpy/core/src/multiarray/convert_datatype.c +0 -2199
  487. numpy-1.9.3/numpy/core/src/multiarray/ctors.c +0 -3785
  488. numpy-1.9.3/numpy/core/src/multiarray/datetime.c +0 -3823
  489. numpy-1.9.3/numpy/core/src/multiarray/datetime_busday.c +0 -1322
  490. numpy-1.9.3/numpy/core/src/multiarray/datetime_busdaycal.c +0 -552
  491. numpy-1.9.3/numpy/core/src/multiarray/datetime_strings.c +0 -1772
  492. numpy-1.9.3/numpy/core/src/multiarray/descriptor.c +0 -3658
  493. numpy-1.9.3/numpy/core/src/multiarray/dtype_transfer.c +0 -4232
  494. numpy-1.9.3/numpy/core/src/multiarray/einsum.c.src +0 -3013
  495. numpy-1.9.3/numpy/core/src/multiarray/getset.c +0 -984
  496. numpy-1.9.3/numpy/core/src/multiarray/hashdescr.c +0 -319
  497. numpy-1.9.3/numpy/core/src/multiarray/item_selection.c +0 -2711
  498. numpy-1.9.3/numpy/core/src/multiarray/iterators.c +0 -2160
  499. numpy-1.9.3/numpy/core/src/multiarray/lowlevel_strided_loops.c.src +0 -1767
  500. numpy-1.9.3/numpy/core/src/multiarray/mapping.c +0 -3316
  501. numpy-1.9.3/numpy/core/src/multiarray/mapping.h +0 -73
  502. numpy-1.9.3/numpy/core/src/multiarray/methods.c +0 -2497
  503. numpy-1.9.3/numpy/core/src/multiarray/multiarray_tests.c.src +0 -977
  504. numpy-1.9.3/numpy/core/src/multiarray/multiarraymodule.c +0 -4200
  505. numpy-1.9.3/numpy/core/src/multiarray/multiarraymodule.h +0 -4
  506. numpy-1.9.3/numpy/core/src/multiarray/nditer_api.c +0 -2809
  507. numpy-1.9.3/numpy/core/src/multiarray/nditer_constr.c +0 -3159
  508. numpy-1.9.3/numpy/core/src/multiarray/nditer_pywrap.c +0 -2492
  509. numpy-1.9.3/numpy/core/src/multiarray/number.c +0 -1057
  510. numpy-1.9.3/numpy/core/src/multiarray/number.h +0 -76
  511. numpy-1.9.3/numpy/core/src/multiarray/numpymemoryview.c +0 -309
  512. numpy-1.9.3/numpy/core/src/multiarray/numpyos.c +0 -683
  513. numpy-1.9.3/numpy/core/src/multiarray/scalarapi.c +0 -861
  514. numpy-1.9.3/numpy/core/src/multiarray/scalartypes.c.src +0 -4270
  515. numpy-1.9.3/numpy/core/src/multiarray/scalartypes.h +0 -52
  516. numpy-1.9.3/numpy/core/src/multiarray/shape.c +0 -1141
  517. numpy-1.9.3/numpy/core/src/multiarray/ucsnarrow.c +0 -173
  518. numpy-1.9.3/numpy/core/src/npymath/ieee754.c.src +0 -814
  519. numpy-1.9.3/numpy/core/src/npymath/npy_math.c.src +0 -527
  520. numpy-1.9.3/numpy/core/src/npymath/npy_math_complex.c.src +0 -291
  521. numpy-1.9.3/numpy/core/src/npymath/npy_math_private.h +0 -539
  522. numpy-1.9.3/numpy/core/src/npysort/heapsort.c.src +0 -341
  523. numpy-1.9.3/numpy/core/src/npysort/mergesort.c.src +0 -428
  524. numpy-1.9.3/numpy/core/src/npysort/npysort_common.h +0 -367
  525. numpy-1.9.3/numpy/core/src/npysort/quicksort.c.src +0 -363
  526. numpy-1.9.3/numpy/core/src/npysort/selection.c.src +0 -474
  527. numpy-1.9.3/numpy/core/src/private/npy_config.h +0 -68
  528. numpy-1.9.3/numpy/core/src/private/npy_partition.h.src +0 -138
  529. numpy-1.9.3/numpy/core/src/private/npy_sort.h +0 -194
  530. numpy-1.9.3/numpy/core/src/private/scalarmathmodule.h.src +0 -42
  531. numpy-1.9.3/numpy/core/src/private/ufunc_override.h +0 -384
  532. numpy-1.9.3/numpy/core/src/scalarmathmodule.c.src +0 -1980
  533. numpy-1.9.3/numpy/core/src/umath/funcs.inc.src +0 -715
  534. numpy-1.9.3/numpy/core/src/umath/loops.c.src +0 -2654
  535. numpy-1.9.3/numpy/core/src/umath/loops.h.src +0 -501
  536. numpy-1.9.3/numpy/core/src/umath/operand_flag_tests.c.src +0 -105
  537. numpy-1.9.3/numpy/core/src/umath/simd.inc.src +0 -881
  538. numpy-1.9.3/numpy/core/src/umath/test_rational.c.src +0 -1404
  539. numpy-1.9.3/numpy/core/src/umath/ufunc_object.c +0 -5520
  540. numpy-1.9.3/numpy/core/src/umath/ufunc_type_resolution.c +0 -2164
  541. numpy-1.9.3/numpy/core/src/umath/umath_tests.c.src +0 -341
  542. numpy-1.9.3/numpy/core/src/umath/umathmodule.c +0 -561
  543. numpy-1.9.3/numpy/core/tests/test_abc.py +0 -45
  544. numpy-1.9.3/numpy/core/tests/test_api.py +0 -514
  545. numpy-1.9.3/numpy/core/tests/test_arrayprint.py +0 -167
  546. numpy-1.9.3/numpy/core/tests/test_blasdot.py +0 -249
  547. numpy-1.9.3/numpy/core/tests/test_datetime.py +0 -1781
  548. numpy-1.9.3/numpy/core/tests/test_defchararray.py +0 -642
  549. numpy-1.9.3/numpy/core/tests/test_deprecations.py +0 -512
  550. numpy-1.9.3/numpy/core/tests/test_dtype.py +0 -542
  551. numpy-1.9.3/numpy/core/tests/test_einsum.py +0 -583
  552. numpy-1.9.3/numpy/core/tests/test_errstate.py +0 -51
  553. numpy-1.9.3/numpy/core/tests/test_function_base.py +0 -111
  554. numpy-1.9.3/numpy/core/tests/test_getlimits.py +0 -86
  555. numpy-1.9.3/numpy/core/tests/test_half.py +0 -439
  556. numpy-1.9.3/numpy/core/tests/test_indexerrors.py +0 -127
  557. numpy-1.9.3/numpy/core/tests/test_indexing.py +0 -1014
  558. numpy-1.9.3/numpy/core/tests/test_item_selection.py +0 -70
  559. numpy-1.9.3/numpy/core/tests/test_machar.py +0 -30
  560. numpy-1.9.3/numpy/core/tests/test_memmap.py +0 -127
  561. numpy-1.9.3/numpy/core/tests/test_multiarray.py +0 -4645
  562. numpy-1.9.3/numpy/core/tests/test_multiarray_assignment.py +0 -80
  563. numpy-1.9.3/numpy/core/tests/test_nditer.py +0 -2630
  564. numpy-1.9.3/numpy/core/tests/test_numeric.py +0 -2117
  565. numpy-1.9.3/numpy/core/tests/test_numerictypes.py +0 -377
  566. numpy-1.9.3/numpy/core/tests/test_print.py +0 -245
  567. numpy-1.9.3/numpy/core/tests/test_records.py +0 -185
  568. numpy-1.9.3/numpy/core/tests/test_regression.py +0 -2115
  569. numpy-1.9.3/numpy/core/tests/test_scalarinherit.py +0 -34
  570. numpy-1.9.3/numpy/core/tests/test_scalarmath.py +0 -275
  571. numpy-1.9.3/numpy/core/tests/test_shape_base.py +0 -250
  572. numpy-1.9.3/numpy/core/tests/test_ufunc.py +0 -1153
  573. numpy-1.9.3/numpy/core/tests/test_umath.py +0 -1695
  574. numpy-1.9.3/numpy/core/tests/test_umath_complex.py +0 -537
  575. numpy-1.9.3/numpy/core/tests/test_unicode.py +0 -357
  576. numpy-1.9.3/numpy/distutils/__init__.py +0 -39
  577. numpy-1.9.3/numpy/distutils/ccompiler.py +0 -656
  578. numpy-1.9.3/numpy/distutils/command/autodist.py +0 -43
  579. numpy-1.9.3/numpy/distutils/command/build.py +0 -39
  580. numpy-1.9.3/numpy/distutils/command/build_clib.py +0 -284
  581. numpy-1.9.3/numpy/distutils/command/build_ext.py +0 -515
  582. numpy-1.9.3/numpy/distutils/command/config.py +0 -476
  583. numpy-1.9.3/numpy/distutils/exec_command.py +0 -618
  584. numpy-1.9.3/numpy/distutils/fcompiler/compaq.py +0 -128
  585. numpy-1.9.3/numpy/distutils/fcompiler/gnu.py +0 -390
  586. numpy-1.9.3/numpy/distutils/fcompiler/intel.py +0 -205
  587. numpy-1.9.3/numpy/distutils/fcompiler/pg.py +0 -60
  588. numpy-1.9.3/numpy/distutils/fcompiler/sun.py +0 -52
  589. numpy-1.9.3/numpy/distutils/intelccompiler.py +0 -45
  590. numpy-1.9.3/numpy/distutils/lib2def.py +0 -116
  591. numpy-1.9.3/numpy/distutils/mingw32ccompiler.py +0 -582
  592. numpy-1.9.3/numpy/distutils/misc_util.py +0 -2271
  593. numpy-1.9.3/numpy/distutils/npy_pkg_config.py +0 -464
  594. numpy-1.9.3/numpy/distutils/system_info.py +0 -2319
  595. numpy-1.9.3/numpy/distutils/tests/f2py_ext/tests/test_fib2.py +0 -13
  596. numpy-1.9.3/numpy/distutils/tests/f2py_f90_ext/tests/test_foo.py +0 -12
  597. numpy-1.9.3/numpy/distutils/tests/gen_ext/tests/test_fib3.py +0 -12
  598. numpy-1.9.3/numpy/distutils/tests/pyrex_ext/tests/test_primes.py +0 -14
  599. numpy-1.9.3/numpy/distutils/tests/swig_ext/tests/test_example.py +0 -18
  600. numpy-1.9.3/numpy/distutils/tests/swig_ext/tests/test_example2.py +0 -16
  601. numpy-1.9.3/numpy/distutils/tests/test_fcompiler_gnu.py +0 -53
  602. numpy-1.9.3/numpy/distutils/tests/test_fcompiler_intel.py +0 -36
  603. numpy-1.9.3/numpy/distutils/tests/test_misc_util.py +0 -75
  604. numpy-1.9.3/numpy/distutils/tests/test_npy_pkg_config.py +0 -98
  605. numpy-1.9.3/numpy/distutils/unixccompiler.py +0 -113
  606. numpy-1.9.3/numpy/doc/byteswapping.py +0 -147
  607. numpy-1.9.3/numpy/doc/creation.py +0 -144
  608. numpy-1.9.3/numpy/doc/glossary.py +0 -418
  609. numpy-1.9.3/numpy/doc/indexing.py +0 -437
  610. numpy-1.9.3/numpy/doc/structured_arrays.py +0 -223
  611. numpy-1.9.3/numpy/f2py/__init__.py +0 -49
  612. numpy-1.9.3/numpy/f2py/auxfuncs.py +0 -711
  613. numpy-1.9.3/numpy/f2py/capi_maps.py +0 -773
  614. numpy-1.9.3/numpy/f2py/cb_rules.py +0 -539
  615. numpy-1.9.3/numpy/f2py/cfuncs.py +0 -1224
  616. numpy-1.9.3/numpy/f2py/common_rules.py +0 -132
  617. numpy-1.9.3/numpy/f2py/crackfortran.py +0 -2870
  618. numpy-1.9.3/numpy/f2py/diagnose.py +0 -149
  619. numpy-1.9.3/numpy/f2py/f2py2e.py +0 -598
  620. numpy-1.9.3/numpy/f2py/f2py_testing.py +0 -46
  621. numpy-1.9.3/numpy/f2py/f90mod_rules.py +0 -246
  622. numpy-1.9.3/numpy/f2py/func2subr.py +0 -291
  623. numpy-1.9.3/numpy/f2py/rules.py +0 -1448
  624. numpy-1.9.3/numpy/f2py/setup.py +0 -129
  625. numpy-1.9.3/numpy/f2py/src/fortranobject.c +0 -972
  626. numpy-1.9.3/numpy/f2py/src/fortranobject.h +0 -162
  627. numpy-1.9.3/numpy/f2py/tests/src/array_from_pyobj/wrapmodule.c +0 -223
  628. numpy-1.9.3/numpy/f2py/tests/test_array_from_pyobj.py +0 -559
  629. numpy-1.9.3/numpy/f2py/tests/test_assumed_shape.py +0 -37
  630. numpy-1.9.3/numpy/f2py/tests/test_callback.py +0 -132
  631. numpy-1.9.3/numpy/f2py/tests/test_kind.py +0 -36
  632. numpy-1.9.3/numpy/f2py/tests/test_mixed.py +0 -41
  633. numpy-1.9.3/numpy/f2py/tests/test_regression.py +0 -32
  634. numpy-1.9.3/numpy/f2py/tests/test_return_character.py +0 -142
  635. numpy-1.9.3/numpy/f2py/tests/test_return_complex.py +0 -169
  636. numpy-1.9.3/numpy/f2py/tests/test_return_integer.py +0 -178
  637. numpy-1.9.3/numpy/f2py/tests/test_return_logical.py +0 -187
  638. numpy-1.9.3/numpy/f2py/tests/test_return_real.py +0 -203
  639. numpy-1.9.3/numpy/f2py/tests/test_size.py +0 -47
  640. numpy-1.9.3/numpy/f2py/tests/util.py +0 -353
  641. numpy-1.9.3/numpy/f2py/use_rules.py +0 -109
  642. numpy-1.9.3/numpy/fft/fftpack.c +0 -1501
  643. numpy-1.9.3/numpy/fft/fftpack.h +0 -28
  644. numpy-1.9.3/numpy/fft/fftpack.py +0 -1169
  645. numpy-1.9.3/numpy/fft/fftpack_litemodule.c +0 -371
  646. numpy-1.9.3/numpy/fft/info.py +0 -179
  647. numpy-1.9.3/numpy/fft/setup.py +0 -20
  648. numpy-1.9.3/numpy/fft/tests/test_fftpack.py +0 -75
  649. numpy-1.9.3/numpy/fft/tests/test_helper.py +0 -78
  650. numpy-1.9.3/numpy/lib/_iotools.py +0 -891
  651. numpy-1.9.3/numpy/lib/arraypad.py +0 -1475
  652. numpy-1.9.3/numpy/lib/arraysetops.py +0 -464
  653. numpy-1.9.3/numpy/lib/arrayterator.py +0 -226
  654. numpy-1.9.3/numpy/lib/financial.py +0 -737
  655. numpy-1.9.3/numpy/lib/format.py +0 -771
  656. numpy-1.9.3/numpy/lib/function_base.py +0 -3884
  657. numpy-1.9.3/numpy/lib/index_tricks.py +0 -869
  658. numpy-1.9.3/numpy/lib/info.py +0 -151
  659. numpy-1.9.3/numpy/lib/nanfunctions.py +0 -1158
  660. numpy-1.9.3/numpy/lib/npyio.py +0 -1871
  661. numpy-1.9.3/numpy/lib/polynomial.py +0 -1271
  662. numpy-1.9.3/numpy/lib/recfunctions.py +0 -1003
  663. numpy-1.9.3/numpy/lib/setup.py +0 -23
  664. numpy-1.9.3/numpy/lib/shape_base.py +0 -865
  665. numpy-1.9.3/numpy/lib/src/_compiled_base.c +0 -1761
  666. numpy-1.9.3/numpy/lib/stride_tricks.py +0 -123
  667. numpy-1.9.3/numpy/lib/tests/test__iotools.py +0 -326
  668. numpy-1.9.3/numpy/lib/tests/test__version.py +0 -57
  669. numpy-1.9.3/numpy/lib/tests/test_arraypad.py +0 -560
  670. numpy-1.9.3/numpy/lib/tests/test_arraysetops.py +0 -301
  671. numpy-1.9.3/numpy/lib/tests/test_financial.py +0 -160
  672. numpy-1.9.3/numpy/lib/tests/test_format.py +0 -716
  673. numpy-1.9.3/numpy/lib/tests/test_function_base.py +0 -2145
  674. numpy-1.9.3/numpy/lib/tests/test_index_tricks.py +0 -289
  675. numpy-1.9.3/numpy/lib/tests/test_io.py +0 -1754
  676. numpy-1.9.3/numpy/lib/tests/test_nanfunctions.py +0 -774
  677. numpy-1.9.3/numpy/lib/tests/test_polynomial.py +0 -177
  678. numpy-1.9.3/numpy/lib/tests/test_recfunctions.py +0 -705
  679. numpy-1.9.3/numpy/lib/tests/test_shape_base.py +0 -368
  680. numpy-1.9.3/numpy/lib/tests/test_stride_tricks.py +0 -238
  681. numpy-1.9.3/numpy/lib/tests/test_twodim_base.py +0 -504
  682. numpy-1.9.3/numpy/lib/tests/test_type_check.py +0 -328
  683. numpy-1.9.3/numpy/lib/twodim_base.py +0 -1003
  684. numpy-1.9.3/numpy/lib/type_check.py +0 -605
  685. numpy-1.9.3/numpy/lib/utils.py +0 -1176
  686. numpy-1.9.3/numpy/linalg/lapack_lite/python_xerbla.c +0 -47
  687. numpy-1.9.3/numpy/linalg/lapack_litemodule.c +0 -362
  688. numpy-1.9.3/numpy/linalg/linalg.py +0 -2136
  689. numpy-1.9.3/numpy/linalg/tests/test_build.py +0 -53
  690. numpy-1.9.3/numpy/linalg/tests/test_linalg.py +0 -1156
  691. numpy-1.9.3/numpy/linalg/tests/test_regression.py +0 -90
  692. numpy-1.9.3/numpy/linalg/umath_linalg.c.src +0 -3210
  693. numpy-1.9.3/numpy/ma/__init__.py +0 -58
  694. numpy-1.9.3/numpy/ma/bench.py +0 -166
  695. numpy-1.9.3/numpy/ma/core.py +0 -7374
  696. numpy-1.9.3/numpy/ma/extras.py +0 -1932
  697. numpy-1.9.3/numpy/ma/mrecords.py +0 -734
  698. numpy-1.9.3/numpy/ma/setup.py +0 -20
  699. numpy-1.9.3/numpy/ma/tests/test_core.py +0 -3706
  700. numpy-1.9.3/numpy/ma/tests/test_extras.py +0 -954
  701. numpy-1.9.3/numpy/ma/tests/test_mrecords.py +0 -521
  702. numpy-1.9.3/numpy/ma/tests/test_old_ma.py +0 -869
  703. numpy-1.9.3/numpy/ma/tests/test_regression.py +0 -75
  704. numpy-1.9.3/numpy/ma/tests/test_subclassing.py +0 -236
  705. numpy-1.9.3/numpy/ma/testutils.py +0 -240
  706. numpy-1.9.3/numpy/ma/timer_comparison.py +0 -459
  707. numpy-1.9.3/numpy/matlib.py +0 -358
  708. numpy-1.9.3/numpy/matrixlib/defmatrix.py +0 -1094
  709. numpy-1.9.3/numpy/matrixlib/tests/test_defmatrix.py +0 -400
  710. numpy-1.9.3/numpy/matrixlib/tests/test_multiarray.py +0 -18
  711. numpy-1.9.3/numpy/matrixlib/tests/test_numeric.py +0 -10
  712. numpy-1.9.3/numpy/matrixlib/tests/test_regression.py +0 -34
  713. numpy-1.9.3/numpy/polynomial/_polybase.py +0 -962
  714. numpy-1.9.3/numpy/polynomial/chebyshev.py +0 -2056
  715. numpy-1.9.3/numpy/polynomial/hermite.py +0 -1789
  716. numpy-1.9.3/numpy/polynomial/hermite_e.py +0 -1786
  717. numpy-1.9.3/numpy/polynomial/laguerre.py +0 -1781
  718. numpy-1.9.3/numpy/polynomial/legendre.py +0 -1809
  719. numpy-1.9.3/numpy/polynomial/polytemplate.py +0 -927
  720. numpy-1.9.3/numpy/polynomial/polyutils.py +0 -403
  721. numpy-1.9.3/numpy/random/mtrand/distributions.c +0 -892
  722. numpy-1.9.3/numpy/random/mtrand/mtrand.c +0 -36656
  723. numpy-1.9.3/numpy/random/mtrand/mtrand.pyx +0 -4706
  724. numpy-1.9.3/numpy/random/setup.py +0 -74
  725. numpy-1.9.3/numpy/random/tests/test_random.py +0 -707
  726. numpy-1.9.3/numpy/random/tests/test_regression.py +0 -86
  727. numpy-1.9.3/numpy/setup.py +0 -27
  728. numpy-1.9.3/numpy/testing/__init__.py +0 -16
  729. numpy-1.9.3/numpy/testing/decorators.py +0 -271
  730. numpy-1.9.3/numpy/testing/noseclasses.py +0 -353
  731. numpy-1.9.3/numpy/testing/nosetester.py +0 -504
  732. numpy-1.9.3/numpy/testing/print_coercion_tables.py +0 -89
  733. numpy-1.9.3/numpy/testing/setup.py +0 -20
  734. numpy-1.9.3/numpy/testing/tests/test_decorators.py +0 -185
  735. numpy-1.9.3/numpy/testing/tests/test_utils.py +0 -558
  736. numpy-1.9.3/numpy/testing/utils.py +0 -1715
  737. numpy-1.9.3/numpy/tests/test_ctypeslib.py +0 -102
  738. numpy-1.9.3/numpy/tests/test_matlib.py +0 -55
  739. numpy-1.9.3/numpy/version.py +0 -10
  740. numpy-1.9.3/setup.py +0 -251
  741. numpy-1.9.3/site.cfg.example +0 -157
  742. numpy-1.9.3/tools/swig/README +0 -135
  743. numpy-1.9.3/tools/swig/numpy.i +0 -3085
  744. numpy-1.9.3/tools/swig/test/Array.i +0 -102
  745. numpy-1.9.3/tools/swig/test/Makefile +0 -34
  746. numpy-1.9.3/tools/swig/test/setup.py +0 -64
  747. numpy-1.9.3/tools/swig/test/testArray.py +0 -284
  748. numpy-1.9.3/tools/swig/test/testFarray.py +0 -159
  749. numpy-1.9.3/tools/swig/test/testFortran.py +0 -173
  750. numpy-1.9.3/tools/swig/test/testMatrix.py +0 -362
  751. numpy-1.9.3/tools/swig/test/testSuperTensor.py +0 -388
  752. numpy-1.9.3/tools/swig/test/testTensor.py +0 -402
  753. numpy-1.9.3/tools/swig/test/testVector.py +0 -381
  754. {numpy-1.9.3 → numpy-1.10.0.post2}/BENTO_BUILD.txt +0 -0
  755. {numpy-1.9.3 → numpy-1.10.0.post2}/COMPATIBILITY +0 -0
  756. {numpy-1.9.3 → numpy-1.10.0.post2}/DEV_README.txt +0 -0
  757. {numpy-1.9.3 → numpy-1.10.0.post2}/README.txt +0 -0
  758. {numpy-1.9.3 → numpy-1.10.0.post2}/THANKS.txt +0 -0
  759. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/Makefile +0 -0
  760. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/BUGS.txt +0 -0
  761. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/FAQ.txt +0 -0
  762. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/HISTORY.txt +0 -0
  763. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/Makefile +0 -0
  764. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/OLDNEWS.txt +0 -0
  765. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/README.txt +0 -0
  766. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/Release-1.x.txt +0 -0
  767. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/Release-2.x.txt +0 -0
  768. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/Release-3.x.txt +0 -0
  769. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/Release-4.x.txt +0 -0
  770. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/TESTING.txt +0 -0
  771. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/THANKS.txt +0 -0
  772. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/TODO.txt +0 -0
  773. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/apps.tex +0 -0
  774. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/bugs.tex +0 -0
  775. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/collectinput.py +0 -0
  776. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/commands.tex +0 -0
  777. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/default.css +0 -0
  778. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/docutils.conf +0 -0
  779. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/ex1/arr.f +0 -0
  780. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/ex1/bar.f +0 -0
  781. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/ex1/foo.f +0 -0
  782. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/ex1/foobar-smart.f90 +0 -0
  783. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/ex1/foobar.f90 +0 -0
  784. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/ex1/foobarmodule.tex +0 -0
  785. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/ex1/runme +0 -0
  786. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2py.1 +0 -0
  787. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2py2e.tex +0 -0
  788. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/README.txt +0 -0
  789. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/aerostructure.jpg +0 -0
  790. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/flow.jpg +0 -0
  791. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/mk_html.sh +0 -0
  792. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/mk_pdf.sh +0 -0
  793. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/mk_ps.sh +0 -0
  794. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/src/examples/exp1.f +0 -0
  795. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/src/examples/exp1mess.txt +0 -0
  796. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/src/examples/exp1session.txt +0 -0
  797. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/src/examples/foo.pyf +0 -0
  798. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/src/examples/foom.pyf +0 -0
  799. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/f2python9-final/structure.jpg +0 -0
  800. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/fortranobject.tex +0 -0
  801. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/hello.f +0 -0
  802. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/index.html +0 -0
  803. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/intro.tex +0 -0
  804. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/multiarray/array_from_pyobj.c +0 -0
  805. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/multiarray/bar.c +0 -0
  806. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/multiarray/foo.f +0 -0
  807. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/multiarray/fortran_array_from_pyobj.txt +0 -0
  808. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/multiarray/fun.pyf +0 -0
  809. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/multiarray/run.pyf +0 -0
  810. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/multiarray/transpose.txt +0 -0
  811. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/multiarrays.txt +0 -0
  812. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/notes.tex +0 -0
  813. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/oldnews.html +0 -0
  814. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/options.tex +0 -0
  815. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/pyforttest.pyf +0 -0
  816. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/pytest.py +0 -0
  817. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/python9.tex +0 -0
  818. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/signaturefile.tex +0 -0
  819. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/simple.f +0 -0
  820. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/simple_session.dat +0 -0
  821. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/using_F_compiler.txt +0 -0
  822. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/f2py/win32_notes.txt +0 -0
  823. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/postprocess.py +0 -0
  824. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.3.0-notes.rst +0 -0
  825. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.4.0-notes.rst +0 -0
  826. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.5.0-notes.rst +0 -0
  827. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.6.0-notes.rst +0 -0
  828. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.6.1-notes.rst +0 -0
  829. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.6.2-notes.rst +0 -0
  830. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.7.0-notes.rst +0 -0
  831. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.7.1-notes.rst +0 -0
  832. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.7.2-notes.rst +0 -0
  833. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.8.0-notes.rst +0 -0
  834. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.8.1-notes.rst +0 -0
  835. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.8.2-notes.rst +0 -0
  836. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.9.0-notes.rst +0 -0
  837. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.9.1-notes.rst +0 -0
  838. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/1.9.2-notes.rst +0 -0
  839. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/release/time_based_proposal.rst +0 -0
  840. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/.git +0 -0
  841. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/.gitignore +0 -0
  842. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/Makefile +0 -0
  843. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/README.rst +0 -0
  844. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_static/scipyshiny_small.png +0 -0
  845. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/layout.html +0 -0
  846. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/searchbox.html +0 -0
  847. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/sourcelink.html +0 -0
  848. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/css/extend.css +0 -0
  849. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/css/pygments.css +0 -0
  850. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/css/scipy-central.css +0 -0
  851. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/css/spc-bootstrap.css +0 -0
  852. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/css/spc-extend.css +0 -0
  853. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/all-icons.svg +0 -0
  854. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/contents.png +0 -0
  855. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/create-new-account-icon.png +0 -0
  856. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/external-link-icon-shrunk.png +0 -0
  857. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/external-link-icon.png +0 -0
  858. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/external-link-icon.svg +0 -0
  859. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/external-link-list-icon-tiniest.png +0 -0
  860. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/external-link-list-icon-tiny.png +0 -0
  861. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/external-link-list-icon.png +0 -0
  862. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ad.png +0 -0
  863. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ae.png +0 -0
  864. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-af.png +0 -0
  865. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ag.png +0 -0
  866. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ai.png +0 -0
  867. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-al.png +0 -0
  868. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-am.png +0 -0
  869. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ao.png +0 -0
  870. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-aq.png +0 -0
  871. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ar.png +0 -0
  872. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-as.png +0 -0
  873. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-at.png +0 -0
  874. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-au.png +0 -0
  875. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-aw.png +0 -0
  876. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-az.png +0 -0
  877. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ba.png +0 -0
  878. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bb.png +0 -0
  879. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bd.png +0 -0
  880. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-be.png +0 -0
  881. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bf.png +0 -0
  882. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bg.png +0 -0
  883. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bh.png +0 -0
  884. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bi.png +0 -0
  885. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bj.png +0 -0
  886. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bl.png +0 -0
  887. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bm.png +0 -0
  888. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bn.png +0 -0
  889. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bo.png +0 -0
  890. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-br.png +0 -0
  891. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bs.png +0 -0
  892. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bt.png +0 -0
  893. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bw.png +0 -0
  894. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-by.png +0 -0
  895. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-bz.png +0 -0
  896. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ca.png +0 -0
  897. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cc.png +0 -0
  898. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cd.png +0 -0
  899. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cf.png +0 -0
  900. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cg.png +0 -0
  901. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ch.png +0 -0
  902. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ci.png +0 -0
  903. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ck.png +0 -0
  904. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cl.png +0 -0
  905. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cm.png +0 -0
  906. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cn.png +0 -0
  907. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-co.png +0 -0
  908. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cr.png +0 -0
  909. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cu.png +0 -0
  910. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cv.png +0 -0
  911. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cw.png +0 -0
  912. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cx.png +0 -0
  913. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cy.png +0 -0
  914. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-cz.png +0 -0
  915. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-de.png +0 -0
  916. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-dj.png +0 -0
  917. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-dk.png +0 -0
  918. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-dm.png +0 -0
  919. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-do.png +0 -0
  920. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-dz.png +0 -0
  921. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ec.png +0 -0
  922. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ee.png +0 -0
  923. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-eg.png +0 -0
  924. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-er.png +0 -0
  925. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-es.png +0 -0
  926. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-et.png +0 -0
  927. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-fi.png +0 -0
  928. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-fj.png +0 -0
  929. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-fk.png +0 -0
  930. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-fm.png +0 -0
  931. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-fo.png +0 -0
  932. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-fr.png +0 -0
  933. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ga.png +0 -0
  934. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gb.png +0 -0
  935. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gd.png +0 -0
  936. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ge.png +0 -0
  937. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gf.png +0 -0
  938. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gg.png +0 -0
  939. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gh.png +0 -0
  940. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gi.png +0 -0
  941. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gl.png +0 -0
  942. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gm.png +0 -0
  943. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gn.png +0 -0
  944. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gq.png +0 -0
  945. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gr.png +0 -0
  946. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gs.png +0 -0
  947. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gt.png +0 -0
  948. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gu.png +0 -0
  949. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gw.png +0 -0
  950. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-gy.png +0 -0
  951. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-hk.png +0 -0
  952. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-hm.png +0 -0
  953. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-hn.png +0 -0
  954. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-hr.png +0 -0
  955. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ht.png +0 -0
  956. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-hu.png +0 -0
  957. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-id.png +0 -0
  958. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ie.png +0 -0
  959. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-il.png +0 -0
  960. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-im.png +0 -0
  961. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-in.png +0 -0
  962. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-io.png +0 -0
  963. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-iq.png +0 -0
  964. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ir.png +0 -0
  965. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-is.png +0 -0
  966. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-it.png +0 -0
  967. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-je.png +0 -0
  968. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-jm.png +0 -0
  969. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-jo.png +0 -0
  970. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-jp.png +0 -0
  971. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ke.png +0 -0
  972. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-kg.png +0 -0
  973. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-kh.png +0 -0
  974. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ki.png +0 -0
  975. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-km.png +0 -0
  976. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-kn.png +0 -0
  977. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-kp.png +0 -0
  978. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-kr.png +0 -0
  979. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-kw.png +0 -0
  980. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ky.png +0 -0
  981. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-kz.png +0 -0
  982. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-la.png +0 -0
  983. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-lb.png +0 -0
  984. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-lc.png +0 -0
  985. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-li.png +0 -0
  986. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-lk.png +0 -0
  987. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-lr.png +0 -0
  988. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ls.png +0 -0
  989. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-lt.png +0 -0
  990. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-lu.png +0 -0
  991. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-lv.png +0 -0
  992. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ly.png +0 -0
  993. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ma.png +0 -0
  994. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mc.png +0 -0
  995. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-md.png +0 -0
  996. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-me.png +0 -0
  997. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mf.png +0 -0
  998. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mg.png +0 -0
  999. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mh.png +0 -0
  1000. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mk.png +0 -0
  1001. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ml.png +0 -0
  1002. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mm.png +0 -0
  1003. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mn.png +0 -0
  1004. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mo.png +0 -0
  1005. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mp.png +0 -0
  1006. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mq.png +0 -0
  1007. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mr.png +0 -0
  1008. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ms.png +0 -0
  1009. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mt.png +0 -0
  1010. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mu.png +0 -0
  1011. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mv.png +0 -0
  1012. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mw.png +0 -0
  1013. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mx.png +0 -0
  1014. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-my.png +0 -0
  1015. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-mz.png +0 -0
  1016. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-na.png +0 -0
  1017. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-nc.png +0 -0
  1018. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ne.png +0 -0
  1019. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-nf.png +0 -0
  1020. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ng.png +0 -0
  1021. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ni.png +0 -0
  1022. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-nl.png +0 -0
  1023. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-no.png +0 -0
  1024. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-np.png +0 -0
  1025. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-nr.png +0 -0
  1026. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-nu.png +0 -0
  1027. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-nz.png +0 -0
  1028. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-om.png +0 -0
  1029. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pa.png +0 -0
  1030. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pe.png +0 -0
  1031. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pf.png +0 -0
  1032. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pg.png +0 -0
  1033. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ph.png +0 -0
  1034. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pk.png +0 -0
  1035. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pl.png +0 -0
  1036. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pm.png +0 -0
  1037. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pn.png +0 -0
  1038. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pr.png +0 -0
  1039. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ps.png +0 -0
  1040. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pt.png +0 -0
  1041. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-pw.png +0 -0
  1042. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-py.png +0 -0
  1043. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-qa.png +0 -0
  1044. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-re.png +0 -0
  1045. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ro.png +0 -0
  1046. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-rs.png +0 -0
  1047. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ru.png +0 -0
  1048. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-rw.png +0 -0
  1049. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sa.png +0 -0
  1050. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sb.png +0 -0
  1051. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sc.png +0 -0
  1052. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sd.png +0 -0
  1053. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-se.png +0 -0
  1054. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sg.png +0 -0
  1055. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sh.png +0 -0
  1056. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-si.png +0 -0
  1057. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sj.png +0 -0
  1058. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sk.png +0 -0
  1059. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sl.png +0 -0
  1060. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sm.png +0 -0
  1061. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sn.png +0 -0
  1062. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-so.png +0 -0
  1063. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sr.png +0 -0
  1064. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-st.png +0 -0
  1065. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sv.png +0 -0
  1066. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sy.png +0 -0
  1067. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-sz.png +0 -0
  1068. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tc.png +0 -0
  1069. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-td.png +0 -0
  1070. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tf.png +0 -0
  1071. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tg.png +0 -0
  1072. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-th.png +0 -0
  1073. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tj.png +0 -0
  1074. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tk.png +0 -0
  1075. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tl.png +0 -0
  1076. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tm.png +0 -0
  1077. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tn.png +0 -0
  1078. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-to.png +0 -0
  1079. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tr.png +0 -0
  1080. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tt.png +0 -0
  1081. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tv.png +0 -0
  1082. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tw.png +0 -0
  1083. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-tz.png +0 -0
  1084. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ua.png +0 -0
  1085. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ug.png +0 -0
  1086. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-um.png +0 -0
  1087. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-us.png +0 -0
  1088. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-uy.png +0 -0
  1089. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-uz.png +0 -0
  1090. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-va.png +0 -0
  1091. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-vc.png +0 -0
  1092. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ve.png +0 -0
  1093. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-vg.png +0 -0
  1094. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-vi.png +0 -0
  1095. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-vn.png +0 -0
  1096. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-vu.png +0 -0
  1097. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-wf.png +0 -0
  1098. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ws.png +0 -0
  1099. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-ye.png +0 -0
  1100. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-za.png +0 -0
  1101. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-zm.png +0 -0
  1102. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/flags/flag-zw.png +0 -0
  1103. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/glyphicons-halflings-white.png +0 -0
  1104. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/glyphicons-halflings.png +0 -0
  1105. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/important-icon.png +0 -0
  1106. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/information-icon.png +0 -0
  1107. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/internet-web-browser.png +0 -0
  1108. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/multiple-file-icon-shrunk.png +0 -0
  1109. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/multiple-file-icon.png +0 -0
  1110. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/multiple-file-icon.svg +0 -0
  1111. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/multiple-file-list-icon-tiny.png +0 -0
  1112. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/multiple-file-list-icon.png +0 -0
  1113. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/navigation.png +0 -0
  1114. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/person-list-icon-tiny.png +0 -0
  1115. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/person-list-icon.png +0 -0
  1116. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/scipy-logo.png +0 -0
  1117. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/scipy_org_logo.gif +0 -0
  1118. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/scipycentral_logo.png +0 -0
  1119. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/scipyshiny_small.png +0 -0
  1120. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/send-email-icon.png +0 -0
  1121. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/single-file-icon-shrunk.png +0 -0
  1122. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/single-file-icon.png +0 -0
  1123. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/single-file-icon.svg +0 -0
  1124. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/single-file-list-icon-tiniest.png +0 -0
  1125. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/single-file-list-icon-tiny.png +0 -0
  1126. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/single-file-list-icon.png +0 -0
  1127. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/transparent-pixel.gif +0 -0
  1128. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/img/ui-anim_basic_16x16.gif +0 -0
  1129. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/js/copybutton.js +0 -0
  1130. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/accordion.less +0 -0
  1131. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/alerts.less +0 -0
  1132. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/bootstrap.less +0 -0
  1133. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/breadcrumbs.less +0 -0
  1134. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/button-groups.less +0 -0
  1135. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/buttons.less +0 -0
  1136. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/carousel.less +0 -0
  1137. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/close.less +0 -0
  1138. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/code.less +0 -0
  1139. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/component-animations.less +0 -0
  1140. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/dropdowns.less +0 -0
  1141. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/forms.less +0 -0
  1142. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/grid.less +0 -0
  1143. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/hero-unit.less +0 -0
  1144. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/labels-badges.less +0 -0
  1145. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/layouts.less +0 -0
  1146. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/media.less +0 -0
  1147. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/mixins.less +0 -0
  1148. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/modals.less +0 -0
  1149. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/navbar.less +0 -0
  1150. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/navs.less +0 -0
  1151. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/pager.less +0 -0
  1152. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/pagination.less +0 -0
  1153. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/popovers.less +0 -0
  1154. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/progress-bars.less +0 -0
  1155. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/reset.less +0 -0
  1156. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/responsive-1200px-min.less +0 -0
  1157. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/responsive-767px-max.less +0 -0
  1158. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/responsive-768px-979px.less +0 -0
  1159. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/responsive-navbar.less +0 -0
  1160. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/responsive-utilities.less +0 -0
  1161. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/responsive.less +0 -0
  1162. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/scaffolding.less +0 -0
  1163. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/sprites.less +0 -0
  1164. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/tables.less +0 -0
  1165. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/thumbnails.less +0 -0
  1166. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/tooltip.less +0 -0
  1167. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/type.less +0 -0
  1168. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/utilities.less +0 -0
  1169. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/variables.less +0 -0
  1170. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/bootstrap/wells.less +0 -0
  1171. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/spc-bootstrap.less +0 -0
  1172. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/spc-content.less +0 -0
  1173. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/spc-extend.less +0 -0
  1174. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/spc-footer.less +0 -0
  1175. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/spc-header.less +0 -0
  1176. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/spc-rightsidebar.less +0 -0
  1177. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/less/spc-utils.less +0 -0
  1178. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/static/scipy.css_t +0 -0
  1179. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/_theme/scipy/theme.conf +0 -0
  1180. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/conf.py +0 -0
  1181. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/index.rst +0 -0
  1182. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/test_autodoc.rst +0 -0
  1183. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/test_autodoc_2.rst +0 -0
  1184. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/test_autodoc_3.rst +0 -0
  1185. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/test_autodoc_4.rst +0 -0
  1186. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/scipy-sphinx-theme/test_optimize.rst +0 -0
  1187. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/_templates/autosummary/class.rst +0 -0
  1188. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/_templates/indexcontent.html +0 -0
  1189. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/_templates/indexsidebar.html +0 -0
  1190. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/_templates/layout.html +0 -0
  1191. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/about.rst +0 -0
  1192. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/bugs.rst +0 -0
  1193. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/contents.rst +0 -0
  1194. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/configure_git.rst +0 -0
  1195. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/development_setup.rst +0 -0
  1196. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/dot2_dot3.rst +0 -0
  1197. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/following_latest.rst +0 -0
  1198. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/forking_button.png +0 -0
  1199. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/git_development.rst +0 -0
  1200. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/git_intro.rst +0 -0
  1201. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/git_resources.rst +0 -0
  1202. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash/pull_button.png +0 -0
  1203. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/dev/gitwash_links.txt +0 -0
  1204. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/advanced.rst +0 -0
  1205. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/allocarr.f90 +0 -0
  1206. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/allocarr_session.dat +0 -0
  1207. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/array.f +0 -0
  1208. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/array_session.dat +0 -0
  1209. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/calculate.f +0 -0
  1210. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/calculate_session.dat +0 -0
  1211. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/callback.f +0 -0
  1212. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/callback2.pyf +0 -0
  1213. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/callback_session.dat +0 -0
  1214. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/common.f +0 -0
  1215. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/common_session.dat +0 -0
  1216. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/compile_session.dat +0 -0
  1217. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/distutils.rst +0 -0
  1218. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/extcallback.f +0 -0
  1219. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/extcallback_session.dat +0 -0
  1220. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/fib1.f +0 -0
  1221. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/fib1.pyf +0 -0
  1222. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/fib2.pyf +0 -0
  1223. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/fib3.f +0 -0
  1224. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/ftype.f +0 -0
  1225. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/ftype_session.dat +0 -0
  1226. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/getting-started.rst +0 -0
  1227. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/index.rst +0 -0
  1228. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/moddata.f90 +0 -0
  1229. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/moddata_session.dat +0 -0
  1230. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/python-usage.rst +0 -0
  1231. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/run_main_session.dat +0 -0
  1232. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/scalar.f +0 -0
  1233. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/scalar_session.dat +0 -0
  1234. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/setup_example.py +0 -0
  1235. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/signature-file.rst +0 -0
  1236. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/spam.pyf +0 -0
  1237. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/spam_session.dat +0 -0
  1238. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/string.f +0 -0
  1239. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/string_session.dat +0 -0
  1240. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/usage.rst +0 -0
  1241. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/var.pyf +0 -0
  1242. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/f2py/var_session.dat +0 -0
  1243. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/glossary.rst +0 -0
  1244. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/license.rst +0 -0
  1245. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/datetime-proposal.rst +0 -0
  1246. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/datetime-proposal3.rst +0 -0
  1247. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/deferred-ufunc-evaluation.rst +0 -0
  1248. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/generalized-ufuncs.rst +0 -0
  1249. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/groupby_additions.rst +0 -0
  1250. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/index.rst +0 -0
  1251. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/math_config_clean.rst +0 -0
  1252. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/missing-data.rst +0 -0
  1253. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/new-iterator-ufunc.rst +0 -0
  1254. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/newbugtracker.rst +0 -0
  1255. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/npy-format.rst +0 -0
  1256. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/structured_array_extensions.rst +0 -0
  1257. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/ufunc-overrides.rst +0 -0
  1258. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/neps/warnfix.rst +0 -0
  1259. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/arrays.datetime.rst +0 -0
  1260. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/arrays.nditer.rst +0 -0
  1261. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/arrays.rst +0 -0
  1262. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/c-api.deprecations.rst +0 -0
  1263. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/c-api.rst +0 -0
  1264. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/distutils.rst +0 -0
  1265. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/figures/dtype-hierarchy.dia +0 -0
  1266. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/figures/dtype-hierarchy.pdf +0 -0
  1267. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/figures/dtype-hierarchy.png +0 -0
  1268. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/figures/threefundamental.fig +0 -0
  1269. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/figures/threefundamental.pdf +0 -0
  1270. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/figures/threefundamental.png +0 -0
  1271. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/internals.rst +0 -0
  1272. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/maskedarray.baseclass.rst +0 -0
  1273. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/maskedarray.generic.rst +0 -0
  1274. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/maskedarray.rst +0 -0
  1275. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.array-creation.rst +0 -0
  1276. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.bitwise.rst +0 -0
  1277. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.char.rst +0 -0
  1278. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.ctypeslib.rst +0 -0
  1279. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.datetime.rst +0 -0
  1280. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.dtype.rst +0 -0
  1281. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.dual.rst +0 -0
  1282. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.emath.rst +0 -0
  1283. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.err.rst +0 -0
  1284. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.fft.rst +0 -0
  1285. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.financial.rst +0 -0
  1286. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.functional.rst +0 -0
  1287. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.help.rst +0 -0
  1288. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.indexing.rst +0 -0
  1289. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.logic.rst +0 -0
  1290. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.math.rst +0 -0
  1291. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.matlib.rst +0 -0
  1292. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.numarray.rst +0 -0
  1293. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.oldnumeric.rst +0 -0
  1294. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.other.rst +0 -0
  1295. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.padding.rst +0 -0
  1296. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.chebyshev.rst +0 -0
  1297. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.classes.rst +0 -0
  1298. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.hermite.rst +0 -0
  1299. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.hermite_e.rst +0 -0
  1300. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.laguerre.rst +0 -0
  1301. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.legendre.rst +0 -0
  1302. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.package.rst +0 -0
  1303. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.poly1d.rst +0 -0
  1304. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.polynomial.rst +0 -0
  1305. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.polynomials.rst +0 -0
  1306. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.random.rst +0 -0
  1307. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.rst +0 -0
  1308. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.set.rst +0 -0
  1309. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.testing.rst +0 -0
  1310. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/routines.window.rst +0 -0
  1311. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/reference/swig.rst +0 -0
  1312. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/basics.broadcasting.rst +0 -0
  1313. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/basics.byteswapping.rst +0 -0
  1314. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/basics.creation.rst +0 -0
  1315. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/basics.indexing.rst +0 -0
  1316. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/basics.io.rst +0 -0
  1317. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/basics.rst +0 -0
  1318. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/basics.subclassing.rst +0 -0
  1319. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/basics.types.rst +0 -0
  1320. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/c-info.rst +0 -0
  1321. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/howtofind.rst +0 -0
  1322. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/index.rst +0 -0
  1323. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/introduction.rst +0 -0
  1324. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/misc.rst +0 -0
  1325. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/performance.rst +0 -0
  1326. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/source/user/whatisnumpy.rst +0 -0
  1327. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/.git +0 -0
  1328. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/.gitignore +0 -0
  1329. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/.travis.yml +0 -0
  1330. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/LICENSE.txt +0 -0
  1331. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/MANIFEST.in +0 -0
  1332. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/README.rst +0 -0
  1333. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/__init__.py +0 -0
  1334. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/comment_eater.py +0 -0
  1335. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/compiler_unparse.py +0 -0
  1336. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/docscrape.py +0 -0
  1337. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/docscrape_sphinx.py +0 -0
  1338. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/linkcode.py +0 -0
  1339. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/numpydoc.py +0 -0
  1340. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/phantom_import.py +0 -0
  1341. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/plot_directive.py +0 -0
  1342. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/tests/test_docscrape.py +0 -0
  1343. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/tests/test_linkcode.py +0 -0
  1344. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/tests/test_phantom_import.py +0 -0
  1345. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/tests/test_plot_directive.py +0 -0
  1346. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/tests/test_traitsdoc.py +0 -0
  1347. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/numpydoc/traitsdoc.py +0 -0
  1348. {numpy-1.9.3 → numpy-1.10.0.post2}/doc/sphinxext/setup.py +0 -0
  1349. {numpy-1.9.3/numpy/core/code_generators → numpy-1.10.0.post2/numpy/_build_utils}/__init__.py +0 -0
  1350. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/compat/__init__.py +0 -0
  1351. {numpy-1.9.3/numpy/distutils/tests/f2py_ext → numpy-1.10.0.post2/numpy/core/code_generators}/__init__.py +0 -0
  1352. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/code_generators/genapi.py +0 -0
  1353. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/code_generators/generate_numpy_api.py +0 -0
  1354. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/cversions.py +0 -0
  1355. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/_neighborhood_iterator_imp.h +0 -0
  1356. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/_numpyconfig.h.in +0 -0
  1357. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/arrayobject.h +0 -0
  1358. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/arrayscalars.h +0 -0
  1359. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/halffloat.h +0 -0
  1360. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/noprefix.h +0 -0
  1361. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/npy_1_7_deprecated_api.h +0 -0
  1362. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/npy_interrupt.h +0 -0
  1363. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/npy_no_deprecated_api.h +0 -0
  1364. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/npy_os.h +0 -0
  1365. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/old_defines.h +0 -0
  1366. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/oldnumeric.h +0 -0
  1367. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/ufuncobject.h +0 -0
  1368. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/include/numpy/utils.h +0 -0
  1369. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/info.py +0 -0
  1370. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/mlib.ini.in +0 -0
  1371. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/npymath.ini.in +0 -0
  1372. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/dummymodule.c +0 -0
  1373. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/_datetime.h +0 -0
  1374. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/alloc.h +0 -0
  1375. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/array_assign.c +0 -0
  1376. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/array_assign.h +0 -0
  1377. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/array_assign_array.c +0 -0
  1378. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/array_assign_scalar.c +0 -0
  1379. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/arrayobject.h +0 -0
  1380. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/buffer.h +0 -0
  1381. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/calculation.h +0 -0
  1382. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/conversion_utils.h +0 -0
  1383. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/convert.h +0 -0
  1384. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/convert_datatype.h +0 -0
  1385. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/ctors.h +0 -0
  1386. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/datetime_busday.h +0 -0
  1387. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/datetime_busdaycal.h +0 -0
  1388. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/datetime_strings.h +0 -0
  1389. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/descriptor.h +0 -0
  1390. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/flagsobject.c +0 -0
  1391. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/getset.h +0 -0
  1392. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/hashdescr.h +0 -0
  1393. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/item_selection.h +0 -0
  1394. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/iterators.h +0 -0
  1395. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/methods.h +0 -0
  1396. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/nditer_impl.h +0 -0
  1397. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/nditer_pywrap.h +0 -0
  1398. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/nditer_templ.c.src +0 -0
  1399. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/numpymemoryview.h +0 -0
  1400. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/numpyos.h +0 -0
  1401. {numpy-1.9.3/numpy/core/blasdot → numpy-1.10.0.post2/numpy/core/src/multiarray}/python_xerbla.c +0 -0
  1402. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/refcount.c +0 -0
  1403. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/refcount.h +0 -0
  1404. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/sequence.c +0 -0
  1405. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/sequence.h +0 -0
  1406. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/shape.h +0 -0
  1407. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/ucsnarrow.h +0 -0
  1408. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/usertypes.c +0 -0
  1409. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/multiarray/usertypes.h +0 -0
  1410. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/npymath/_signbit.c +0 -0
  1411. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/npymath/halffloat.c +0 -0
  1412. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/npymath/npy_math_common.h +0 -0
  1413. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/npysort/binsearch.c.src +0 -0
  1414. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/private/lowlevel_strided_loops.h +0 -0
  1415. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/private/npy_binsearch.h.src +0 -0
  1416. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/private/npy_fpmath.h +0 -0
  1417. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/private/npy_pycompat.h +0 -0
  1418. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/umath/reduction.c +0 -0
  1419. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/umath/reduction.h +0 -0
  1420. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/umath/struct_ufunc_test.c.src +0 -0
  1421. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/umath/ufunc_object.h +0 -0
  1422. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/src/umath/ufunc_type_resolution.h +0 -0
  1423. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/tests/data/astype_copy.pkl +0 -0
  1424. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/tests/data/recarray_from_file.fits +0 -0
  1425. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/core/tests/test_scalarprint.py +0 -0
  1426. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/ctypeslib.py +0 -0
  1427. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/__version__.py +0 -0
  1428. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/__init__.py +0 -0
  1429. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/bdist_rpm.py +0 -0
  1430. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/build_py.py +0 -0
  1431. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/build_scripts.py +0 -0
  1432. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/build_src.py +0 -0
  1433. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/config_compiler.py +0 -0
  1434. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/develop.py +0 -0
  1435. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/egg_info.py +0 -0
  1436. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/install.py +0 -0
  1437. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/install_clib.py +0 -0
  1438. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/install_data.py +0 -0
  1439. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/install_headers.py +0 -0
  1440. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/command/sdist.py +0 -0
  1441. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/compat.py +0 -0
  1442. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/conv_template.py +0 -0
  1443. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/core.py +0 -0
  1444. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/cpuinfo.py +0 -0
  1445. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/environment.py +0 -0
  1446. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/extension.py +0 -0
  1447. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/__init__.py +0 -0
  1448. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/absoft.py +0 -0
  1449. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/g95.py +0 -0
  1450. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/hpux.py +0 -0
  1451. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/ibm.py +0 -0
  1452. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/lahey.py +0 -0
  1453. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/mips.py +0 -0
  1454. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/nag.py +0 -0
  1455. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/none.py +0 -0
  1456. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/pathf95.py +0 -0
  1457. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/fcompiler/vast.py +0 -0
  1458. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/from_template.py +0 -0
  1459. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/info.py +0 -0
  1460. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/line_endings.py +0 -0
  1461. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/log.py +0 -0
  1462. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/mingw/gfortran_vs2003_hack.c +0 -0
  1463. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/numpy_distribution.py +0 -0
  1464. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/pathccompiler.py +0 -0
  1465. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/setup.py +0 -0
  1466. {numpy-1.9.3/numpy/distutils/tests/f2py_f90_ext → numpy-1.10.0.post2/numpy/distutils/tests/f2py_ext}/__init__.py +0 -0
  1467. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/f2py_ext/setup.py +0 -0
  1468. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/f2py_ext/src/fib1.f +0 -0
  1469. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/f2py_ext/src/fib2.pyf +0 -0
  1470. {numpy-1.9.3/numpy/distutils/tests/gen_ext → numpy-1.10.0.post2/numpy/distutils/tests/f2py_f90_ext}/__init__.py +0 -0
  1471. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/f2py_f90_ext/include/body.f90 +0 -0
  1472. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/f2py_f90_ext/setup.py +0 -0
  1473. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/f2py_f90_ext/src/foo_free.f90 +0 -0
  1474. {numpy-1.9.3/numpy/distutils/tests/pyrex_ext → numpy-1.10.0.post2/numpy/distutils/tests/gen_ext}/__init__.py +0 -0
  1475. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/gen_ext/setup.py +0 -0
  1476. {numpy-1.9.3/numpy/distutils/tests/swig_ext → numpy-1.10.0.post2/numpy/distutils/tests/pyrex_ext}/__init__.py +0 -0
  1477. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/pyrex_ext/primes.pyx +0 -0
  1478. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/pyrex_ext/setup.py +0 -0
  1479. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/setup.py +0 -0
  1480. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/swig_ext/setup.py +0 -0
  1481. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/swig_ext/src/example.c +0 -0
  1482. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/swig_ext/src/example.i +0 -0
  1483. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/swig_ext/src/zoo.cc +0 -0
  1484. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/swig_ext/src/zoo.h +0 -0
  1485. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/swig_ext/src/zoo.i +0 -0
  1486. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/distutils/tests/test_exec_command.py +0 -0
  1487. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/__init__.py +0 -0
  1488. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/basics.py +0 -0
  1489. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/broadcasting.py +0 -0
  1490. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/constants.py +0 -0
  1491. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/howtofind.py +0 -0
  1492. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/internals.py +0 -0
  1493. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/io.py +0 -0
  1494. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/jargon.py +0 -0
  1495. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/methods_vs_functions.py +0 -0
  1496. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/misc.py +0 -0
  1497. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/performance.py +0 -0
  1498. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/subclassing.py +0 -0
  1499. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/doc/ufuncs.py +0 -0
  1500. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/dual.py +0 -0
  1501. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/__version__.py +0 -0
  1502. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/info.py +0 -0
  1503. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/assumed_shape/.f2py_f2cmap +0 -0
  1504. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/assumed_shape/foo_free.f90 +0 -0
  1505. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/assumed_shape/foo_mod.f90 +0 -0
  1506. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/assumed_shape/foo_use.f90 +0 -0
  1507. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/assumed_shape/precision.f90 +0 -0
  1508. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/kind/foo.f90 +0 -0
  1509. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/mixed/foo.f +0 -0
  1510. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/mixed/foo_fixed.f90 +0 -0
  1511. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/mixed/foo_free.f90 +0 -0
  1512. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/regression/inout.f90 +0 -0
  1513. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/f2py/tests/src/size/foo.f90 +0 -0
  1514. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/fft/__init__.py +0 -0
  1515. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/fft/helper.py +0 -0
  1516. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/__init__.py +0 -0
  1517. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/_datasource.py +0 -0
  1518. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/_version.py +0 -0
  1519. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/scimath.py +0 -0
  1520. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/tests/data/python3.npy +0 -0
  1521. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/tests/data/win64python2.npy +0 -0
  1522. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/tests/test__datasource.py +0 -0
  1523. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/tests/test_arrayterator.py +0 -0
  1524. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/tests/test_regression.py +0 -0
  1525. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/tests/test_ufunclike.py +0 -0
  1526. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/tests/test_utils.py +0 -0
  1527. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/ufunclike.py +0 -0
  1528. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/lib/user_array.py +0 -0
  1529. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/__init__.py +0 -0
  1530. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/info.py +0 -0
  1531. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/lapack_lite/blas_lite.c +0 -0
  1532. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/lapack_lite/dlamch.c +0 -0
  1533. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/lapack_lite/dlapack_lite.c +0 -0
  1534. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/lapack_lite/f2c.h +0 -0
  1535. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/lapack_lite/f2c_lite.c +0 -0
  1536. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/lapack_lite/zlapack_lite.c +0 -0
  1537. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/setup.py +0 -0
  1538. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/linalg/tests/test_deprecations.py +0 -0
  1539. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/ma/version.py +0 -0
  1540. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/matrixlib/__init__.py +0 -0
  1541. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/matrixlib/setup.py +0 -0
  1542. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/__init__.py +0 -0
  1543. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/polynomial.py +0 -0
  1544. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/setup.py +0 -0
  1545. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_chebyshev.py +0 -0
  1546. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_classes.py +0 -0
  1547. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_hermite.py +0 -0
  1548. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_hermite_e.py +0 -0
  1549. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_laguerre.py +0 -0
  1550. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_legendre.py +0 -0
  1551. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_polynomial.py +0 -0
  1552. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_polyutils.py +0 -0
  1553. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/polynomial/tests/test_printing.py +0 -0
  1554. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/__init__.py +0 -0
  1555. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/info.py +0 -0
  1556. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/Python.pxi +0 -0
  1557. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/distributions.h +0 -0
  1558. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/generate_mtrand_c.py +0 -0
  1559. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/initarray.c +0 -0
  1560. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/initarray.h +0 -0
  1561. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/mtrand_py_helper.h +0 -0
  1562. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/numpy.pxd +0 -0
  1563. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/randomkit.c +0 -0
  1564. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/random/mtrand/randomkit.h +0 -0
  1565. {numpy-1.9.3 → numpy-1.10.0.post2}/numpy/testing/tests/test_doctesting.py +0 -0
  1566. {numpy-1.9.3 → numpy-1.10.0.post2}/setupegg.py +0 -0
  1567. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/Makefile +0 -0
  1568. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/pyfragments.swg +0 -0
  1569. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Array1.cxx +0 -0
  1570. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Array1.h +0 -0
  1571. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Array2.cxx +0 -0
  1572. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Array2.h +0 -0
  1573. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Farray.cxx +0 -0
  1574. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Farray.h +0 -0
  1575. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Farray.i +0 -0
  1576. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Fortran.cxx +0 -0
  1577. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Fortran.h +0 -0
  1578. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Fortran.i +0 -0
  1579. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Matrix.cxx +0 -0
  1580. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Matrix.h +0 -0
  1581. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Matrix.i +0 -0
  1582. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/SuperTensor.cxx +0 -0
  1583. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/SuperTensor.h +0 -0
  1584. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/SuperTensor.i +0 -0
  1585. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Tensor.cxx +0 -0
  1586. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Tensor.h +0 -0
  1587. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Tensor.i +0 -0
  1588. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Vector.cxx +0 -0
  1589. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Vector.h +0 -0
  1590. {numpy-1.9.3 → numpy-1.10.0.post2}/tools/swig/test/Vector.i +0 -0
@@ -0,0 +1,2893 @@
1
+ from __future__ import division, absolute_import, print_function
2
+
3
+ import sys
4
+ import warnings
5
+ import collections
6
+ from numpy.core import multiarray
7
+ from . import umath
8
+ from .umath import (invert, sin, UFUNC_BUFSIZE_DEFAULT, ERR_IGNORE,
9
+ ERR_WARN, ERR_RAISE, ERR_CALL, ERR_PRINT, ERR_LOG,
10
+ ERR_DEFAULT, PINF, NAN)
11
+ from . import numerictypes
12
+ from .numerictypes import longlong, intc, int_, float_, complex_, bool_
13
+
14
+ if sys.version_info[0] >= 3:
15
+ import pickle
16
+ basestring = str
17
+ else:
18
+ import cPickle as pickle
19
+
20
+ loads = pickle.loads
21
+
22
+
23
+ __all__ = [
24
+ 'newaxis', 'ndarray', 'flatiter', 'nditer', 'nested_iters', 'ufunc',
25
+ 'arange', 'array', 'zeros', 'count_nonzero', 'empty', 'broadcast',
26
+ 'dtype', 'fromstring', 'fromfile', 'frombuffer', 'int_asbuffer',
27
+ 'where', 'argwhere', 'copyto', 'concatenate', 'fastCopyAndTranspose',
28
+ 'lexsort', 'set_numeric_ops', 'can_cast', 'promote_types',
29
+ 'min_scalar_type', 'result_type', 'asarray', 'asanyarray',
30
+ 'ascontiguousarray', 'asfortranarray', 'isfortran', 'empty_like',
31
+ 'zeros_like', 'ones_like', 'correlate', 'convolve', 'inner', 'dot',
32
+ 'einsum', 'outer', 'vdot', 'alterdot', 'restoredot', 'roll',
33
+ 'rollaxis', 'cross', 'tensordot', 'array2string', 'get_printoptions',
34
+ 'set_printoptions', 'array_repr', 'array_str', 'set_string_function',
35
+ 'little_endian', 'require', 'fromiter', 'array_equal', 'array_equiv',
36
+ 'indices', 'fromfunction', 'isclose', 'load', 'loads', 'isscalar',
37
+ 'binary_repr', 'base_repr', 'ones', 'identity', 'allclose',
38
+ 'compare_chararrays', 'putmask', 'seterr', 'geterr', 'setbufsize',
39
+ 'getbufsize', 'seterrcall', 'geterrcall', 'errstate', 'flatnonzero',
40
+ 'Inf', 'inf', 'infty', 'Infinity', 'nan', 'NaN', 'False_', 'True_',
41
+ 'bitwise_not', 'CLIP', 'RAISE', 'WRAP', 'MAXDIMS', 'BUFSIZE',
42
+ 'ALLOW_THREADS', 'ComplexWarning', 'may_share_memory', 'full',
43
+ 'full_like', 'matmul',
44
+ ]
45
+
46
+ if sys.version_info[0] < 3:
47
+ __all__.extend(['getbuffer', 'newbuffer'])
48
+
49
+
50
+ class ComplexWarning(RuntimeWarning):
51
+ """
52
+ The warning raised when casting a complex dtype to a real dtype.
53
+
54
+ As implemented, casting a complex number to a real discards its imaginary
55
+ part, but this behavior may not be what the user actually wants.
56
+
57
+ """
58
+ pass
59
+
60
+ bitwise_not = invert
61
+
62
+ CLIP = multiarray.CLIP
63
+ WRAP = multiarray.WRAP
64
+ RAISE = multiarray.RAISE
65
+ MAXDIMS = multiarray.MAXDIMS
66
+ ALLOW_THREADS = multiarray.ALLOW_THREADS
67
+ BUFSIZE = multiarray.BUFSIZE
68
+
69
+ ndarray = multiarray.ndarray
70
+ flatiter = multiarray.flatiter
71
+ nditer = multiarray.nditer
72
+ nested_iters = multiarray.nested_iters
73
+ broadcast = multiarray.broadcast
74
+ dtype = multiarray.dtype
75
+ copyto = multiarray.copyto
76
+ ufunc = type(sin)
77
+
78
+
79
+ def zeros_like(a, dtype=None, order='K', subok=True):
80
+ """
81
+ Return an array of zeros with the same shape and type as a given array.
82
+
83
+ Parameters
84
+ ----------
85
+ a : array_like
86
+ The shape and data-type of `a` define these same attributes of
87
+ the returned array.
88
+ dtype : data-type, optional
89
+ Overrides the data type of the result.
90
+
91
+ .. versionadded:: 1.6.0
92
+ order : {'C', 'F', 'A', or 'K'}, optional
93
+ Overrides the memory layout of the result. 'C' means C-order,
94
+ 'F' means F-order, 'A' means 'F' if `a` is Fortran contiguous,
95
+ 'C' otherwise. 'K' means match the layout of `a` as closely
96
+ as possible.
97
+
98
+ .. versionadded:: 1.6.0
99
+ subok : bool, optional.
100
+ If True, then the newly created array will use the sub-class
101
+ type of 'a', otherwise it will be a base-class array. Defaults
102
+ to True.
103
+
104
+ Returns
105
+ -------
106
+ out : ndarray
107
+ Array of zeros with the same shape and type as `a`.
108
+
109
+ See Also
110
+ --------
111
+ ones_like : Return an array of ones with shape and type of input.
112
+ empty_like : Return an empty array with shape and type of input.
113
+ zeros : Return a new array setting values to zero.
114
+ ones : Return a new array setting values to one.
115
+ empty : Return a new uninitialized array.
116
+
117
+ Examples
118
+ --------
119
+ >>> x = np.arange(6)
120
+ >>> x = x.reshape((2, 3))
121
+ >>> x
122
+ array([[0, 1, 2],
123
+ [3, 4, 5]])
124
+ >>> np.zeros_like(x)
125
+ array([[0, 0, 0],
126
+ [0, 0, 0]])
127
+
128
+ >>> y = np.arange(3, dtype=np.float)
129
+ >>> y
130
+ array([ 0., 1., 2.])
131
+ >>> np.zeros_like(y)
132
+ array([ 0., 0., 0.])
133
+
134
+ """
135
+ res = empty_like(a, dtype=dtype, order=order, subok=subok)
136
+ # needed instead of a 0 to get same result as zeros for for string dtypes
137
+ z = zeros(1, dtype=res.dtype)
138
+ multiarray.copyto(res, z, casting='unsafe')
139
+ return res
140
+
141
+ def ones(shape, dtype=None, order='C'):
142
+ """
143
+ Return a new array of given shape and type, filled with ones.
144
+
145
+ Parameters
146
+ ----------
147
+ shape : int or sequence of ints
148
+ Shape of the new array, e.g., ``(2, 3)`` or ``2``.
149
+ dtype : data-type, optional
150
+ The desired data-type for the array, e.g., `numpy.int8`. Default is
151
+ `numpy.float64`.
152
+ order : {'C', 'F'}, optional
153
+ Whether to store multidimensional data in C- or Fortran-contiguous
154
+ (row- or column-wise) order in memory.
155
+
156
+ Returns
157
+ -------
158
+ out : ndarray
159
+ Array of ones with the given shape, dtype, and order.
160
+
161
+ See Also
162
+ --------
163
+ zeros, ones_like
164
+
165
+ Examples
166
+ --------
167
+ >>> np.ones(5)
168
+ array([ 1., 1., 1., 1., 1.])
169
+
170
+ >>> np.ones((5,), dtype=np.int)
171
+ array([1, 1, 1, 1, 1])
172
+
173
+ >>> np.ones((2, 1))
174
+ array([[ 1.],
175
+ [ 1.]])
176
+
177
+ >>> s = (2,2)
178
+ >>> np.ones(s)
179
+ array([[ 1., 1.],
180
+ [ 1., 1.]])
181
+
182
+ """
183
+ a = empty(shape, dtype, order)
184
+ multiarray.copyto(a, 1, casting='unsafe')
185
+ return a
186
+
187
+ def ones_like(a, dtype=None, order='K', subok=True):
188
+ """
189
+ Return an array of ones with the same shape and type as a given array.
190
+
191
+ Parameters
192
+ ----------
193
+ a : array_like
194
+ The shape and data-type of `a` define these same attributes of
195
+ the returned array.
196
+ dtype : data-type, optional
197
+ Overrides the data type of the result.
198
+
199
+ .. versionadded:: 1.6.0
200
+ order : {'C', 'F', 'A', or 'K'}, optional
201
+ Overrides the memory layout of the result. 'C' means C-order,
202
+ 'F' means F-order, 'A' means 'F' if `a` is Fortran contiguous,
203
+ 'C' otherwise. 'K' means match the layout of `a` as closely
204
+ as possible.
205
+
206
+ .. versionadded:: 1.6.0
207
+ subok : bool, optional.
208
+ If True, then the newly created array will use the sub-class
209
+ type of 'a', otherwise it will be a base-class array. Defaults
210
+ to True.
211
+
212
+ Returns
213
+ -------
214
+ out : ndarray
215
+ Array of ones with the same shape and type as `a`.
216
+
217
+ See Also
218
+ --------
219
+ zeros_like : Return an array of zeros with shape and type of input.
220
+ empty_like : Return an empty array with shape and type of input.
221
+ zeros : Return a new array setting values to zero.
222
+ ones : Return a new array setting values to one.
223
+ empty : Return a new uninitialized array.
224
+
225
+ Examples
226
+ --------
227
+ >>> x = np.arange(6)
228
+ >>> x = x.reshape((2, 3))
229
+ >>> x
230
+ array([[0, 1, 2],
231
+ [3, 4, 5]])
232
+ >>> np.ones_like(x)
233
+ array([[1, 1, 1],
234
+ [1, 1, 1]])
235
+
236
+ >>> y = np.arange(3, dtype=np.float)
237
+ >>> y
238
+ array([ 0., 1., 2.])
239
+ >>> np.ones_like(y)
240
+ array([ 1., 1., 1.])
241
+
242
+ """
243
+ res = empty_like(a, dtype=dtype, order=order, subok=subok)
244
+ multiarray.copyto(res, 1, casting='unsafe')
245
+ return res
246
+
247
+ def full(shape, fill_value, dtype=None, order='C'):
248
+ """
249
+ Return a new array of given shape and type, filled with `fill_value`.
250
+
251
+ Parameters
252
+ ----------
253
+ shape : int or sequence of ints
254
+ Shape of the new array, e.g., ``(2, 3)`` or ``2``.
255
+ fill_value : scalar
256
+ Fill value.
257
+ dtype : data-type, optional
258
+ The desired data-type for the array, e.g., `np.int8`. Default
259
+ is `float`, but will change to `np.array(fill_value).dtype` in a
260
+ future release.
261
+ order : {'C', 'F'}, optional
262
+ Whether to store multidimensional data in C- or Fortran-contiguous
263
+ (row- or column-wise) order in memory.
264
+
265
+ Returns
266
+ -------
267
+ out : ndarray
268
+ Array of `fill_value` with the given shape, dtype, and order.
269
+
270
+ See Also
271
+ --------
272
+ zeros_like : Return an array of zeros with shape and type of input.
273
+ ones_like : Return an array of ones with shape and type of input.
274
+ empty_like : Return an empty array with shape and type of input.
275
+ full_like : Fill an array with shape and type of input.
276
+ zeros : Return a new array setting values to zero.
277
+ ones : Return a new array setting values to one.
278
+ empty : Return a new uninitialized array.
279
+
280
+ Examples
281
+ --------
282
+ >>> np.full((2, 2), np.inf)
283
+ array([[ inf, inf],
284
+ [ inf, inf]])
285
+ >>> np.full((2, 2), 10, dtype=np.int)
286
+ array([[10, 10],
287
+ [10, 10]])
288
+
289
+ """
290
+ a = empty(shape, dtype, order)
291
+ if array(fill_value).dtype != a.dtype:
292
+ warnings.warn(
293
+ "in the future, full(..., {0!r}) will return an array of {1!r}".
294
+ format(fill_value, array(fill_value).dtype), FutureWarning)
295
+ multiarray.copyto(a, fill_value, casting='unsafe')
296
+ return a
297
+
298
+ def full_like(a, fill_value, dtype=None, order='K', subok=True):
299
+ """
300
+ Return a full array with the same shape and type as a given array.
301
+
302
+ Parameters
303
+ ----------
304
+ a : array_like
305
+ The shape and data-type of `a` define these same attributes of
306
+ the returned array.
307
+ fill_value : scalar
308
+ Fill value.
309
+ dtype : data-type, optional
310
+ Overrides the data type of the result.
311
+ order : {'C', 'F', 'A', or 'K'}, optional
312
+ Overrides the memory layout of the result. 'C' means C-order,
313
+ 'F' means F-order, 'A' means 'F' if `a` is Fortran contiguous,
314
+ 'C' otherwise. 'K' means match the layout of `a` as closely
315
+ as possible.
316
+ subok : bool, optional.
317
+ If True, then the newly created array will use the sub-class
318
+ type of 'a', otherwise it will be a base-class array. Defaults
319
+ to True.
320
+
321
+ Returns
322
+ -------
323
+ out : ndarray
324
+ Array of `fill_value` with the same shape and type as `a`.
325
+
326
+ See Also
327
+ --------
328
+ zeros_like : Return an array of zeros with shape and type of input.
329
+ ones_like : Return an array of ones with shape and type of input.
330
+ empty_like : Return an empty array with shape and type of input.
331
+ zeros : Return a new array setting values to zero.
332
+ ones : Return a new array setting values to one.
333
+ empty : Return a new uninitialized array.
334
+ full : Fill a new array.
335
+
336
+ Examples
337
+ --------
338
+ >>> x = np.arange(6, dtype=np.int)
339
+ >>> np.full_like(x, 1)
340
+ array([1, 1, 1, 1, 1, 1])
341
+ >>> np.full_like(x, 0.1)
342
+ array([0, 0, 0, 0, 0, 0])
343
+ >>> np.full_like(x, 0.1, dtype=np.double)
344
+ array([ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1])
345
+ >>> np.full_like(x, np.nan, dtype=np.double)
346
+ array([ nan, nan, nan, nan, nan, nan])
347
+
348
+ >>> y = np.arange(6, dtype=np.double)
349
+ >>> np.full_like(y, 0.1)
350
+ array([ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1])
351
+
352
+ """
353
+ res = empty_like(a, dtype=dtype, order=order, subok=subok)
354
+ multiarray.copyto(res, fill_value, casting='unsafe')
355
+ return res
356
+
357
+
358
+ def extend_all(module):
359
+ adict = {}
360
+ for a in __all__:
361
+ adict[a] = 1
362
+ try:
363
+ mall = getattr(module, '__all__')
364
+ except AttributeError:
365
+ mall = [k for k in module.__dict__.keys() if not k.startswith('_')]
366
+ for a in mall:
367
+ if a not in adict:
368
+ __all__.append(a)
369
+
370
+ newaxis = None
371
+
372
+
373
+ arange = multiarray.arange
374
+ array = multiarray.array
375
+ zeros = multiarray.zeros
376
+ count_nonzero = multiarray.count_nonzero
377
+ empty = multiarray.empty
378
+ empty_like = multiarray.empty_like
379
+ fromstring = multiarray.fromstring
380
+ fromiter = multiarray.fromiter
381
+ fromfile = multiarray.fromfile
382
+ frombuffer = multiarray.frombuffer
383
+ may_share_memory = multiarray.may_share_memory
384
+ if sys.version_info[0] < 3:
385
+ newbuffer = multiarray.newbuffer
386
+ getbuffer = multiarray.getbuffer
387
+ int_asbuffer = multiarray.int_asbuffer
388
+ where = multiarray.where
389
+ concatenate = multiarray.concatenate
390
+ fastCopyAndTranspose = multiarray._fastCopyAndTranspose
391
+ set_numeric_ops = multiarray.set_numeric_ops
392
+ can_cast = multiarray.can_cast
393
+ promote_types = multiarray.promote_types
394
+ min_scalar_type = multiarray.min_scalar_type
395
+ result_type = multiarray.result_type
396
+ lexsort = multiarray.lexsort
397
+ compare_chararrays = multiarray.compare_chararrays
398
+ putmask = multiarray.putmask
399
+ einsum = multiarray.einsum
400
+ dot = multiarray.dot
401
+ inner = multiarray.inner
402
+ vdot = multiarray.vdot
403
+ matmul = multiarray.matmul
404
+
405
+
406
+ def asarray(a, dtype=None, order=None):
407
+ """Convert the input to an array.
408
+
409
+ Parameters
410
+ ----------
411
+ a : array_like
412
+ Input data, in any form that can be converted to an array. This
413
+ includes lists, lists of tuples, tuples, tuples of tuples, tuples
414
+ of lists and ndarrays.
415
+ dtype : data-type, optional
416
+ By default, the data-type is inferred from the input data.
417
+ order : {'C', 'F'}, optional
418
+ Whether to use row-major (C-style) or
419
+ column-major (Fortran-style) memory representation.
420
+ Defaults to 'C'.
421
+
422
+ Returns
423
+ -------
424
+ out : ndarray
425
+ Array interpretation of `a`. No copy is performed if the input
426
+ is already an ndarray. If `a` is a subclass of ndarray, a base
427
+ class ndarray is returned.
428
+
429
+ See Also
430
+ --------
431
+ asanyarray : Similar function which passes through subclasses.
432
+ ascontiguousarray : Convert input to a contiguous array.
433
+ asfarray : Convert input to a floating point ndarray.
434
+ asfortranarray : Convert input to an ndarray with column-major
435
+ memory order.
436
+ asarray_chkfinite : Similar function which checks input for NaNs and Infs.
437
+ fromiter : Create an array from an iterator.
438
+ fromfunction : Construct an array by executing a function on grid
439
+ positions.
440
+
441
+ Examples
442
+ --------
443
+ Convert a list into an array:
444
+
445
+ >>> a = [1, 2]
446
+ >>> np.asarray(a)
447
+ array([1, 2])
448
+
449
+ Existing arrays are not copied:
450
+
451
+ >>> a = np.array([1, 2])
452
+ >>> np.asarray(a) is a
453
+ True
454
+
455
+ If `dtype` is set, array is copied only if dtype does not match:
456
+
457
+ >>> a = np.array([1, 2], dtype=np.float32)
458
+ >>> np.asarray(a, dtype=np.float32) is a
459
+ True
460
+ >>> np.asarray(a, dtype=np.float64) is a
461
+ False
462
+
463
+ Contrary to `asanyarray`, ndarray subclasses are not passed through:
464
+
465
+ >>> issubclass(np.matrix, np.ndarray)
466
+ True
467
+ >>> a = np.matrix([[1, 2]])
468
+ >>> np.asarray(a) is a
469
+ False
470
+ >>> np.asanyarray(a) is a
471
+ True
472
+
473
+ """
474
+ return array(a, dtype, copy=False, order=order)
475
+
476
+ def asanyarray(a, dtype=None, order=None):
477
+ """Convert the input to an ndarray, but pass ndarray subclasses through.
478
+
479
+ Parameters
480
+ ----------
481
+ a : array_like
482
+ Input data, in any form that can be converted to an array. This
483
+ includes scalars, lists, lists of tuples, tuples, tuples of tuples,
484
+ tuples of lists, and ndarrays.
485
+ dtype : data-type, optional
486
+ By default, the data-type is inferred from the input data.
487
+ order : {'C', 'F'}, optional
488
+ Whether to use row-major (C-style) or column-major
489
+ (Fortran-style) memory representation. Defaults to 'C'.
490
+
491
+ Returns
492
+ -------
493
+ out : ndarray or an ndarray subclass
494
+ Array interpretation of `a`. If `a` is an ndarray or a subclass
495
+ of ndarray, it is returned as-is and no copy is performed.
496
+
497
+ See Also
498
+ --------
499
+ asarray : Similar function which always returns ndarrays.
500
+ ascontiguousarray : Convert input to a contiguous array.
501
+ asfarray : Convert input to a floating point ndarray.
502
+ asfortranarray : Convert input to an ndarray with column-major
503
+ memory order.
504
+ asarray_chkfinite : Similar function which checks input for NaNs and
505
+ Infs.
506
+ fromiter : Create an array from an iterator.
507
+ fromfunction : Construct an array by executing a function on grid
508
+ positions.
509
+
510
+ Examples
511
+ --------
512
+ Convert a list into an array:
513
+
514
+ >>> a = [1, 2]
515
+ >>> np.asanyarray(a)
516
+ array([1, 2])
517
+
518
+ Instances of `ndarray` subclasses are passed through as-is:
519
+
520
+ >>> a = np.matrix([1, 2])
521
+ >>> np.asanyarray(a) is a
522
+ True
523
+
524
+ """
525
+ return array(a, dtype, copy=False, order=order, subok=True)
526
+
527
+ def ascontiguousarray(a, dtype=None):
528
+ """
529
+ Return a contiguous array in memory (C order).
530
+
531
+ Parameters
532
+ ----------
533
+ a : array_like
534
+ Input array.
535
+ dtype : str or dtype object, optional
536
+ Data-type of returned array.
537
+
538
+ Returns
539
+ -------
540
+ out : ndarray
541
+ Contiguous array of same shape and content as `a`, with type `dtype`
542
+ if specified.
543
+
544
+ See Also
545
+ --------
546
+ asfortranarray : Convert input to an ndarray with column-major
547
+ memory order.
548
+ require : Return an ndarray that satisfies requirements.
549
+ ndarray.flags : Information about the memory layout of the array.
550
+
551
+ Examples
552
+ --------
553
+ >>> x = np.arange(6).reshape(2,3)
554
+ >>> np.ascontiguousarray(x, dtype=np.float32)
555
+ array([[ 0., 1., 2.],
556
+ [ 3., 4., 5.]], dtype=float32)
557
+ >>> x.flags['C_CONTIGUOUS']
558
+ True
559
+
560
+ """
561
+ return array(a, dtype, copy=False, order='C', ndmin=1)
562
+
563
+ def asfortranarray(a, dtype=None):
564
+ """
565
+ Return an array laid out in Fortran order in memory.
566
+
567
+ Parameters
568
+ ----------
569
+ a : array_like
570
+ Input array.
571
+ dtype : str or dtype object, optional
572
+ By default, the data-type is inferred from the input data.
573
+
574
+ Returns
575
+ -------
576
+ out : ndarray
577
+ The input `a` in Fortran, or column-major, order.
578
+
579
+ See Also
580
+ --------
581
+ ascontiguousarray : Convert input to a contiguous (C order) array.
582
+ asanyarray : Convert input to an ndarray with either row or
583
+ column-major memory order.
584
+ require : Return an ndarray that satisfies requirements.
585
+ ndarray.flags : Information about the memory layout of the array.
586
+
587
+ Examples
588
+ --------
589
+ >>> x = np.arange(6).reshape(2,3)
590
+ >>> y = np.asfortranarray(x)
591
+ >>> x.flags['F_CONTIGUOUS']
592
+ False
593
+ >>> y.flags['F_CONTIGUOUS']
594
+ True
595
+
596
+ """
597
+ return array(a, dtype, copy=False, order='F', ndmin=1)
598
+
599
+ def require(a, dtype=None, requirements=None):
600
+ """
601
+ Return an ndarray of the provided type that satisfies requirements.
602
+
603
+ This function is useful to be sure that an array with the correct flags
604
+ is returned for passing to compiled code (perhaps through ctypes).
605
+
606
+ Parameters
607
+ ----------
608
+ a : array_like
609
+ The object to be converted to a type-and-requirement-satisfying array.
610
+ dtype : data-type
611
+ The required data-type. If None preserve the current dtype. If your
612
+ application requires the data to be in native byteorder, include
613
+ a byteorder specification as a part of the dtype specification.
614
+ requirements : str or list of str
615
+ The requirements list can be any of the following
616
+
617
+ * 'F_CONTIGUOUS' ('F') - ensure a Fortran-contiguous array
618
+ * 'C_CONTIGUOUS' ('C') - ensure a C-contiguous array
619
+ * 'ALIGNED' ('A') - ensure a data-type aligned array
620
+ * 'WRITEABLE' ('W') - ensure a writable array
621
+ * 'OWNDATA' ('O') - ensure an array that owns its own data
622
+ * 'ENSUREARRAY', ('E') - ensure a base array, instead of a subclass
623
+
624
+ See Also
625
+ --------
626
+ asarray : Convert input to an ndarray.
627
+ asanyarray : Convert to an ndarray, but pass through ndarray subclasses.
628
+ ascontiguousarray : Convert input to a contiguous array.
629
+ asfortranarray : Convert input to an ndarray with column-major
630
+ memory order.
631
+ ndarray.flags : Information about the memory layout of the array.
632
+
633
+ Notes
634
+ -----
635
+ The returned array will be guaranteed to have the listed requirements
636
+ by making a copy if needed.
637
+
638
+ Examples
639
+ --------
640
+ >>> x = np.arange(6).reshape(2,3)
641
+ >>> x.flags
642
+ C_CONTIGUOUS : True
643
+ F_CONTIGUOUS : False
644
+ OWNDATA : False
645
+ WRITEABLE : True
646
+ ALIGNED : True
647
+ UPDATEIFCOPY : False
648
+
649
+ >>> y = np.require(x, dtype=np.float32, requirements=['A', 'O', 'W', 'F'])
650
+ >>> y.flags
651
+ C_CONTIGUOUS : False
652
+ F_CONTIGUOUS : True
653
+ OWNDATA : True
654
+ WRITEABLE : True
655
+ ALIGNED : True
656
+ UPDATEIFCOPY : False
657
+
658
+ """
659
+ possible_flags = {'C':'C', 'C_CONTIGUOUS':'C', 'CONTIGUOUS':'C',
660
+ 'F':'F', 'F_CONTIGUOUS':'F', 'FORTRAN':'F',
661
+ 'A':'A', 'ALIGNED':'A',
662
+ 'W':'W', 'WRITEABLE':'W',
663
+ 'O':'O', 'OWNDATA':'O',
664
+ 'E':'E', 'ENSUREARRAY':'E'}
665
+ if not requirements:
666
+ return asanyarray(a, dtype=dtype)
667
+ else:
668
+ requirements = set(possible_flags[x.upper()] for x in requirements)
669
+
670
+ if 'E' in requirements:
671
+ requirements.remove('E')
672
+ subok = False
673
+ else:
674
+ subok = True
675
+
676
+ order = 'A'
677
+ if requirements >= set(['C', 'F']):
678
+ raise ValueError('Cannot specify both "C" and "F" order')
679
+ elif 'F' in requirements:
680
+ order = 'F'
681
+ requirements.remove('F')
682
+ elif 'C' in requirements:
683
+ order = 'C'
684
+ requirements.remove('C')
685
+
686
+ arr = array(a, dtype=dtype, order=order, copy=False, subok=subok)
687
+
688
+ for prop in requirements:
689
+ if not arr.flags[prop]:
690
+ arr = arr.copy(order)
691
+ break
692
+ return arr
693
+
694
+ def isfortran(a):
695
+ """
696
+ Returns True if array is arranged in Fortran-order in memory
697
+ and not C-order.
698
+
699
+ Parameters
700
+ ----------
701
+ a : ndarray
702
+ Input array.
703
+
704
+
705
+ Examples
706
+ --------
707
+
708
+ np.array allows to specify whether the array is written in C-contiguous
709
+ order (last index varies the fastest), or FORTRAN-contiguous order in
710
+ memory (first index varies the fastest).
711
+
712
+ >>> a = np.array([[1, 2, 3], [4, 5, 6]], order='C')
713
+ >>> a
714
+ array([[1, 2, 3],
715
+ [4, 5, 6]])
716
+ >>> np.isfortran(a)
717
+ False
718
+
719
+ >>> b = np.array([[1, 2, 3], [4, 5, 6]], order='FORTRAN')
720
+ >>> b
721
+ array([[1, 2, 3],
722
+ [4, 5, 6]])
723
+ >>> np.isfortran(b)
724
+ True
725
+
726
+
727
+ The transpose of a C-ordered array is a FORTRAN-ordered array.
728
+
729
+ >>> a = np.array([[1, 2, 3], [4, 5, 6]], order='C')
730
+ >>> a
731
+ array([[1, 2, 3],
732
+ [4, 5, 6]])
733
+ >>> np.isfortran(a)
734
+ False
735
+ >>> b = a.T
736
+ >>> b
737
+ array([[1, 4],
738
+ [2, 5],
739
+ [3, 6]])
740
+ >>> np.isfortran(b)
741
+ True
742
+
743
+ C-ordered arrays evaluate as False even if they are also FORTRAN-ordered.
744
+
745
+ >>> np.isfortran(np.array([1, 2], order='FORTRAN'))
746
+ False
747
+
748
+ """
749
+ return a.flags.fnc
750
+
751
+ def argwhere(a):
752
+ """
753
+ Find the indices of array elements that are non-zero, grouped by element.
754
+
755
+ Parameters
756
+ ----------
757
+ a : array_like
758
+ Input data.
759
+
760
+ Returns
761
+ -------
762
+ index_array : ndarray
763
+ Indices of elements that are non-zero. Indices are grouped by element.
764
+
765
+ See Also
766
+ --------
767
+ where, nonzero
768
+
769
+ Notes
770
+ -----
771
+ ``np.argwhere(a)`` is the same as ``np.transpose(np.nonzero(a))``.
772
+
773
+ The output of ``argwhere`` is not suitable for indexing arrays.
774
+ For this purpose use ``where(a)`` instead.
775
+
776
+ Examples
777
+ --------
778
+ >>> x = np.arange(6).reshape(2,3)
779
+ >>> x
780
+ array([[0, 1, 2],
781
+ [3, 4, 5]])
782
+ >>> np.argwhere(x>1)
783
+ array([[0, 2],
784
+ [1, 0],
785
+ [1, 1],
786
+ [1, 2]])
787
+
788
+ """
789
+ return transpose(nonzero(a))
790
+
791
+ def flatnonzero(a):
792
+ """
793
+ Return indices that are non-zero in the flattened version of a.
794
+
795
+ This is equivalent to a.ravel().nonzero()[0].
796
+
797
+ Parameters
798
+ ----------
799
+ a : ndarray
800
+ Input array.
801
+
802
+ Returns
803
+ -------
804
+ res : ndarray
805
+ Output array, containing the indices of the elements of `a.ravel()`
806
+ that are non-zero.
807
+
808
+ See Also
809
+ --------
810
+ nonzero : Return the indices of the non-zero elements of the input array.
811
+ ravel : Return a 1-D array containing the elements of the input array.
812
+
813
+ Examples
814
+ --------
815
+ >>> x = np.arange(-2, 3)
816
+ >>> x
817
+ array([-2, -1, 0, 1, 2])
818
+ >>> np.flatnonzero(x)
819
+ array([0, 1, 3, 4])
820
+
821
+ Use the indices of the non-zero elements as an index array to extract
822
+ these elements:
823
+
824
+ >>> x.ravel()[np.flatnonzero(x)]
825
+ array([-2, -1, 1, 2])
826
+
827
+ """
828
+ return a.ravel().nonzero()[0]
829
+
830
+ _mode_from_name_dict = {'v': 0,
831
+ 's': 1,
832
+ 'f': 2}
833
+
834
+ def _mode_from_name(mode):
835
+ if isinstance(mode, basestring):
836
+ return _mode_from_name_dict[mode.lower()[0]]
837
+ return mode
838
+
839
+ def correlate(a, v, mode='valid'):
840
+ """
841
+ Cross-correlation of two 1-dimensional sequences.
842
+
843
+ This function computes the correlation as generally defined in signal
844
+ processing texts::
845
+
846
+ c_{av}[k] = sum_n a[n+k] * conj(v[n])
847
+
848
+ with a and v sequences being zero-padded where necessary and conj being
849
+ the conjugate.
850
+
851
+ Parameters
852
+ ----------
853
+ a, v : array_like
854
+ Input sequences.
855
+ mode : {'valid', 'same', 'full'}, optional
856
+ Refer to the `convolve` docstring. Note that the default
857
+ is `valid`, unlike `convolve`, which uses `full`.
858
+ old_behavior : bool
859
+ `old_behavior` was removed in NumPy 1.10. If you need the old
860
+ behavior, use `multiarray.correlate`.
861
+
862
+ Returns
863
+ -------
864
+ out : ndarray
865
+ Discrete cross-correlation of `a` and `v`.
866
+
867
+ See Also
868
+ --------
869
+ convolve : Discrete, linear convolution of two one-dimensional sequences.
870
+ multiarray.correlate : Old, no conjugate, version of correlate.
871
+
872
+ Notes
873
+ -----
874
+ The definition of correlation above is not unique and sometimes correlation
875
+ may be defined differently. Another common definition is::
876
+
877
+ c'_{av}[k] = sum_n a[n] conj(v[n+k])
878
+
879
+ which is related to ``c_{av}[k]`` by ``c'_{av}[k] = c_{av}[-k]``.
880
+
881
+ Examples
882
+ --------
883
+ >>> np.correlate([1, 2, 3], [0, 1, 0.5])
884
+ array([ 3.5])
885
+ >>> np.correlate([1, 2, 3], [0, 1, 0.5], "same")
886
+ array([ 2. , 3.5, 3. ])
887
+ >>> np.correlate([1, 2, 3], [0, 1, 0.5], "full")
888
+ array([ 0.5, 2. , 3.5, 3. , 0. ])
889
+
890
+ Using complex sequences:
891
+
892
+ >>> np.correlate([1+1j, 2, 3-1j], [0, 1, 0.5j], 'full')
893
+ array([ 0.5-0.5j, 1.0+0.j , 1.5-1.5j, 3.0-1.j , 0.0+0.j ])
894
+
895
+ Note that you get the time reversed, complex conjugated result
896
+ when the two input sequences change places, i.e.,
897
+ ``c_{va}[k] = c^{*}_{av}[-k]``:
898
+
899
+ >>> np.correlate([0, 1, 0.5j], [1+1j, 2, 3-1j], 'full')
900
+ array([ 0.0+0.j , 3.0+1.j , 1.5+1.5j, 1.0+0.j , 0.5+0.5j])
901
+
902
+ """
903
+ mode = _mode_from_name(mode)
904
+ return multiarray.correlate2(a, v, mode)
905
+
906
+ def convolve(a,v,mode='full'):
907
+ """
908
+ Returns the discrete, linear convolution of two one-dimensional sequences.
909
+
910
+ The convolution operator is often seen in signal processing, where it
911
+ models the effect of a linear time-invariant system on a signal [1]_. In
912
+ probability theory, the sum of two independent random variables is
913
+ distributed according to the convolution of their individual
914
+ distributions.
915
+
916
+ If `v` is longer than `a`, the arrays are swapped before computation.
917
+
918
+ Parameters
919
+ ----------
920
+ a : (N,) array_like
921
+ First one-dimensional input array.
922
+ v : (M,) array_like
923
+ Second one-dimensional input array.
924
+ mode : {'full', 'valid', 'same'}, optional
925
+ 'full':
926
+ By default, mode is 'full'. This returns the convolution
927
+ at each point of overlap, with an output shape of (N+M-1,). At
928
+ the end-points of the convolution, the signals do not overlap
929
+ completely, and boundary effects may be seen.
930
+
931
+ 'same':
932
+ Mode `same` returns output of length ``max(M, N)``. Boundary
933
+ effects are still visible.
934
+
935
+ 'valid':
936
+ Mode `valid` returns output of length
937
+ ``max(M, N) - min(M, N) + 1``. The convolution product is only given
938
+ for points where the signals overlap completely. Values outside
939
+ the signal boundary have no effect.
940
+
941
+ Returns
942
+ -------
943
+ out : ndarray
944
+ Discrete, linear convolution of `a` and `v`.
945
+
946
+ See Also
947
+ --------
948
+ scipy.signal.fftconvolve : Convolve two arrays using the Fast Fourier
949
+ Transform.
950
+ scipy.linalg.toeplitz : Used to construct the convolution operator.
951
+ polymul : Polynomial multiplication. Same output as convolve, but also
952
+ accepts poly1d objects as input.
953
+
954
+ Notes
955
+ -----
956
+ The discrete convolution operation is defined as
957
+
958
+ .. math:: (a * v)[n] = \\sum_{m = -\\infty}^{\\infty} a[m] v[n - m]
959
+
960
+ It can be shown that a convolution :math:`x(t) * y(t)` in time/space
961
+ is equivalent to the multiplication :math:`X(f) Y(f)` in the Fourier
962
+ domain, after appropriate padding (padding is necessary to prevent
963
+ circular convolution). Since multiplication is more efficient (faster)
964
+ than convolution, the function `scipy.signal.fftconvolve` exploits the
965
+ FFT to calculate the convolution of large data-sets.
966
+
967
+ References
968
+ ----------
969
+ .. [1] Wikipedia, "Convolution", http://en.wikipedia.org/wiki/Convolution.
970
+
971
+ Examples
972
+ --------
973
+ Note how the convolution operator flips the second array
974
+ before "sliding" the two across one another:
975
+
976
+ >>> np.convolve([1, 2, 3], [0, 1, 0.5])
977
+ array([ 0. , 1. , 2.5, 4. , 1.5])
978
+
979
+ Only return the middle values of the convolution.
980
+ Contains boundary effects, where zeros are taken
981
+ into account:
982
+
983
+ >>> np.convolve([1,2,3],[0,1,0.5], 'same')
984
+ array([ 1. , 2.5, 4. ])
985
+
986
+ The two arrays are of the same length, so there
987
+ is only one position where they completely overlap:
988
+
989
+ >>> np.convolve([1,2,3],[0,1,0.5], 'valid')
990
+ array([ 2.5])
991
+
992
+ """
993
+ a, v = array(a, copy=False, ndmin=1), array(v, copy=False, ndmin=1)
994
+ if (len(v) > len(a)):
995
+ a, v = v, a
996
+ if len(a) == 0:
997
+ raise ValueError('a cannot be empty')
998
+ if len(v) == 0:
999
+ raise ValueError('v cannot be empty')
1000
+ mode = _mode_from_name(mode)
1001
+ return multiarray.correlate(a, v[::-1], mode)
1002
+
1003
+ def outer(a, b, out=None):
1004
+ """
1005
+ Compute the outer product of two vectors.
1006
+
1007
+ Given two vectors, ``a = [a0, a1, ..., aM]`` and
1008
+ ``b = [b0, b1, ..., bN]``,
1009
+ the outer product [1]_ is::
1010
+
1011
+ [[a0*b0 a0*b1 ... a0*bN ]
1012
+ [a1*b0 .
1013
+ [ ... .
1014
+ [aM*b0 aM*bN ]]
1015
+
1016
+ Parameters
1017
+ ----------
1018
+ a : (M,) array_like
1019
+ First input vector. Input is flattened if
1020
+ not already 1-dimensional.
1021
+ b : (N,) array_like
1022
+ Second input vector. Input is flattened if
1023
+ not already 1-dimensional.
1024
+ out : (M, N) ndarray, optional
1025
+ A location where the result is stored
1026
+
1027
+ .. versionadded:: 1.9.0
1028
+
1029
+ Returns
1030
+ -------
1031
+ out : (M, N) ndarray
1032
+ ``out[i, j] = a[i] * b[j]``
1033
+
1034
+ See also
1035
+ --------
1036
+ inner, einsum
1037
+
1038
+ References
1039
+ ----------
1040
+ .. [1] : G. H. Golub and C. F. van Loan, *Matrix Computations*, 3rd
1041
+ ed., Baltimore, MD, Johns Hopkins University Press, 1996,
1042
+ pg. 8.
1043
+
1044
+ Examples
1045
+ --------
1046
+ Make a (*very* coarse) grid for computing a Mandelbrot set:
1047
+
1048
+ >>> rl = np.outer(np.ones((5,)), np.linspace(-2, 2, 5))
1049
+ >>> rl
1050
+ array([[-2., -1., 0., 1., 2.],
1051
+ [-2., -1., 0., 1., 2.],
1052
+ [-2., -1., 0., 1., 2.],
1053
+ [-2., -1., 0., 1., 2.],
1054
+ [-2., -1., 0., 1., 2.]])
1055
+ >>> im = np.outer(1j*np.linspace(2, -2, 5), np.ones((5,)))
1056
+ >>> im
1057
+ array([[ 0.+2.j, 0.+2.j, 0.+2.j, 0.+2.j, 0.+2.j],
1058
+ [ 0.+1.j, 0.+1.j, 0.+1.j, 0.+1.j, 0.+1.j],
1059
+ [ 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j],
1060
+ [ 0.-1.j, 0.-1.j, 0.-1.j, 0.-1.j, 0.-1.j],
1061
+ [ 0.-2.j, 0.-2.j, 0.-2.j, 0.-2.j, 0.-2.j]])
1062
+ >>> grid = rl + im
1063
+ >>> grid
1064
+ array([[-2.+2.j, -1.+2.j, 0.+2.j, 1.+2.j, 2.+2.j],
1065
+ [-2.+1.j, -1.+1.j, 0.+1.j, 1.+1.j, 2.+1.j],
1066
+ [-2.+0.j, -1.+0.j, 0.+0.j, 1.+0.j, 2.+0.j],
1067
+ [-2.-1.j, -1.-1.j, 0.-1.j, 1.-1.j, 2.-1.j],
1068
+ [-2.-2.j, -1.-2.j, 0.-2.j, 1.-2.j, 2.-2.j]])
1069
+
1070
+ An example using a "vector" of letters:
1071
+
1072
+ >>> x = np.array(['a', 'b', 'c'], dtype=object)
1073
+ >>> np.outer(x, [1, 2, 3])
1074
+ array([[a, aa, aaa],
1075
+ [b, bb, bbb],
1076
+ [c, cc, ccc]], dtype=object)
1077
+
1078
+ """
1079
+ a = asarray(a)
1080
+ b = asarray(b)
1081
+ return multiply(a.ravel()[:, newaxis], b.ravel()[newaxis,:], out)
1082
+
1083
+
1084
+ def alterdot():
1085
+ """
1086
+ Change `dot`, `vdot`, and `inner` to use accelerated BLAS functions.
1087
+
1088
+ Typically, as a user of Numpy, you do not explicitly call this
1089
+ function. If Numpy is built with an accelerated BLAS, this function is
1090
+ automatically called when Numpy is imported.
1091
+
1092
+ When Numpy is built with an accelerated BLAS like ATLAS, these
1093
+ functions are replaced to make use of the faster implementations. The
1094
+ faster implementations only affect float32, float64, complex64, and
1095
+ complex128 arrays. Furthermore, the BLAS API only includes
1096
+ matrix-matrix, matrix-vector, and vector-vector products. Products of
1097
+ arrays with larger dimensionalities use the built in functions and are
1098
+ not accelerated.
1099
+
1100
+ .. note:: Deprecated in Numpy 1.10
1101
+ The cblas functions have been integrated into the multarray
1102
+ module and alterdot now longer does anything. It will be
1103
+ removed in Numpy 1.11.0.
1104
+
1105
+ See Also
1106
+ --------
1107
+ restoredot : `restoredot` undoes the effects of `alterdot`.
1108
+
1109
+ """
1110
+ # 2014-08-13, 1.10
1111
+ warnings.warn("alterdot no longer does anything.", DeprecationWarning)
1112
+
1113
+
1114
+ def restoredot():
1115
+ """
1116
+ Restore `dot`, `vdot`, and `innerproduct` to the default non-BLAS
1117
+ implementations.
1118
+
1119
+ Typically, the user will only need to call this when troubleshooting
1120
+ and installation problem, reproducing the conditions of a build without
1121
+ an accelerated BLAS, or when being very careful about benchmarking
1122
+ linear algebra operations.
1123
+
1124
+ .. note:: Deprecated in Numpy 1.10
1125
+ The cblas functions have been integrated into the multarray
1126
+ module and restoredot now longer does anything. It will be
1127
+ removed in Numpy 1.11.0.
1128
+
1129
+ See Also
1130
+ --------
1131
+ alterdot : `restoredot` undoes the effects of `alterdot`.
1132
+
1133
+ """
1134
+ # 2014-08-13, 1.10
1135
+ warnings.warn("restoredot no longer does anything.", DeprecationWarning)
1136
+
1137
+
1138
+ def tensordot(a, b, axes=2):
1139
+ """
1140
+ Compute tensor dot product along specified axes for arrays >= 1-D.
1141
+
1142
+ Given two tensors (arrays of dimension greater than or equal to one),
1143
+ `a` and `b`, and an array_like object containing two array_like
1144
+ objects, ``(a_axes, b_axes)``, sum the products of `a`'s and `b`'s
1145
+ elements (components) over the axes specified by ``a_axes`` and
1146
+ ``b_axes``. The third argument can be a single non-negative
1147
+ integer_like scalar, ``N``; if it is such, then the last ``N``
1148
+ dimensions of `a` and the first ``N`` dimensions of `b` are summed
1149
+ over.
1150
+
1151
+ Parameters
1152
+ ----------
1153
+ a, b : array_like, len(shape) >= 1
1154
+ Tensors to "dot".
1155
+
1156
+ axes : int or (2,) array_like
1157
+ * integer_like
1158
+ If an int N, sum over the last N axes of `a` and the first N axes
1159
+ of `b` in order. The sizes of the corresponding axes must match.
1160
+ * (2,) array_like
1161
+ Or, a list of axes to be summed over, first sequence applying to `a`,
1162
+ second to `b`. Both elements array_like must be of the same length.
1163
+
1164
+ See Also
1165
+ --------
1166
+ dot, einsum
1167
+
1168
+ Notes
1169
+ -----
1170
+ Three common use cases are:
1171
+ ``axes = 0`` : tensor product $a\otimes b$
1172
+ ``axes = 1`` : tensor dot product $a\cdot b$
1173
+ ``axes = 2`` : (default) tensor double contraction $a:b$
1174
+
1175
+ When `axes` is integer_like, the sequence for evaluation will be: first
1176
+ the -Nth axis in `a` and 0th axis in `b`, and the -1th axis in `a` and
1177
+ Nth axis in `b` last.
1178
+
1179
+ When there is more than one axis to sum over - and they are not the last
1180
+ (first) axes of `a` (`b`) - the argument `axes` should consist of
1181
+ two sequences of the same length, with the first axis to sum over given
1182
+ first in both sequences, the second axis second, and so forth.
1183
+
1184
+ Examples
1185
+ --------
1186
+ A "traditional" example:
1187
+
1188
+ >>> a = np.arange(60.).reshape(3,4,5)
1189
+ >>> b = np.arange(24.).reshape(4,3,2)
1190
+ >>> c = np.tensordot(a,b, axes=([1,0],[0,1]))
1191
+ >>> c.shape
1192
+ (5, 2)
1193
+ >>> c
1194
+ array([[ 4400., 4730.],
1195
+ [ 4532., 4874.],
1196
+ [ 4664., 5018.],
1197
+ [ 4796., 5162.],
1198
+ [ 4928., 5306.]])
1199
+ >>> # A slower but equivalent way of computing the same...
1200
+ >>> d = np.zeros((5,2))
1201
+ >>> for i in range(5):
1202
+ ... for j in range(2):
1203
+ ... for k in range(3):
1204
+ ... for n in range(4):
1205
+ ... d[i,j] += a[k,n,i] * b[n,k,j]
1206
+ >>> c == d
1207
+ array([[ True, True],
1208
+ [ True, True],
1209
+ [ True, True],
1210
+ [ True, True],
1211
+ [ True, True]], dtype=bool)
1212
+
1213
+ An extended example taking advantage of the overloading of + and \\*:
1214
+
1215
+ >>> a = np.array(range(1, 9))
1216
+ >>> a.shape = (2, 2, 2)
1217
+ >>> A = np.array(('a', 'b', 'c', 'd'), dtype=object)
1218
+ >>> A.shape = (2, 2)
1219
+ >>> a; A
1220
+ array([[[1, 2],
1221
+ [3, 4]],
1222
+ [[5, 6],
1223
+ [7, 8]]])
1224
+ array([[a, b],
1225
+ [c, d]], dtype=object)
1226
+
1227
+ >>> np.tensordot(a, A) # third argument default is 2 for double-contraction
1228
+ array([abbcccdddd, aaaaabbbbbbcccccccdddddddd], dtype=object)
1229
+
1230
+ >>> np.tensordot(a, A, 1)
1231
+ array([[[acc, bdd],
1232
+ [aaacccc, bbbdddd]],
1233
+ [[aaaaacccccc, bbbbbdddddd],
1234
+ [aaaaaaacccccccc, bbbbbbbdddddddd]]], dtype=object)
1235
+
1236
+ >>> np.tensordot(a, A, 0) # tensor product (result too long to incl.)
1237
+ array([[[[[a, b],
1238
+ [c, d]],
1239
+ ...
1240
+
1241
+ >>> np.tensordot(a, A, (0, 1))
1242
+ array([[[abbbbb, cddddd],
1243
+ [aabbbbbb, ccdddddd]],
1244
+ [[aaabbbbbbb, cccddddddd],
1245
+ [aaaabbbbbbbb, ccccdddddddd]]], dtype=object)
1246
+
1247
+ >>> np.tensordot(a, A, (2, 1))
1248
+ array([[[abb, cdd],
1249
+ [aaabbbb, cccdddd]],
1250
+ [[aaaaabbbbbb, cccccdddddd],
1251
+ [aaaaaaabbbbbbbb, cccccccdddddddd]]], dtype=object)
1252
+
1253
+ >>> np.tensordot(a, A, ((0, 1), (0, 1)))
1254
+ array([abbbcccccddddddd, aabbbbccccccdddddddd], dtype=object)
1255
+
1256
+ >>> np.tensordot(a, A, ((2, 1), (1, 0)))
1257
+ array([acccbbdddd, aaaaacccccccbbbbbbdddddddd], dtype=object)
1258
+
1259
+ """
1260
+ try:
1261
+ iter(axes)
1262
+ except:
1263
+ axes_a = list(range(-axes, 0))
1264
+ axes_b = list(range(0, axes))
1265
+ else:
1266
+ axes_a, axes_b = axes
1267
+ try:
1268
+ na = len(axes_a)
1269
+ axes_a = list(axes_a)
1270
+ except TypeError:
1271
+ axes_a = [axes_a]
1272
+ na = 1
1273
+ try:
1274
+ nb = len(axes_b)
1275
+ axes_b = list(axes_b)
1276
+ except TypeError:
1277
+ axes_b = [axes_b]
1278
+ nb = 1
1279
+
1280
+ a, b = asarray(a), asarray(b)
1281
+ as_ = a.shape
1282
+ nda = len(a.shape)
1283
+ bs = b.shape
1284
+ ndb = len(b.shape)
1285
+ equal = True
1286
+ if na != nb:
1287
+ equal = False
1288
+ else:
1289
+ for k in range(na):
1290
+ if as_[axes_a[k]] != bs[axes_b[k]]:
1291
+ equal = False
1292
+ break
1293
+ if axes_a[k] < 0:
1294
+ axes_a[k] += nda
1295
+ if axes_b[k] < 0:
1296
+ axes_b[k] += ndb
1297
+ if not equal:
1298
+ raise ValueError("shape-mismatch for sum")
1299
+
1300
+ # Move the axes to sum over to the end of "a"
1301
+ # and to the front of "b"
1302
+ notin = [k for k in range(nda) if k not in axes_a]
1303
+ newaxes_a = notin + axes_a
1304
+ N2 = 1
1305
+ for axis in axes_a:
1306
+ N2 *= as_[axis]
1307
+ newshape_a = (-1, N2)
1308
+ olda = [as_[axis] for axis in notin]
1309
+
1310
+ notin = [k for k in range(ndb) if k not in axes_b]
1311
+ newaxes_b = axes_b + notin
1312
+ N2 = 1
1313
+ for axis in axes_b:
1314
+ N2 *= bs[axis]
1315
+ newshape_b = (N2, -1)
1316
+ oldb = [bs[axis] for axis in notin]
1317
+
1318
+ at = a.transpose(newaxes_a).reshape(newshape_a)
1319
+ bt = b.transpose(newaxes_b).reshape(newshape_b)
1320
+ res = dot(at, bt)
1321
+ return res.reshape(olda + oldb)
1322
+
1323
+ def roll(a, shift, axis=None):
1324
+ """
1325
+ Roll array elements along a given axis.
1326
+
1327
+ Elements that roll beyond the last position are re-introduced at
1328
+ the first.
1329
+
1330
+ Parameters
1331
+ ----------
1332
+ a : array_like
1333
+ Input array.
1334
+ shift : int
1335
+ The number of places by which elements are shifted.
1336
+ axis : int, optional
1337
+ The axis along which elements are shifted. By default, the array
1338
+ is flattened before shifting, after which the original
1339
+ shape is restored.
1340
+
1341
+ Returns
1342
+ -------
1343
+ res : ndarray
1344
+ Output array, with the same shape as `a`.
1345
+
1346
+ See Also
1347
+ --------
1348
+ rollaxis : Roll the specified axis backwards, until it lies in a
1349
+ given position.
1350
+
1351
+ Examples
1352
+ --------
1353
+ >>> x = np.arange(10)
1354
+ >>> np.roll(x, 2)
1355
+ array([8, 9, 0, 1, 2, 3, 4, 5, 6, 7])
1356
+
1357
+ >>> x2 = np.reshape(x, (2,5))
1358
+ >>> x2
1359
+ array([[0, 1, 2, 3, 4],
1360
+ [5, 6, 7, 8, 9]])
1361
+ >>> np.roll(x2, 1)
1362
+ array([[9, 0, 1, 2, 3],
1363
+ [4, 5, 6, 7, 8]])
1364
+ >>> np.roll(x2, 1, axis=0)
1365
+ array([[5, 6, 7, 8, 9],
1366
+ [0, 1, 2, 3, 4]])
1367
+ >>> np.roll(x2, 1, axis=1)
1368
+ array([[4, 0, 1, 2, 3],
1369
+ [9, 5, 6, 7, 8]])
1370
+
1371
+ """
1372
+ a = asanyarray(a)
1373
+ if axis is None:
1374
+ n = a.size
1375
+ reshape = True
1376
+ else:
1377
+ try:
1378
+ n = a.shape[axis]
1379
+ except IndexError:
1380
+ raise ValueError('axis must be >= 0 and < %d' % a.ndim)
1381
+ reshape = False
1382
+ if n == 0:
1383
+ return a
1384
+ shift %= n
1385
+ indexes = concatenate((arange(n - shift, n), arange(n - shift)))
1386
+ res = a.take(indexes, axis)
1387
+ if reshape:
1388
+ res = res.reshape(a.shape)
1389
+ return res
1390
+
1391
+
1392
+ def rollaxis(a, axis, start=0):
1393
+ """
1394
+ Roll the specified axis backwards, until it lies in a given position.
1395
+
1396
+ Parameters
1397
+ ----------
1398
+ a : ndarray
1399
+ Input array.
1400
+ axis : int
1401
+ The axis to roll backwards. The positions of the other axes do not
1402
+ change relative to one another.
1403
+ start : int, optional
1404
+ The axis is rolled until it lies before this position. The default,
1405
+ 0, results in a "complete" roll.
1406
+
1407
+ Returns
1408
+ -------
1409
+ res : ndarray
1410
+ For Numpy >= 1.10 a view of `a` is always returned. For earlier
1411
+ Numpy versions a view of `a` is returned only if the order of the
1412
+ axes is changed, otherwise the input array is returned.
1413
+
1414
+ See Also
1415
+ --------
1416
+ roll : Roll the elements of an array by a number of positions along a
1417
+ given axis.
1418
+
1419
+ Examples
1420
+ --------
1421
+ >>> a = np.ones((3,4,5,6))
1422
+ >>> np.rollaxis(a, 3, 1).shape
1423
+ (3, 6, 4, 5)
1424
+ >>> np.rollaxis(a, 2).shape
1425
+ (5, 3, 4, 6)
1426
+ >>> np.rollaxis(a, 1, 4).shape
1427
+ (3, 5, 6, 4)
1428
+
1429
+ """
1430
+ n = a.ndim
1431
+ if axis < 0:
1432
+ axis += n
1433
+ if start < 0:
1434
+ start += n
1435
+ msg = 'rollaxis: %s (%d) must be >=0 and < %d'
1436
+ if not (0 <= axis < n):
1437
+ raise ValueError(msg % ('axis', axis, n))
1438
+ if not (0 <= start < n + 1):
1439
+ raise ValueError(msg % ('start', start, n + 1))
1440
+ if (axis < start):
1441
+ # it's been removed
1442
+ start -= 1
1443
+ if axis == start:
1444
+ return a[...]
1445
+ axes = list(range(0, n))
1446
+ axes.remove(axis)
1447
+ axes.insert(start, axis)
1448
+ return a.transpose(axes)
1449
+
1450
+
1451
+ # fix hack in scipy which imports this function
1452
+ def _move_axis_to_0(a, axis):
1453
+ return rollaxis(a, axis, 0)
1454
+
1455
+ def cross(a, b, axisa=-1, axisb=-1, axisc=-1, axis=None):
1456
+ """
1457
+ Return the cross product of two (arrays of) vectors.
1458
+
1459
+ The cross product of `a` and `b` in :math:`R^3` is a vector perpendicular
1460
+ to both `a` and `b`. If `a` and `b` are arrays of vectors, the vectors
1461
+ are defined by the last axis of `a` and `b` by default, and these axes
1462
+ can have dimensions 2 or 3. Where the dimension of either `a` or `b` is
1463
+ 2, the third component of the input vector is assumed to be zero and the
1464
+ cross product calculated accordingly. In cases where both input vectors
1465
+ have dimension 2, the z-component of the cross product is returned.
1466
+
1467
+ Parameters
1468
+ ----------
1469
+ a : array_like
1470
+ Components of the first vector(s).
1471
+ b : array_like
1472
+ Components of the second vector(s).
1473
+ axisa : int, optional
1474
+ Axis of `a` that defines the vector(s). By default, the last axis.
1475
+ axisb : int, optional
1476
+ Axis of `b` that defines the vector(s). By default, the last axis.
1477
+ axisc : int, optional
1478
+ Axis of `c` containing the cross product vector(s). Ignored if
1479
+ both input vectors have dimension 2, as the return is scalar.
1480
+ By default, the last axis.
1481
+ axis : int, optional
1482
+ If defined, the axis of `a`, `b` and `c` that defines the vector(s)
1483
+ and cross product(s). Overrides `axisa`, `axisb` and `axisc`.
1484
+
1485
+ Returns
1486
+ -------
1487
+ c : ndarray
1488
+ Vector cross product(s).
1489
+
1490
+ Raises
1491
+ ------
1492
+ ValueError
1493
+ When the dimension of the vector(s) in `a` and/or `b` does not
1494
+ equal 2 or 3.
1495
+
1496
+ See Also
1497
+ --------
1498
+ inner : Inner product
1499
+ outer : Outer product.
1500
+ ix_ : Construct index arrays.
1501
+
1502
+ Notes
1503
+ -----
1504
+ .. versionadded:: 1.9.0
1505
+
1506
+ Supports full broadcasting of the inputs.
1507
+
1508
+ Examples
1509
+ --------
1510
+ Vector cross-product.
1511
+
1512
+ >>> x = [1, 2, 3]
1513
+ >>> y = [4, 5, 6]
1514
+ >>> np.cross(x, y)
1515
+ array([-3, 6, -3])
1516
+
1517
+ One vector with dimension 2.
1518
+
1519
+ >>> x = [1, 2]
1520
+ >>> y = [4, 5, 6]
1521
+ >>> np.cross(x, y)
1522
+ array([12, -6, -3])
1523
+
1524
+ Equivalently:
1525
+
1526
+ >>> x = [1, 2, 0]
1527
+ >>> y = [4, 5, 6]
1528
+ >>> np.cross(x, y)
1529
+ array([12, -6, -3])
1530
+
1531
+ Both vectors with dimension 2.
1532
+
1533
+ >>> x = [1,2]
1534
+ >>> y = [4,5]
1535
+ >>> np.cross(x, y)
1536
+ -3
1537
+
1538
+ Multiple vector cross-products. Note that the direction of the cross
1539
+ product vector is defined by the `right-hand rule`.
1540
+
1541
+ >>> x = np.array([[1,2,3], [4,5,6]])
1542
+ >>> y = np.array([[4,5,6], [1,2,3]])
1543
+ >>> np.cross(x, y)
1544
+ array([[-3, 6, -3],
1545
+ [ 3, -6, 3]])
1546
+
1547
+ The orientation of `c` can be changed using the `axisc` keyword.
1548
+
1549
+ >>> np.cross(x, y, axisc=0)
1550
+ array([[-3, 3],
1551
+ [ 6, -6],
1552
+ [-3, 3]])
1553
+
1554
+ Change the vector definition of `x` and `y` using `axisa` and `axisb`.
1555
+
1556
+ >>> x = np.array([[1,2,3], [4,5,6], [7, 8, 9]])
1557
+ >>> y = np.array([[7, 8, 9], [4,5,6], [1,2,3]])
1558
+ >>> np.cross(x, y)
1559
+ array([[ -6, 12, -6],
1560
+ [ 0, 0, 0],
1561
+ [ 6, -12, 6]])
1562
+ >>> np.cross(x, y, axisa=0, axisb=0)
1563
+ array([[-24, 48, -24],
1564
+ [-30, 60, -30],
1565
+ [-36, 72, -36]])
1566
+
1567
+ """
1568
+ if axis is not None:
1569
+ axisa, axisb, axisc = (axis,) * 3
1570
+ a = asarray(a)
1571
+ b = asarray(b)
1572
+ # Check axisa and axisb are within bounds
1573
+ axis_msg = "'axis{0}' out of bounds"
1574
+ if axisa < -a.ndim or axisa >= a.ndim:
1575
+ raise ValueError(axis_msg.format('a'))
1576
+ if axisb < -b.ndim or axisb >= b.ndim:
1577
+ raise ValueError(axis_msg.format('b'))
1578
+ # Move working axis to the end of the shape
1579
+ a = rollaxis(a, axisa, a.ndim)
1580
+ b = rollaxis(b, axisb, b.ndim)
1581
+ msg = ("incompatible dimensions for cross product\n"
1582
+ "(dimension must be 2 or 3)")
1583
+ if a.shape[-1] not in (2, 3) or b.shape[-1] not in (2, 3):
1584
+ raise ValueError(msg)
1585
+
1586
+ # Create the output array
1587
+ shape = broadcast(a[..., 0], b[..., 0]).shape
1588
+ if a.shape[-1] == 3 or b.shape[-1] == 3:
1589
+ shape += (3,)
1590
+ # Check axisc is within bounds
1591
+ if axisc < -len(shape) or axisc >= len(shape):
1592
+ raise ValueError(axis_msg.format('c'))
1593
+ dtype = promote_types(a.dtype, b.dtype)
1594
+ cp = empty(shape, dtype)
1595
+
1596
+ # create local aliases for readability
1597
+ a0 = a[..., 0]
1598
+ a1 = a[..., 1]
1599
+ if a.shape[-1] == 3:
1600
+ a2 = a[..., 2]
1601
+ b0 = b[..., 0]
1602
+ b1 = b[..., 1]
1603
+ if b.shape[-1] == 3:
1604
+ b2 = b[..., 2]
1605
+ if cp.ndim != 0 and cp.shape[-1] == 3:
1606
+ cp0 = cp[..., 0]
1607
+ cp1 = cp[..., 1]
1608
+ cp2 = cp[..., 2]
1609
+
1610
+ if a.shape[-1] == 2:
1611
+ if b.shape[-1] == 2:
1612
+ # a0 * b1 - a1 * b0
1613
+ multiply(a0, b1, out=cp)
1614
+ cp -= a1 * b0
1615
+ return cp
1616
+ else:
1617
+ assert b.shape[-1] == 3
1618
+ # cp0 = a1 * b2 - 0 (a2 = 0)
1619
+ # cp1 = 0 - a0 * b2 (a2 = 0)
1620
+ # cp2 = a0 * b1 - a1 * b0
1621
+ multiply(a1, b2, out=cp0)
1622
+ multiply(a0, b2, out=cp1)
1623
+ negative(cp1, out=cp1)
1624
+ multiply(a0, b1, out=cp2)
1625
+ cp2 -= a1 * b0
1626
+ else:
1627
+ assert a.shape[-1] == 3
1628
+ if b.shape[-1] == 3:
1629
+ # cp0 = a1 * b2 - a2 * b1
1630
+ # cp1 = a2 * b0 - a0 * b2
1631
+ # cp2 = a0 * b1 - a1 * b0
1632
+ multiply(a1, b2, out=cp0)
1633
+ tmp = array(a2 * b1)
1634
+ cp0 -= tmp
1635
+ multiply(a2, b0, out=cp1)
1636
+ multiply(a0, b2, out=tmp)
1637
+ cp1 -= tmp
1638
+ multiply(a0, b1, out=cp2)
1639
+ multiply(a1, b0, out=tmp)
1640
+ cp2 -= tmp
1641
+ else:
1642
+ assert b.shape[-1] == 2
1643
+ # cp0 = 0 - a2 * b1 (b2 = 0)
1644
+ # cp1 = a2 * b0 - 0 (b2 = 0)
1645
+ # cp2 = a0 * b1 - a1 * b0
1646
+ multiply(a2, b1, out=cp0)
1647
+ negative(cp0, out=cp0)
1648
+ multiply(a2, b0, out=cp1)
1649
+ multiply(a0, b1, out=cp2)
1650
+ cp2 -= a1 * b0
1651
+
1652
+ # This works because we are moving the last axis
1653
+ return rollaxis(cp, -1, axisc)
1654
+
1655
+ #Use numarray's printing function
1656
+ from .arrayprint import array2string, get_printoptions, set_printoptions
1657
+
1658
+ _typelessdata = [int_, float_, complex_]
1659
+ if issubclass(intc, int):
1660
+ _typelessdata.append(intc)
1661
+
1662
+ if issubclass(longlong, int):
1663
+ _typelessdata.append(longlong)
1664
+
1665
+ def array_repr(arr, max_line_width=None, precision=None, suppress_small=None):
1666
+ """
1667
+ Return the string representation of an array.
1668
+
1669
+ Parameters
1670
+ ----------
1671
+ arr : ndarray
1672
+ Input array.
1673
+ max_line_width : int, optional
1674
+ The maximum number of columns the string should span. Newline
1675
+ characters split the string appropriately after array elements.
1676
+ precision : int, optional
1677
+ Floating point precision. Default is the current printing precision
1678
+ (usually 8), which can be altered using `set_printoptions`.
1679
+ suppress_small : bool, optional
1680
+ Represent very small numbers as zero, default is False. Very small
1681
+ is defined by `precision`, if the precision is 8 then
1682
+ numbers smaller than 5e-9 are represented as zero.
1683
+
1684
+ Returns
1685
+ -------
1686
+ string : str
1687
+ The string representation of an array.
1688
+
1689
+ See Also
1690
+ --------
1691
+ array_str, array2string, set_printoptions
1692
+
1693
+ Examples
1694
+ --------
1695
+ >>> np.array_repr(np.array([1,2]))
1696
+ 'array([1, 2])'
1697
+ >>> np.array_repr(np.ma.array([0.]))
1698
+ 'MaskedArray([ 0.])'
1699
+ >>> np.array_repr(np.array([], np.int32))
1700
+ 'array([], dtype=int32)'
1701
+
1702
+ >>> x = np.array([1e-6, 4e-7, 2, 3])
1703
+ >>> np.array_repr(x, precision=6, suppress_small=True)
1704
+ 'array([ 0.000001, 0. , 2. , 3. ])'
1705
+
1706
+ """
1707
+ if arr.size > 0 or arr.shape == (0,):
1708
+ lst = array2string(arr, max_line_width, precision, suppress_small,
1709
+ ', ', "array(")
1710
+ else: # show zero-length shape unless it is (0,)
1711
+ lst = "[], shape=%s" % (repr(arr.shape),)
1712
+
1713
+ if arr.__class__ is not ndarray:
1714
+ cName = arr.__class__.__name__
1715
+ else:
1716
+ cName = "array"
1717
+
1718
+ skipdtype = (arr.dtype.type in _typelessdata) and arr.size > 0
1719
+
1720
+ if skipdtype:
1721
+ return "%s(%s)" % (cName, lst)
1722
+ else:
1723
+ typename = arr.dtype.name
1724
+ # Quote typename in the output if it is "complex".
1725
+ if typename and not (typename[0].isalpha() and typename.isalnum()):
1726
+ typename = "'%s'" % typename
1727
+
1728
+ lf = ''
1729
+ if issubclass(arr.dtype.type, flexible):
1730
+ if arr.dtype.names:
1731
+ typename = "%s" % str(arr.dtype)
1732
+ else:
1733
+ typename = "'%s'" % str(arr.dtype)
1734
+ lf = '\n'+' '*len("array(")
1735
+ return cName + "(%s, %sdtype=%s)" % (lst, lf, typename)
1736
+
1737
+ def array_str(a, max_line_width=None, precision=None, suppress_small=None):
1738
+ """
1739
+ Return a string representation of the data in an array.
1740
+
1741
+ The data in the array is returned as a single string. This function is
1742
+ similar to `array_repr`, the difference being that `array_repr` also
1743
+ returns information on the kind of array and its data type.
1744
+
1745
+ Parameters
1746
+ ----------
1747
+ a : ndarray
1748
+ Input array.
1749
+ max_line_width : int, optional
1750
+ Inserts newlines if text is longer than `max_line_width`. The
1751
+ default is, indirectly, 75.
1752
+ precision : int, optional
1753
+ Floating point precision. Default is the current printing precision
1754
+ (usually 8), which can be altered using `set_printoptions`.
1755
+ suppress_small : bool, optional
1756
+ Represent numbers "very close" to zero as zero; default is False.
1757
+ Very close is defined by precision: if the precision is 8, e.g.,
1758
+ numbers smaller (in absolute value) than 5e-9 are represented as
1759
+ zero.
1760
+
1761
+ See Also
1762
+ --------
1763
+ array2string, array_repr, set_printoptions
1764
+
1765
+ Examples
1766
+ --------
1767
+ >>> np.array_str(np.arange(3))
1768
+ '[0 1 2]'
1769
+
1770
+ """
1771
+ return array2string(a, max_line_width, precision, suppress_small, ' ', "", str)
1772
+
1773
+ def set_string_function(f, repr=True):
1774
+ """
1775
+ Set a Python function to be used when pretty printing arrays.
1776
+
1777
+ Parameters
1778
+ ----------
1779
+ f : function or None
1780
+ Function to be used to pretty print arrays. The function should expect
1781
+ a single array argument and return a string of the representation of
1782
+ the array. If None, the function is reset to the default NumPy function
1783
+ to print arrays.
1784
+ repr : bool, optional
1785
+ If True (default), the function for pretty printing (``__repr__``)
1786
+ is set, if False the function that returns the default string
1787
+ representation (``__str__``) is set.
1788
+
1789
+ See Also
1790
+ --------
1791
+ set_printoptions, get_printoptions
1792
+
1793
+ Examples
1794
+ --------
1795
+ >>> def pprint(arr):
1796
+ ... return 'HA! - What are you going to do now?'
1797
+ ...
1798
+ >>> np.set_string_function(pprint)
1799
+ >>> a = np.arange(10)
1800
+ >>> a
1801
+ HA! - What are you going to do now?
1802
+ >>> print a
1803
+ [0 1 2 3 4 5 6 7 8 9]
1804
+
1805
+ We can reset the function to the default:
1806
+
1807
+ >>> np.set_string_function(None)
1808
+ >>> a
1809
+ array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
1810
+
1811
+ `repr` affects either pretty printing or normal string representation.
1812
+ Note that ``__repr__`` is still affected by setting ``__str__``
1813
+ because the width of each array element in the returned string becomes
1814
+ equal to the length of the result of ``__str__()``.
1815
+
1816
+ >>> x = np.arange(4)
1817
+ >>> np.set_string_function(lambda x:'random', repr=False)
1818
+ >>> x.__str__()
1819
+ 'random'
1820
+ >>> x.__repr__()
1821
+ 'array([ 0, 1, 2, 3])'
1822
+
1823
+ """
1824
+ if f is None:
1825
+ if repr:
1826
+ return multiarray.set_string_function(array_repr, 1)
1827
+ else:
1828
+ return multiarray.set_string_function(array_str, 0)
1829
+ else:
1830
+ return multiarray.set_string_function(f, repr)
1831
+
1832
+ set_string_function(array_str, 0)
1833
+ set_string_function(array_repr, 1)
1834
+
1835
+ little_endian = (sys.byteorder == 'little')
1836
+
1837
+
1838
+ def indices(dimensions, dtype=int):
1839
+ """
1840
+ Return an array representing the indices of a grid.
1841
+
1842
+ Compute an array where the subarrays contain index values 0,1,...
1843
+ varying only along the corresponding axis.
1844
+
1845
+ Parameters
1846
+ ----------
1847
+ dimensions : sequence of ints
1848
+ The shape of the grid.
1849
+ dtype : dtype, optional
1850
+ Data type of the result.
1851
+
1852
+ Returns
1853
+ -------
1854
+ grid : ndarray
1855
+ The array of grid indices,
1856
+ ``grid.shape = (len(dimensions),) + tuple(dimensions)``.
1857
+
1858
+ See Also
1859
+ --------
1860
+ mgrid, meshgrid
1861
+
1862
+ Notes
1863
+ -----
1864
+ The output shape is obtained by prepending the number of dimensions
1865
+ in front of the tuple of dimensions, i.e. if `dimensions` is a tuple
1866
+ ``(r0, ..., rN-1)`` of length ``N``, the output shape is
1867
+ ``(N,r0,...,rN-1)``.
1868
+
1869
+ The subarrays ``grid[k]`` contains the N-D array of indices along the
1870
+ ``k-th`` axis. Explicitly::
1871
+
1872
+ grid[k,i0,i1,...,iN-1] = ik
1873
+
1874
+ Examples
1875
+ --------
1876
+ >>> grid = np.indices((2, 3))
1877
+ >>> grid.shape
1878
+ (2, 2, 3)
1879
+ >>> grid[0] # row indices
1880
+ array([[0, 0, 0],
1881
+ [1, 1, 1]])
1882
+ >>> grid[1] # column indices
1883
+ array([[0, 1, 2],
1884
+ [0, 1, 2]])
1885
+
1886
+ The indices can be used as an index into an array.
1887
+
1888
+ >>> x = np.arange(20).reshape(5, 4)
1889
+ >>> row, col = np.indices((2, 3))
1890
+ >>> x[row, col]
1891
+ array([[0, 1, 2],
1892
+ [4, 5, 6]])
1893
+
1894
+ Note that it would be more straightforward in the above example to
1895
+ extract the required elements directly with ``x[:2, :3]``.
1896
+
1897
+ """
1898
+ dimensions = tuple(dimensions)
1899
+ N = len(dimensions)
1900
+ if N == 0:
1901
+ return array([], dtype=dtype)
1902
+ res = empty((N,)+dimensions, dtype=dtype)
1903
+ for i, dim in enumerate(dimensions):
1904
+ tmp = arange(dim, dtype=dtype)
1905
+ tmp.shape = (1,)*i + (dim,)+(1,)*(N-i-1)
1906
+ newdim = dimensions[:i] + (1,) + dimensions[i+1:]
1907
+ val = zeros(newdim, dtype)
1908
+ add(tmp, val, res[i])
1909
+ return res
1910
+
1911
+ def fromfunction(function, shape, **kwargs):
1912
+ """
1913
+ Construct an array by executing a function over each coordinate.
1914
+
1915
+ The resulting array therefore has a value ``fn(x, y, z)`` at
1916
+ coordinate ``(x, y, z)``.
1917
+
1918
+ Parameters
1919
+ ----------
1920
+ function : callable
1921
+ The function is called with N parameters, where N is the rank of
1922
+ `shape`. Each parameter represents the coordinates of the array
1923
+ varying along a specific axis. For example, if `shape`
1924
+ were ``(2, 2)``, then the parameters in turn be (0, 0), (0, 1),
1925
+ (1, 0), (1, 1).
1926
+ shape : (N,) tuple of ints
1927
+ Shape of the output array, which also determines the shape of
1928
+ the coordinate arrays passed to `function`.
1929
+ dtype : data-type, optional
1930
+ Data-type of the coordinate arrays passed to `function`.
1931
+ By default, `dtype` is float.
1932
+
1933
+ Returns
1934
+ -------
1935
+ fromfunction : any
1936
+ The result of the call to `function` is passed back directly.
1937
+ Therefore the shape of `fromfunction` is completely determined by
1938
+ `function`. If `function` returns a scalar value, the shape of
1939
+ `fromfunction` would match the `shape` parameter.
1940
+
1941
+ See Also
1942
+ --------
1943
+ indices, meshgrid
1944
+
1945
+ Notes
1946
+ -----
1947
+ Keywords other than `dtype` are passed to `function`.
1948
+
1949
+ Examples
1950
+ --------
1951
+ >>> np.fromfunction(lambda i, j: i == j, (3, 3), dtype=int)
1952
+ array([[ True, False, False],
1953
+ [False, True, False],
1954
+ [False, False, True]], dtype=bool)
1955
+
1956
+ >>> np.fromfunction(lambda i, j: i + j, (3, 3), dtype=int)
1957
+ array([[0, 1, 2],
1958
+ [1, 2, 3],
1959
+ [2, 3, 4]])
1960
+
1961
+ """
1962
+ dtype = kwargs.pop('dtype', float)
1963
+ args = indices(shape, dtype=dtype)
1964
+ return function(*args,**kwargs)
1965
+
1966
+ def isscalar(num):
1967
+ """
1968
+ Returns True if the type of `num` is a scalar type.
1969
+
1970
+ Parameters
1971
+ ----------
1972
+ num : any
1973
+ Input argument, can be of any type and shape.
1974
+
1975
+ Returns
1976
+ -------
1977
+ val : bool
1978
+ True if `num` is a scalar type, False if it is not.
1979
+
1980
+ Examples
1981
+ --------
1982
+ >>> np.isscalar(3.1)
1983
+ True
1984
+ >>> np.isscalar([3.1])
1985
+ False
1986
+ >>> np.isscalar(False)
1987
+ True
1988
+
1989
+ """
1990
+ if isinstance(num, generic):
1991
+ return True
1992
+ else:
1993
+ return type(num) in ScalarType
1994
+
1995
+ _lkup = {
1996
+ '0':'0000',
1997
+ '1':'0001',
1998
+ '2':'0010',
1999
+ '3':'0011',
2000
+ '4':'0100',
2001
+ '5':'0101',
2002
+ '6':'0110',
2003
+ '7':'0111',
2004
+ '8':'1000',
2005
+ '9':'1001',
2006
+ 'a':'1010',
2007
+ 'b':'1011',
2008
+ 'c':'1100',
2009
+ 'd':'1101',
2010
+ 'e':'1110',
2011
+ 'f':'1111',
2012
+ 'A':'1010',
2013
+ 'B':'1011',
2014
+ 'C':'1100',
2015
+ 'D':'1101',
2016
+ 'E':'1110',
2017
+ 'F':'1111',
2018
+ 'L':''}
2019
+
2020
+ def binary_repr(num, width=None):
2021
+ """
2022
+ Return the binary representation of the input number as a string.
2023
+
2024
+ For negative numbers, if width is not given, a minus sign is added to the
2025
+ front. If width is given, the two's complement of the number is
2026
+ returned, with respect to that width.
2027
+
2028
+ In a two's-complement system negative numbers are represented by the two's
2029
+ complement of the absolute value. This is the most common method of
2030
+ representing signed integers on computers [1]_. A N-bit two's-complement
2031
+ system can represent every integer in the range
2032
+ :math:`-2^{N-1}` to :math:`+2^{N-1}-1`.
2033
+
2034
+ Parameters
2035
+ ----------
2036
+ num : int
2037
+ Only an integer decimal number can be used.
2038
+ width : int, optional
2039
+ The length of the returned string if `num` is positive, the length of
2040
+ the two's complement if `num` is negative.
2041
+
2042
+ Returns
2043
+ -------
2044
+ bin : str
2045
+ Binary representation of `num` or two's complement of `num`.
2046
+
2047
+ See Also
2048
+ --------
2049
+ base_repr: Return a string representation of a number in the given base
2050
+ system.
2051
+
2052
+ Notes
2053
+ -----
2054
+ `binary_repr` is equivalent to using `base_repr` with base 2, but about 25x
2055
+ faster.
2056
+
2057
+ References
2058
+ ----------
2059
+ .. [1] Wikipedia, "Two's complement",
2060
+ http://en.wikipedia.org/wiki/Two's_complement
2061
+
2062
+ Examples
2063
+ --------
2064
+ >>> np.binary_repr(3)
2065
+ '11'
2066
+ >>> np.binary_repr(-3)
2067
+ '-11'
2068
+ >>> np.binary_repr(3, width=4)
2069
+ '0011'
2070
+
2071
+ The two's complement is returned when the input number is negative and
2072
+ width is specified:
2073
+
2074
+ >>> np.binary_repr(-3, width=4)
2075
+ '1101'
2076
+
2077
+ """
2078
+ # ' <-- unbreak Emacs fontification
2079
+ sign = ''
2080
+ if num < 0:
2081
+ if width is None:
2082
+ sign = '-'
2083
+ num = -num
2084
+ else:
2085
+ # replace num with its 2-complement
2086
+ num = 2**width + num
2087
+ elif num == 0:
2088
+ return '0'*(width or 1)
2089
+ ostr = hex(num)
2090
+ bin = ''.join([_lkup[ch] for ch in ostr[2:]])
2091
+ bin = bin.lstrip('0')
2092
+ if width is not None:
2093
+ bin = bin.zfill(width)
2094
+ return sign + bin
2095
+
2096
+ def base_repr(number, base=2, padding=0):
2097
+ """
2098
+ Return a string representation of a number in the given base system.
2099
+
2100
+ Parameters
2101
+ ----------
2102
+ number : int
2103
+ The value to convert. Only positive values are handled.
2104
+ base : int, optional
2105
+ Convert `number` to the `base` number system. The valid range is 2-36,
2106
+ the default value is 2.
2107
+ padding : int, optional
2108
+ Number of zeros padded on the left. Default is 0 (no padding).
2109
+
2110
+ Returns
2111
+ -------
2112
+ out : str
2113
+ String representation of `number` in `base` system.
2114
+
2115
+ See Also
2116
+ --------
2117
+ binary_repr : Faster version of `base_repr` for base 2.
2118
+
2119
+ Examples
2120
+ --------
2121
+ >>> np.base_repr(5)
2122
+ '101'
2123
+ >>> np.base_repr(6, 5)
2124
+ '11'
2125
+ >>> np.base_repr(7, base=5, padding=3)
2126
+ '00012'
2127
+
2128
+ >>> np.base_repr(10, base=16)
2129
+ 'A'
2130
+ >>> np.base_repr(32, base=16)
2131
+ '20'
2132
+
2133
+ """
2134
+ digits = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
2135
+ if base > len(digits):
2136
+ raise ValueError("Bases greater than 36 not handled in base_repr.")
2137
+
2138
+ num = abs(number)
2139
+ res = []
2140
+ while num:
2141
+ res.append(digits[num % base])
2142
+ num //= base
2143
+ if padding:
2144
+ res.append('0' * padding)
2145
+ if number < 0:
2146
+ res.append('-')
2147
+ return ''.join(reversed(res or '0'))
2148
+
2149
+
2150
+ def load(file):
2151
+ """
2152
+ Wrapper around cPickle.load which accepts either a file-like object or
2153
+ a filename.
2154
+
2155
+ Note that the NumPy binary format is not based on pickle/cPickle anymore.
2156
+ For details on the preferred way of loading and saving files, see `load`
2157
+ and `save`.
2158
+
2159
+ See Also
2160
+ --------
2161
+ load, save
2162
+
2163
+ """
2164
+ if isinstance(file, type("")):
2165
+ file = open(file, "rb")
2166
+ return pickle.load(file)
2167
+
2168
+ # These are all essentially abbreviations
2169
+ # These might wind up in a special abbreviations module
2170
+
2171
+ def _maketup(descr, val):
2172
+ dt = dtype(descr)
2173
+ # Place val in all scalar tuples:
2174
+ fields = dt.fields
2175
+ if fields is None:
2176
+ return val
2177
+ else:
2178
+ res = [_maketup(fields[name][0], val) for name in dt.names]
2179
+ return tuple(res)
2180
+
2181
+ def identity(n, dtype=None):
2182
+ """
2183
+ Return the identity array.
2184
+
2185
+ The identity array is a square array with ones on
2186
+ the main diagonal.
2187
+
2188
+ Parameters
2189
+ ----------
2190
+ n : int
2191
+ Number of rows (and columns) in `n` x `n` output.
2192
+ dtype : data-type, optional
2193
+ Data-type of the output. Defaults to ``float``.
2194
+
2195
+ Returns
2196
+ -------
2197
+ out : ndarray
2198
+ `n` x `n` array with its main diagonal set to one,
2199
+ and all other elements 0.
2200
+
2201
+ Examples
2202
+ --------
2203
+ >>> np.identity(3)
2204
+ array([[ 1., 0., 0.],
2205
+ [ 0., 1., 0.],
2206
+ [ 0., 0., 1.]])
2207
+
2208
+ """
2209
+ from numpy import eye
2210
+ return eye(n, dtype=dtype)
2211
+
2212
+ def allclose(a, b, rtol=1.e-5, atol=1.e-8, equal_nan=False):
2213
+ """
2214
+ Returns True if two arrays are element-wise equal within a tolerance.
2215
+
2216
+ The tolerance values are positive, typically very small numbers. The
2217
+ relative difference (`rtol` * abs(`b`)) and the absolute difference
2218
+ `atol` are added together to compare against the absolute difference
2219
+ between `a` and `b`.
2220
+
2221
+ If either array contains one or more NaNs, False is returned.
2222
+ Infs are treated as equal if they are in the same place and of the same
2223
+ sign in both arrays.
2224
+
2225
+ Parameters
2226
+ ----------
2227
+ a, b : array_like
2228
+ Input arrays to compare.
2229
+ rtol : float
2230
+ The relative tolerance parameter (see Notes).
2231
+ atol : float
2232
+ The absolute tolerance parameter (see Notes).
2233
+ equal_nan : bool
2234
+ Whether to compare NaN's as equal. If True, NaN's in `a` will be
2235
+ considered equal to NaN's in `b` in the output array.
2236
+
2237
+ .. versionadded:: 1.10.0
2238
+
2239
+ Returns
2240
+ -------
2241
+ allclose : bool
2242
+ Returns True if the two arrays are equal within the given
2243
+ tolerance; False otherwise.
2244
+
2245
+ See Also
2246
+ --------
2247
+ isclose, all, any
2248
+
2249
+ Notes
2250
+ -----
2251
+ If the following equation is element-wise True, then allclose returns
2252
+ True.
2253
+
2254
+ absolute(`a` - `b`) <= (`atol` + `rtol` * absolute(`b`))
2255
+
2256
+ The above equation is not symmetric in `a` and `b`, so that
2257
+ `allclose(a, b)` might be different from `allclose(b, a)` in
2258
+ some rare cases.
2259
+
2260
+ Examples
2261
+ --------
2262
+ >>> np.allclose([1e10,1e-7], [1.00001e10,1e-8])
2263
+ False
2264
+ >>> np.allclose([1e10,1e-8], [1.00001e10,1e-9])
2265
+ True
2266
+ >>> np.allclose([1e10,1e-8], [1.0001e10,1e-9])
2267
+ False
2268
+ >>> np.allclose([1.0, np.nan], [1.0, np.nan])
2269
+ False
2270
+ >>> np.allclose([1.0, np.nan], [1.0, np.nan], equal_nan=True)
2271
+ True
2272
+
2273
+ """
2274
+ return all(isclose(a, b, rtol=rtol, atol=atol, equal_nan=equal_nan))
2275
+
2276
+ def isclose(a, b, rtol=1.e-5, atol=1.e-8, equal_nan=False):
2277
+ """
2278
+ Returns a boolean array where two arrays are element-wise equal within a
2279
+ tolerance.
2280
+
2281
+ The tolerance values are positive, typically very small numbers. The
2282
+ relative difference (`rtol` * abs(`b`)) and the absolute difference
2283
+ `atol` are added together to compare against the absolute difference
2284
+ between `a` and `b`.
2285
+
2286
+ Parameters
2287
+ ----------
2288
+ a, b : array_like
2289
+ Input arrays to compare.
2290
+ rtol : float
2291
+ The relative tolerance parameter (see Notes).
2292
+ atol : float
2293
+ The absolute tolerance parameter (see Notes).
2294
+ equal_nan : bool
2295
+ Whether to compare NaN's as equal. If True, NaN's in `a` will be
2296
+ considered equal to NaN's in `b` in the output array.
2297
+
2298
+ Returns
2299
+ -------
2300
+ y : array_like
2301
+ Returns a boolean array of where `a` and `b` are equal within the
2302
+ given tolerance. If both `a` and `b` are scalars, returns a single
2303
+ boolean value.
2304
+
2305
+ See Also
2306
+ --------
2307
+ allclose
2308
+
2309
+ Notes
2310
+ -----
2311
+ .. versionadded:: 1.7.0
2312
+
2313
+ For finite values, isclose uses the following equation to test whether
2314
+ two floating point values are equivalent.
2315
+
2316
+ absolute(`a` - `b`) <= (`atol` + `rtol` * absolute(`b`))
2317
+
2318
+ The above equation is not symmetric in `a` and `b`, so that
2319
+ `isclose(a, b)` might be different from `isclose(b, a)` in
2320
+ some rare cases.
2321
+
2322
+ Examples
2323
+ --------
2324
+ >>> np.isclose([1e10,1e-7], [1.00001e10,1e-8])
2325
+ array([True, False])
2326
+ >>> np.isclose([1e10,1e-8], [1.00001e10,1e-9])
2327
+ array([True, True])
2328
+ >>> np.isclose([1e10,1e-8], [1.0001e10,1e-9])
2329
+ array([False, True])
2330
+ >>> np.isclose([1.0, np.nan], [1.0, np.nan])
2331
+ array([True, False])
2332
+ >>> np.isclose([1.0, np.nan], [1.0, np.nan], equal_nan=True)
2333
+ array([True, True])
2334
+ """
2335
+ def within_tol(x, y, atol, rtol):
2336
+ with errstate(invalid='ignore'):
2337
+ result = less_equal(abs(x-y), atol + rtol * abs(y))
2338
+ if isscalar(a) and isscalar(b):
2339
+ result = bool(result)
2340
+ return result
2341
+
2342
+ x = array(a, copy=False, subok=True, ndmin=1)
2343
+ y = array(b, copy=False, subok=True, ndmin=1)
2344
+
2345
+ # Make sure y is an inexact type to avoid bad behavior on abs(MIN_INT).
2346
+ # This will cause casting of x later. Also, make sure to allow subclasses
2347
+ # (e.g., for numpy.ma).
2348
+ dt = multiarray.result_type(y, 1.)
2349
+ y = array(y, dtype=dt, copy=False, subok=True)
2350
+
2351
+ xfin = isfinite(x)
2352
+ yfin = isfinite(y)
2353
+ if all(xfin) and all(yfin):
2354
+ return within_tol(x, y, atol, rtol)
2355
+ else:
2356
+ finite = xfin & yfin
2357
+ cond = zeros_like(finite, subok=True)
2358
+ # Because we're using boolean indexing, x & y must be the same shape.
2359
+ # Ideally, we'd just do x, y = broadcast_arrays(x, y). It's in
2360
+ # lib.stride_tricks, though, so we can't import it here.
2361
+ x = x * ones_like(cond)
2362
+ y = y * ones_like(cond)
2363
+ # Avoid subtraction with infinite/nan values...
2364
+ cond[finite] = within_tol(x[finite], y[finite], atol, rtol)
2365
+ # Check for equality of infinite values...
2366
+ cond[~finite] = (x[~finite] == y[~finite])
2367
+ if equal_nan:
2368
+ # Make NaN == NaN
2369
+ both_nan = isnan(x) & isnan(y)
2370
+ cond[both_nan] = both_nan[both_nan]
2371
+ return cond
2372
+
2373
+ def array_equal(a1, a2):
2374
+ """
2375
+ True if two arrays have the same shape and elements, False otherwise.
2376
+
2377
+ Parameters
2378
+ ----------
2379
+ a1, a2 : array_like
2380
+ Input arrays.
2381
+
2382
+ Returns
2383
+ -------
2384
+ b : bool
2385
+ Returns True if the arrays are equal.
2386
+
2387
+ See Also
2388
+ --------
2389
+ allclose: Returns True if two arrays are element-wise equal within a
2390
+ tolerance.
2391
+ array_equiv: Returns True if input arrays are shape consistent and all
2392
+ elements equal.
2393
+
2394
+ Examples
2395
+ --------
2396
+ >>> np.array_equal([1, 2], [1, 2])
2397
+ True
2398
+ >>> np.array_equal(np.array([1, 2]), np.array([1, 2]))
2399
+ True
2400
+ >>> np.array_equal([1, 2], [1, 2, 3])
2401
+ False
2402
+ >>> np.array_equal([1, 2], [1, 4])
2403
+ False
2404
+
2405
+ """
2406
+ try:
2407
+ a1, a2 = asarray(a1), asarray(a2)
2408
+ except:
2409
+ return False
2410
+ if a1.shape != a2.shape:
2411
+ return False
2412
+ return bool(asarray(a1 == a2).all())
2413
+
2414
+ def array_equiv(a1, a2):
2415
+ """
2416
+ Returns True if input arrays are shape consistent and all elements equal.
2417
+
2418
+ Shape consistent means they are either the same shape, or one input array
2419
+ can be broadcasted to create the same shape as the other one.
2420
+
2421
+ Parameters
2422
+ ----------
2423
+ a1, a2 : array_like
2424
+ Input arrays.
2425
+
2426
+ Returns
2427
+ -------
2428
+ out : bool
2429
+ True if equivalent, False otherwise.
2430
+
2431
+ Examples
2432
+ --------
2433
+ >>> np.array_equiv([1, 2], [1, 2])
2434
+ True
2435
+ >>> np.array_equiv([1, 2], [1, 3])
2436
+ False
2437
+
2438
+ Showing the shape equivalence:
2439
+
2440
+ >>> np.array_equiv([1, 2], [[1, 2], [1, 2]])
2441
+ True
2442
+ >>> np.array_equiv([1, 2], [[1, 2, 1, 2], [1, 2, 1, 2]])
2443
+ False
2444
+
2445
+ >>> np.array_equiv([1, 2], [[1, 2], [1, 3]])
2446
+ False
2447
+
2448
+ """
2449
+ try:
2450
+ a1, a2 = asarray(a1), asarray(a2)
2451
+ except:
2452
+ return False
2453
+ try:
2454
+ multiarray.broadcast(a1, a2)
2455
+ except:
2456
+ return False
2457
+
2458
+ return bool(asarray(a1 == a2).all())
2459
+
2460
+
2461
+ _errdict = {"ignore":ERR_IGNORE,
2462
+ "warn":ERR_WARN,
2463
+ "raise":ERR_RAISE,
2464
+ "call":ERR_CALL,
2465
+ "print":ERR_PRINT,
2466
+ "log":ERR_LOG}
2467
+
2468
+ _errdict_rev = {}
2469
+ for key in _errdict.keys():
2470
+ _errdict_rev[_errdict[key]] = key
2471
+ del key
2472
+
2473
+ def seterr(all=None, divide=None, over=None, under=None, invalid=None):
2474
+ """
2475
+ Set how floating-point errors are handled.
2476
+
2477
+ Note that operations on integer scalar types (such as `int16`) are
2478
+ handled like floating point, and are affected by these settings.
2479
+
2480
+ Parameters
2481
+ ----------
2482
+ all : {'ignore', 'warn', 'raise', 'call', 'print', 'log'}, optional
2483
+ Set treatment for all types of floating-point errors at once:
2484
+
2485
+ - ignore: Take no action when the exception occurs.
2486
+ - warn: Print a `RuntimeWarning` (via the Python `warnings` module).
2487
+ - raise: Raise a `FloatingPointError`.
2488
+ - call: Call a function specified using the `seterrcall` function.
2489
+ - print: Print a warning directly to ``stdout``.
2490
+ - log: Record error in a Log object specified by `seterrcall`.
2491
+
2492
+ The default is not to change the current behavior.
2493
+ divide : {'ignore', 'warn', 'raise', 'call', 'print', 'log'}, optional
2494
+ Treatment for division by zero.
2495
+ over : {'ignore', 'warn', 'raise', 'call', 'print', 'log'}, optional
2496
+ Treatment for floating-point overflow.
2497
+ under : {'ignore', 'warn', 'raise', 'call', 'print', 'log'}, optional
2498
+ Treatment for floating-point underflow.
2499
+ invalid : {'ignore', 'warn', 'raise', 'call', 'print', 'log'}, optional
2500
+ Treatment for invalid floating-point operation.
2501
+
2502
+ Returns
2503
+ -------
2504
+ old_settings : dict
2505
+ Dictionary containing the old settings.
2506
+
2507
+ See also
2508
+ --------
2509
+ seterrcall : Set a callback function for the 'call' mode.
2510
+ geterr, geterrcall, errstate
2511
+
2512
+ Notes
2513
+ -----
2514
+ The floating-point exceptions are defined in the IEEE 754 standard [1]:
2515
+
2516
+ - Division by zero: infinite result obtained from finite numbers.
2517
+ - Overflow: result too large to be expressed.
2518
+ - Underflow: result so close to zero that some precision
2519
+ was lost.
2520
+ - Invalid operation: result is not an expressible number, typically
2521
+ indicates that a NaN was produced.
2522
+
2523
+ .. [1] http://en.wikipedia.org/wiki/IEEE_754
2524
+
2525
+ Examples
2526
+ --------
2527
+ >>> old_settings = np.seterr(all='ignore') #seterr to known value
2528
+ >>> np.seterr(over='raise')
2529
+ {'over': 'ignore', 'divide': 'ignore', 'invalid': 'ignore',
2530
+ 'under': 'ignore'}
2531
+ >>> np.seterr(**old_settings) # reset to default
2532
+ {'over': 'raise', 'divide': 'ignore', 'invalid': 'ignore', 'under': 'ignore'}
2533
+
2534
+ >>> np.int16(32000) * np.int16(3)
2535
+ 30464
2536
+ >>> old_settings = np.seterr(all='warn', over='raise')
2537
+ >>> np.int16(32000) * np.int16(3)
2538
+ Traceback (most recent call last):
2539
+ File "<stdin>", line 1, in <module>
2540
+ FloatingPointError: overflow encountered in short_scalars
2541
+
2542
+ >>> old_settings = np.seterr(all='print')
2543
+ >>> np.geterr()
2544
+ {'over': 'print', 'divide': 'print', 'invalid': 'print', 'under': 'print'}
2545
+ >>> np.int16(32000) * np.int16(3)
2546
+ Warning: overflow encountered in short_scalars
2547
+ 30464
2548
+
2549
+ """
2550
+
2551
+ pyvals = umath.geterrobj()
2552
+ old = geterr()
2553
+
2554
+ if divide is None:
2555
+ divide = all or old['divide']
2556
+ if over is None:
2557
+ over = all or old['over']
2558
+ if under is None:
2559
+ under = all or old['under']
2560
+ if invalid is None:
2561
+ invalid = all or old['invalid']
2562
+
2563
+ maskvalue = ((_errdict[divide] << SHIFT_DIVIDEBYZERO) +
2564
+ (_errdict[over] << SHIFT_OVERFLOW) +
2565
+ (_errdict[under] << SHIFT_UNDERFLOW) +
2566
+ (_errdict[invalid] << SHIFT_INVALID))
2567
+
2568
+ pyvals[1] = maskvalue
2569
+ umath.seterrobj(pyvals)
2570
+ return old
2571
+
2572
+
2573
+ def geterr():
2574
+ """
2575
+ Get the current way of handling floating-point errors.
2576
+
2577
+ Returns
2578
+ -------
2579
+ res : dict
2580
+ A dictionary with keys "divide", "over", "under", and "invalid",
2581
+ whose values are from the strings "ignore", "print", "log", "warn",
2582
+ "raise", and "call". The keys represent possible floating-point
2583
+ exceptions, and the values define how these exceptions are handled.
2584
+
2585
+ See Also
2586
+ --------
2587
+ geterrcall, seterr, seterrcall
2588
+
2589
+ Notes
2590
+ -----
2591
+ For complete documentation of the types of floating-point exceptions and
2592
+ treatment options, see `seterr`.
2593
+
2594
+ Examples
2595
+ --------
2596
+ >>> np.geterr()
2597
+ {'over': 'warn', 'divide': 'warn', 'invalid': 'warn',
2598
+ 'under': 'ignore'}
2599
+ >>> np.arange(3.) / np.arange(3.)
2600
+ array([ NaN, 1., 1.])
2601
+
2602
+ >>> oldsettings = np.seterr(all='warn', over='raise')
2603
+ >>> np.geterr()
2604
+ {'over': 'raise', 'divide': 'warn', 'invalid': 'warn', 'under': 'warn'}
2605
+ >>> np.arange(3.) / np.arange(3.)
2606
+ __main__:1: RuntimeWarning: invalid value encountered in divide
2607
+ array([ NaN, 1., 1.])
2608
+
2609
+ """
2610
+ maskvalue = umath.geterrobj()[1]
2611
+ mask = 7
2612
+ res = {}
2613
+ val = (maskvalue >> SHIFT_DIVIDEBYZERO) & mask
2614
+ res['divide'] = _errdict_rev[val]
2615
+ val = (maskvalue >> SHIFT_OVERFLOW) & mask
2616
+ res['over'] = _errdict_rev[val]
2617
+ val = (maskvalue >> SHIFT_UNDERFLOW) & mask
2618
+ res['under'] = _errdict_rev[val]
2619
+ val = (maskvalue >> SHIFT_INVALID) & mask
2620
+ res['invalid'] = _errdict_rev[val]
2621
+ return res
2622
+
2623
+ def setbufsize(size):
2624
+ """
2625
+ Set the size of the buffer used in ufuncs.
2626
+
2627
+ Parameters
2628
+ ----------
2629
+ size : int
2630
+ Size of buffer.
2631
+
2632
+ """
2633
+ if size > 10e6:
2634
+ raise ValueError("Buffer size, %s, is too big." % size)
2635
+ if size < 5:
2636
+ raise ValueError("Buffer size, %s, is too small." % size)
2637
+ if size % 16 != 0:
2638
+ raise ValueError("Buffer size, %s, is not a multiple of 16." % size)
2639
+
2640
+ pyvals = umath.geterrobj()
2641
+ old = getbufsize()
2642
+ pyvals[0] = size
2643
+ umath.seterrobj(pyvals)
2644
+ return old
2645
+
2646
+ def getbufsize():
2647
+ """
2648
+ Return the size of the buffer used in ufuncs.
2649
+
2650
+ Returns
2651
+ -------
2652
+ getbufsize : int
2653
+ Size of ufunc buffer in bytes.
2654
+
2655
+ """
2656
+ return umath.geterrobj()[0]
2657
+
2658
+ def seterrcall(func):
2659
+ """
2660
+ Set the floating-point error callback function or log object.
2661
+
2662
+ There are two ways to capture floating-point error messages. The first
2663
+ is to set the error-handler to 'call', using `seterr`. Then, set
2664
+ the function to call using this function.
2665
+
2666
+ The second is to set the error-handler to 'log', using `seterr`.
2667
+ Floating-point errors then trigger a call to the 'write' method of
2668
+ the provided object.
2669
+
2670
+ Parameters
2671
+ ----------
2672
+ func : callable f(err, flag) or object with write method
2673
+ Function to call upon floating-point errors ('call'-mode) or
2674
+ object whose 'write' method is used to log such message ('log'-mode).
2675
+
2676
+ The call function takes two arguments. The first is a string describing the
2677
+ type of error (such as "divide by zero", "overflow", "underflow", or "invalid value"),
2678
+ and the second is the status flag. The flag is a byte, whose four
2679
+ least-significant bits indicate the type of error, one of "divide", "over",
2680
+ "under", "invalid"::
2681
+
2682
+ [0 0 0 0 divide over under invalid]
2683
+
2684
+ In other words, ``flags = divide + 2*over + 4*under + 8*invalid``.
2685
+
2686
+ If an object is provided, its write method should take one argument,
2687
+ a string.
2688
+
2689
+ Returns
2690
+ -------
2691
+ h : callable, log instance or None
2692
+ The old error handler.
2693
+
2694
+ See Also
2695
+ --------
2696
+ seterr, geterr, geterrcall
2697
+
2698
+ Examples
2699
+ --------
2700
+ Callback upon error:
2701
+
2702
+ >>> def err_handler(type, flag):
2703
+ ... print "Floating point error (%s), with flag %s" % (type, flag)
2704
+ ...
2705
+
2706
+ >>> saved_handler = np.seterrcall(err_handler)
2707
+ >>> save_err = np.seterr(all='call')
2708
+
2709
+ >>> np.array([1, 2, 3]) / 0.0
2710
+ Floating point error (divide by zero), with flag 1
2711
+ array([ Inf, Inf, Inf])
2712
+
2713
+ >>> np.seterrcall(saved_handler)
2714
+ <function err_handler at 0x...>
2715
+ >>> np.seterr(**save_err)
2716
+ {'over': 'call', 'divide': 'call', 'invalid': 'call', 'under': 'call'}
2717
+
2718
+ Log error message:
2719
+
2720
+ >>> class Log(object):
2721
+ ... def write(self, msg):
2722
+ ... print "LOG: %s" % msg
2723
+ ...
2724
+
2725
+ >>> log = Log()
2726
+ >>> saved_handler = np.seterrcall(log)
2727
+ >>> save_err = np.seterr(all='log')
2728
+
2729
+ >>> np.array([1, 2, 3]) / 0.0
2730
+ LOG: Warning: divide by zero encountered in divide
2731
+ <BLANKLINE>
2732
+ array([ Inf, Inf, Inf])
2733
+
2734
+ >>> np.seterrcall(saved_handler)
2735
+ <__main__.Log object at 0x...>
2736
+ >>> np.seterr(**save_err)
2737
+ {'over': 'log', 'divide': 'log', 'invalid': 'log', 'under': 'log'}
2738
+
2739
+ """
2740
+ if func is not None and not isinstance(func, collections.Callable):
2741
+ if not hasattr(func, 'write') or not isinstance(func.write, collections.Callable):
2742
+ raise ValueError("Only callable can be used as callback")
2743
+ pyvals = umath.geterrobj()
2744
+ old = geterrcall()
2745
+ pyvals[2] = func
2746
+ umath.seterrobj(pyvals)
2747
+ return old
2748
+
2749
+ def geterrcall():
2750
+ """
2751
+ Return the current callback function used on floating-point errors.
2752
+
2753
+ When the error handling for a floating-point error (one of "divide",
2754
+ "over", "under", or "invalid") is set to 'call' or 'log', the function
2755
+ that is called or the log instance that is written to is returned by
2756
+ `geterrcall`. This function or log instance has been set with
2757
+ `seterrcall`.
2758
+
2759
+ Returns
2760
+ -------
2761
+ errobj : callable, log instance or None
2762
+ The current error handler. If no handler was set through `seterrcall`,
2763
+ ``None`` is returned.
2764
+
2765
+ See Also
2766
+ --------
2767
+ seterrcall, seterr, geterr
2768
+
2769
+ Notes
2770
+ -----
2771
+ For complete documentation of the types of floating-point exceptions and
2772
+ treatment options, see `seterr`.
2773
+
2774
+ Examples
2775
+ --------
2776
+ >>> np.geterrcall() # we did not yet set a handler, returns None
2777
+
2778
+ >>> oldsettings = np.seterr(all='call')
2779
+ >>> def err_handler(type, flag):
2780
+ ... print "Floating point error (%s), with flag %s" % (type, flag)
2781
+ >>> oldhandler = np.seterrcall(err_handler)
2782
+ >>> np.array([1, 2, 3]) / 0.0
2783
+ Floating point error (divide by zero), with flag 1
2784
+ array([ Inf, Inf, Inf])
2785
+
2786
+ >>> cur_handler = np.geterrcall()
2787
+ >>> cur_handler is err_handler
2788
+ True
2789
+
2790
+ """
2791
+ return umath.geterrobj()[2]
2792
+
2793
+ class _unspecified(object):
2794
+ pass
2795
+ _Unspecified = _unspecified()
2796
+
2797
+ class errstate(object):
2798
+ """
2799
+ errstate(**kwargs)
2800
+
2801
+ Context manager for floating-point error handling.
2802
+
2803
+ Using an instance of `errstate` as a context manager allows statements in
2804
+ that context to execute with a known error handling behavior. Upon entering
2805
+ the context the error handling is set with `seterr` and `seterrcall`, and
2806
+ upon exiting it is reset to what it was before.
2807
+
2808
+ Parameters
2809
+ ----------
2810
+ kwargs : {divide, over, under, invalid}
2811
+ Keyword arguments. The valid keywords are the possible floating-point
2812
+ exceptions. Each keyword should have a string value that defines the
2813
+ treatment for the particular error. Possible values are
2814
+ {'ignore', 'warn', 'raise', 'call', 'print', 'log'}.
2815
+
2816
+ See Also
2817
+ --------
2818
+ seterr, geterr, seterrcall, geterrcall
2819
+
2820
+ Notes
2821
+ -----
2822
+ The ``with`` statement was introduced in Python 2.5, and can only be used
2823
+ there by importing it: ``from __future__ import with_statement``. In
2824
+ earlier Python versions the ``with`` statement is not available.
2825
+
2826
+ For complete documentation of the types of floating-point exceptions and
2827
+ treatment options, see `seterr`.
2828
+
2829
+ Examples
2830
+ --------
2831
+ >>> from __future__ import with_statement # use 'with' in Python 2.5
2832
+ >>> olderr = np.seterr(all='ignore') # Set error handling to known state.
2833
+
2834
+ >>> np.arange(3) / 0.
2835
+ array([ NaN, Inf, Inf])
2836
+ >>> with np.errstate(divide='warn'):
2837
+ ... np.arange(3) / 0.
2838
+ ...
2839
+ __main__:2: RuntimeWarning: divide by zero encountered in divide
2840
+ array([ NaN, Inf, Inf])
2841
+
2842
+ >>> np.sqrt(-1)
2843
+ nan
2844
+ >>> with np.errstate(invalid='raise'):
2845
+ ... np.sqrt(-1)
2846
+ Traceback (most recent call last):
2847
+ File "<stdin>", line 2, in <module>
2848
+ FloatingPointError: invalid value encountered in sqrt
2849
+
2850
+ Outside the context the error handling behavior has not changed:
2851
+
2852
+ >>> np.geterr()
2853
+ {'over': 'warn', 'divide': 'warn', 'invalid': 'warn',
2854
+ 'under': 'ignore'}
2855
+
2856
+ """
2857
+ # Note that we don't want to run the above doctests because they will fail
2858
+ # without a from __future__ import with_statement
2859
+
2860
+ def __init__(self, **kwargs):
2861
+ self.call = kwargs.pop('call', _Unspecified)
2862
+ self.kwargs = kwargs
2863
+
2864
+ def __enter__(self):
2865
+ self.oldstate = seterr(**self.kwargs)
2866
+ if self.call is not _Unspecified:
2867
+ self.oldcall = seterrcall(self.call)
2868
+
2869
+ def __exit__(self, *exc_info):
2870
+ seterr(**self.oldstate)
2871
+ if self.call is not _Unspecified:
2872
+ seterrcall(self.oldcall)
2873
+
2874
+
2875
+ def _setdef():
2876
+ defval = [UFUNC_BUFSIZE_DEFAULT, ERR_DEFAULT, None]
2877
+ umath.seterrobj(defval)
2878
+
2879
+ # set the default values
2880
+ _setdef()
2881
+
2882
+ Inf = inf = infty = Infinity = PINF
2883
+ nan = NaN = NAN
2884
+ False_ = bool_(False)
2885
+ True_ = bool_(True)
2886
+
2887
+ from .umath import *
2888
+ from .numerictypes import *
2889
+ from . import fromnumeric
2890
+ from .fromnumeric import *
2891
+ extend_all(fromnumeric)
2892
+ extend_all(umath)
2893
+ extend_all(numerictypes)