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.

Potentially problematic release.


This version of numpy might be problematic. Click here for more details.

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,3161 @@
1
+ /* -*- C -*- (not really, but good for syntax highlighting) */
2
+
3
+ /*
4
+ * Copyright (c) 2005-2015, NumPy Developers.
5
+ * All rights reserved.
6
+ *
7
+ * Redistribution and use in source and binary forms, with or without
8
+ * modification, are permitted provided that the following conditions are
9
+ * met:
10
+ *
11
+ * * Redistributions of source code must retain the above copyright
12
+ * notice, this list of conditions and the following disclaimer.
13
+ *
14
+ * * Redistributions in binary form must reproduce the above
15
+ * copyright notice, this list of conditions and the following
16
+ * disclaimer in the documentation and/or other materials provided
17
+ * with the distribution.
18
+ *
19
+ * * Neither the name of the NumPy Developers nor the names of any
20
+ * contributors may be used to endorse or promote products derived
21
+ * from this software without specific prior written permission.
22
+ *
23
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
+ */
35
+
36
+ #ifdef SWIGPYTHON
37
+
38
+ %{
39
+ #ifndef SWIG_FILE_WITH_INIT
40
+ #define NO_IMPORT_ARRAY
41
+ #endif
42
+ #include "stdio.h"
43
+ #define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION
44
+ #include <numpy/arrayobject.h>
45
+ %}
46
+
47
+ /**********************************************************************/
48
+
49
+ %fragment("NumPy_Backward_Compatibility", "header")
50
+ {
51
+ %#if NPY_API_VERSION < 0x00000007
52
+ %#define NPY_ARRAY_DEFAULT NPY_DEFAULT
53
+ %#define NPY_ARRAY_FARRAY NPY_FARRAY
54
+ %#define NPY_FORTRANORDER NPY_FORTRAN
55
+ %#endif
56
+ }
57
+
58
+ /**********************************************************************/
59
+
60
+ /* The following code originally appeared in
61
+ * enthought/kiva/agg/src/numeric.i written by Eric Jones. It was
62
+ * translated from C++ to C by John Hunter. Bill Spotz has modified
63
+ * it to fix some minor bugs, upgrade from Numeric to numpy (all
64
+ * versions), add some comments and functionality, and convert from
65
+ * direct code insertion to SWIG fragments.
66
+ */
67
+
68
+ %fragment("NumPy_Macros", "header")
69
+ {
70
+ /* Macros to extract array attributes.
71
+ */
72
+ %#if NPY_API_VERSION < 0x00000007
73
+ %#define is_array(a) ((a) && PyArray_Check((PyArrayObject*)a))
74
+ %#define array_type(a) (int)(PyArray_TYPE((PyArrayObject*)a))
75
+ %#define array_numdims(a) (((PyArrayObject*)a)->nd)
76
+ %#define array_dimensions(a) (((PyArrayObject*)a)->dimensions)
77
+ %#define array_size(a,i) (((PyArrayObject*)a)->dimensions[i])
78
+ %#define array_strides(a) (((PyArrayObject*)a)->strides)
79
+ %#define array_stride(a,i) (((PyArrayObject*)a)->strides[i])
80
+ %#define array_data(a) (((PyArrayObject*)a)->data)
81
+ %#define array_descr(a) (((PyArrayObject*)a)->descr)
82
+ %#define array_flags(a) (((PyArrayObject*)a)->flags)
83
+ %#define array_enableflags(a,f) (((PyArrayObject*)a)->flags) = f
84
+ %#else
85
+ %#define is_array(a) ((a) && PyArray_Check(a))
86
+ %#define array_type(a) PyArray_TYPE((PyArrayObject*)a)
87
+ %#define array_numdims(a) PyArray_NDIM((PyArrayObject*)a)
88
+ %#define array_dimensions(a) PyArray_DIMS((PyArrayObject*)a)
89
+ %#define array_strides(a) PyArray_STRIDES((PyArrayObject*)a)
90
+ %#define array_stride(a,i) PyArray_STRIDE((PyArrayObject*)a,i)
91
+ %#define array_size(a,i) PyArray_DIM((PyArrayObject*)a,i)
92
+ %#define array_data(a) PyArray_DATA((PyArrayObject*)a)
93
+ %#define array_descr(a) PyArray_DESCR((PyArrayObject*)a)
94
+ %#define array_flags(a) PyArray_FLAGS((PyArrayObject*)a)
95
+ %#define array_enableflags(a,f) PyArray_ENABLEFLAGS((PyArrayObject*)a,f)
96
+ %#endif
97
+ %#define array_is_contiguous(a) (PyArray_ISCONTIGUOUS((PyArrayObject*)a))
98
+ %#define array_is_native(a) (PyArray_ISNOTSWAPPED((PyArrayObject*)a))
99
+ %#define array_is_fortran(a) (PyArray_ISFORTRAN((PyArrayObject*)a))
100
+ }
101
+
102
+ /**********************************************************************/
103
+
104
+ %fragment("NumPy_Utilities",
105
+ "header")
106
+ {
107
+ /* Given a PyObject, return a string describing its type.
108
+ */
109
+ const char* pytype_string(PyObject* py_obj)
110
+ {
111
+ if (py_obj == NULL ) return "C NULL value";
112
+ if (py_obj == Py_None ) return "Python None" ;
113
+ if (PyCallable_Check(py_obj)) return "callable" ;
114
+ if (PyString_Check( py_obj)) return "string" ;
115
+ if (PyInt_Check( py_obj)) return "int" ;
116
+ if (PyFloat_Check( py_obj)) return "float" ;
117
+ if (PyDict_Check( py_obj)) return "dict" ;
118
+ if (PyList_Check( py_obj)) return "list" ;
119
+ if (PyTuple_Check( py_obj)) return "tuple" ;
120
+ %#if PY_MAJOR_VERSION < 3
121
+ if (PyFile_Check( py_obj)) return "file" ;
122
+ if (PyModule_Check( py_obj)) return "module" ;
123
+ if (PyInstance_Check(py_obj)) return "instance" ;
124
+ %#endif
125
+
126
+ return "unkown type";
127
+ }
128
+
129
+ /* Given a NumPy typecode, return a string describing the type.
130
+ */
131
+ const char* typecode_string(int typecode)
132
+ {
133
+ static const char* type_names[25] = {"bool",
134
+ "byte",
135
+ "unsigned byte",
136
+ "short",
137
+ "unsigned short",
138
+ "int",
139
+ "unsigned int",
140
+ "long",
141
+ "unsigned long",
142
+ "long long",
143
+ "unsigned long long",
144
+ "float",
145
+ "double",
146
+ "long double",
147
+ "complex float",
148
+ "complex double",
149
+ "complex long double",
150
+ "object",
151
+ "string",
152
+ "unicode",
153
+ "void",
154
+ "ntypes",
155
+ "notype",
156
+ "char",
157
+ "unknown"};
158
+ return typecode < 24 ? type_names[typecode] : type_names[24];
159
+ }
160
+
161
+ /* Make sure input has correct numpy type. This now just calls
162
+ PyArray_EquivTypenums().
163
+ */
164
+ int type_match(int actual_type,
165
+ int desired_type)
166
+ {
167
+ return PyArray_EquivTypenums(actual_type, desired_type);
168
+ }
169
+
170
+ %#ifdef SWIGPY_USE_CAPSULE
171
+ void free_cap(PyObject * cap)
172
+ {
173
+ void* array = (void*) PyCapsule_GetPointer(cap,SWIGPY_CAPSULE_NAME);
174
+ if (array != NULL) free(array);
175
+ }
176
+ %#endif
177
+
178
+
179
+ }
180
+
181
+ /**********************************************************************/
182
+
183
+ %fragment("NumPy_Object_to_Array",
184
+ "header",
185
+ fragment="NumPy_Backward_Compatibility",
186
+ fragment="NumPy_Macros",
187
+ fragment="NumPy_Utilities")
188
+ {
189
+ /* Given a PyObject pointer, cast it to a PyArrayObject pointer if
190
+ * legal. If not, set the python error string appropriately and
191
+ * return NULL.
192
+ */
193
+ PyArrayObject* obj_to_array_no_conversion(PyObject* input,
194
+ int typecode)
195
+ {
196
+ PyArrayObject* ary = NULL;
197
+ if (is_array(input) && (typecode == NPY_NOTYPE ||
198
+ PyArray_EquivTypenums(array_type(input), typecode)))
199
+ {
200
+ ary = (PyArrayObject*) input;
201
+ }
202
+ else if is_array(input)
203
+ {
204
+ const char* desired_type = typecode_string(typecode);
205
+ const char* actual_type = typecode_string(array_type(input));
206
+ PyErr_Format(PyExc_TypeError,
207
+ "Array of type '%s' required. Array of type '%s' given",
208
+ desired_type, actual_type);
209
+ ary = NULL;
210
+ }
211
+ else
212
+ {
213
+ const char* desired_type = typecode_string(typecode);
214
+ const char* actual_type = pytype_string(input);
215
+ PyErr_Format(PyExc_TypeError,
216
+ "Array of type '%s' required. A '%s' was given",
217
+ desired_type,
218
+ actual_type);
219
+ ary = NULL;
220
+ }
221
+ return ary;
222
+ }
223
+
224
+ /* Convert the given PyObject to a NumPy array with the given
225
+ * typecode. On success, return a valid PyArrayObject* with the
226
+ * correct type. On failure, the python error string will be set and
227
+ * the routine returns NULL.
228
+ */
229
+ PyArrayObject* obj_to_array_allow_conversion(PyObject* input,
230
+ int typecode,
231
+ int* is_new_object)
232
+ {
233
+ PyArrayObject* ary = NULL;
234
+ PyObject* py_obj;
235
+ if (is_array(input) && (typecode == NPY_NOTYPE ||
236
+ PyArray_EquivTypenums(array_type(input),typecode)))
237
+ {
238
+ ary = (PyArrayObject*) input;
239
+ *is_new_object = 0;
240
+ }
241
+ else
242
+ {
243
+ py_obj = PyArray_FROMANY(input, typecode, 0, 0, NPY_ARRAY_DEFAULT);
244
+ /* If NULL, PyArray_FromObject will have set python error value.*/
245
+ ary = (PyArrayObject*) py_obj;
246
+ *is_new_object = 1;
247
+ }
248
+ return ary;
249
+ }
250
+
251
+ /* Given a PyArrayObject, check to see if it is contiguous. If so,
252
+ * return the input pointer and flag it as not a new object. If it is
253
+ * not contiguous, create a new PyArrayObject using the original data,
254
+ * flag it as a new object and return the pointer.
255
+ */
256
+ PyArrayObject* make_contiguous(PyArrayObject* ary,
257
+ int* is_new_object,
258
+ int min_dims,
259
+ int max_dims)
260
+ {
261
+ PyArrayObject* result;
262
+ if (array_is_contiguous(ary))
263
+ {
264
+ result = ary;
265
+ *is_new_object = 0;
266
+ }
267
+ else
268
+ {
269
+ result = (PyArrayObject*) PyArray_ContiguousFromObject((PyObject*)ary,
270
+ array_type(ary),
271
+ min_dims,
272
+ max_dims);
273
+ *is_new_object = 1;
274
+ }
275
+ return result;
276
+ }
277
+
278
+ /* Given a PyArrayObject, check to see if it is Fortran-contiguous.
279
+ * If so, return the input pointer, but do not flag it as not a new
280
+ * object. If it is not Fortran-contiguous, create a new
281
+ * PyArrayObject using the original data, flag it as a new object
282
+ * and return the pointer.
283
+ */
284
+ PyArrayObject* make_fortran(PyArrayObject* ary,
285
+ int* is_new_object)
286
+ {
287
+ PyArrayObject* result;
288
+ if (array_is_fortran(ary))
289
+ {
290
+ result = ary;
291
+ *is_new_object = 0;
292
+ }
293
+ else
294
+ {
295
+ Py_INCREF(array_descr(ary));
296
+ result = (PyArrayObject*) PyArray_FromArray(ary,
297
+ array_descr(ary),
298
+ NPY_FORTRANORDER);
299
+ *is_new_object = 1;
300
+ }
301
+ return result;
302
+ }
303
+
304
+ /* Convert a given PyObject to a contiguous PyArrayObject of the
305
+ * specified type. If the input object is not a contiguous
306
+ * PyArrayObject, a new one will be created and the new object flag
307
+ * will be set.
308
+ */
309
+ PyArrayObject* obj_to_array_contiguous_allow_conversion(PyObject* input,
310
+ int typecode,
311
+ int* is_new_object)
312
+ {
313
+ int is_new1 = 0;
314
+ int is_new2 = 0;
315
+ PyArrayObject* ary2;
316
+ PyArrayObject* ary1 = obj_to_array_allow_conversion(input,
317
+ typecode,
318
+ &is_new1);
319
+ if (ary1)
320
+ {
321
+ ary2 = make_contiguous(ary1, &is_new2, 0, 0);
322
+ if ( is_new1 && is_new2)
323
+ {
324
+ Py_DECREF(ary1);
325
+ }
326
+ ary1 = ary2;
327
+ }
328
+ *is_new_object = is_new1 || is_new2;
329
+ return ary1;
330
+ }
331
+
332
+ /* Convert a given PyObject to a Fortran-ordered PyArrayObject of the
333
+ * specified type. If the input object is not a Fortran-ordered
334
+ * PyArrayObject, a new one will be created and the new object flag
335
+ * will be set.
336
+ */
337
+ PyArrayObject* obj_to_array_fortran_allow_conversion(PyObject* input,
338
+ int typecode,
339
+ int* is_new_object)
340
+ {
341
+ int is_new1 = 0;
342
+ int is_new2 = 0;
343
+ PyArrayObject* ary2;
344
+ PyArrayObject* ary1 = obj_to_array_allow_conversion(input,
345
+ typecode,
346
+ &is_new1);
347
+ if (ary1)
348
+ {
349
+ ary2 = make_fortran(ary1, &is_new2);
350
+ if (is_new1 && is_new2)
351
+ {
352
+ Py_DECREF(ary1);
353
+ }
354
+ ary1 = ary2;
355
+ }
356
+ *is_new_object = is_new1 || is_new2;
357
+ return ary1;
358
+ }
359
+ } /* end fragment */
360
+
361
+ /**********************************************************************/
362
+
363
+ %fragment("NumPy_Array_Requirements",
364
+ "header",
365
+ fragment="NumPy_Backward_Compatibility",
366
+ fragment="NumPy_Macros")
367
+ {
368
+ /* Test whether a python object is contiguous. If array is
369
+ * contiguous, return 1. Otherwise, set the python error string and
370
+ * return 0.
371
+ */
372
+ int require_contiguous(PyArrayObject* ary)
373
+ {
374
+ int contiguous = 1;
375
+ if (!array_is_contiguous(ary))
376
+ {
377
+ PyErr_SetString(PyExc_TypeError,
378
+ "Array must be contiguous. A non-contiguous array was given");
379
+ contiguous = 0;
380
+ }
381
+ return contiguous;
382
+ }
383
+
384
+ /* Test whether a python object is (C_ or F_) contiguous. If array is
385
+ * contiguous, return 1. Otherwise, set the python error string and
386
+ * return 0.
387
+ */
388
+ int require_c_or_f_contiguous(PyArrayObject* ary)
389
+ {
390
+ int contiguous = 1;
391
+ if (!(array_is_contiguous(ary) || array_is_fortran(ary)))
392
+ {
393
+ PyErr_SetString(PyExc_TypeError,
394
+ "Array must be contiguous (C_ or F_). A non-contiguous array was given");
395
+ contiguous = 0;
396
+ }
397
+ return contiguous;
398
+ }
399
+
400
+ /* Require that a numpy array is not byte-swapped. If the array is
401
+ * not byte-swapped, return 1. Otherwise, set the python error string
402
+ * and return 0.
403
+ */
404
+ int require_native(PyArrayObject* ary)
405
+ {
406
+ int native = 1;
407
+ if (!array_is_native(ary))
408
+ {
409
+ PyErr_SetString(PyExc_TypeError,
410
+ "Array must have native byteorder. "
411
+ "A byte-swapped array was given");
412
+ native = 0;
413
+ }
414
+ return native;
415
+ }
416
+
417
+ /* Require the given PyArrayObject to have a specified number of
418
+ * dimensions. If the array has the specified number of dimensions,
419
+ * return 1. Otherwise, set the python error string and return 0.
420
+ */
421
+ int require_dimensions(PyArrayObject* ary,
422
+ int exact_dimensions)
423
+ {
424
+ int success = 1;
425
+ if (array_numdims(ary) != exact_dimensions)
426
+ {
427
+ PyErr_Format(PyExc_TypeError,
428
+ "Array must have %d dimensions. Given array has %d dimensions",
429
+ exact_dimensions,
430
+ array_numdims(ary));
431
+ success = 0;
432
+ }
433
+ return success;
434
+ }
435
+
436
+ /* Require the given PyArrayObject to have one of a list of specified
437
+ * number of dimensions. If the array has one of the specified number
438
+ * of dimensions, return 1. Otherwise, set the python error string
439
+ * and return 0.
440
+ */
441
+ int require_dimensions_n(PyArrayObject* ary,
442
+ int* exact_dimensions,
443
+ int n)
444
+ {
445
+ int success = 0;
446
+ int i;
447
+ char dims_str[255] = "";
448
+ char s[255];
449
+ for (i = 0; i < n && !success; i++)
450
+ {
451
+ if (array_numdims(ary) == exact_dimensions[i])
452
+ {
453
+ success = 1;
454
+ }
455
+ }
456
+ if (!success)
457
+ {
458
+ for (i = 0; i < n-1; i++)
459
+ {
460
+ sprintf(s, "%d, ", exact_dimensions[i]);
461
+ strcat(dims_str,s);
462
+ }
463
+ sprintf(s, " or %d", exact_dimensions[n-1]);
464
+ strcat(dims_str,s);
465
+ PyErr_Format(PyExc_TypeError,
466
+ "Array must have %s dimensions. Given array has %d dimensions",
467
+ dims_str,
468
+ array_numdims(ary));
469
+ }
470
+ return success;
471
+ }
472
+
473
+ /* Require the given PyArrayObject to have a specified shape. If the
474
+ * array has the specified shape, return 1. Otherwise, set the python
475
+ * error string and return 0.
476
+ */
477
+ int require_size(PyArrayObject* ary,
478
+ npy_intp* size,
479
+ int n)
480
+ {
481
+ int i;
482
+ int success = 1;
483
+ int len;
484
+ char desired_dims[255] = "[";
485
+ char s[255];
486
+ char actual_dims[255] = "[";
487
+ for(i=0; i < n;i++)
488
+ {
489
+ if (size[i] != -1 && size[i] != array_size(ary,i))
490
+ {
491
+ success = 0;
492
+ }
493
+ }
494
+ if (!success)
495
+ {
496
+ for (i = 0; i < n; i++)
497
+ {
498
+ if (size[i] == -1)
499
+ {
500
+ sprintf(s, "*,");
501
+ }
502
+ else
503
+ {
504
+ sprintf(s, "%ld,", (long int)size[i]);
505
+ }
506
+ strcat(desired_dims,s);
507
+ }
508
+ len = strlen(desired_dims);
509
+ desired_dims[len-1] = ']';
510
+ for (i = 0; i < n; i++)
511
+ {
512
+ sprintf(s, "%ld,", (long int)array_size(ary,i));
513
+ strcat(actual_dims,s);
514
+ }
515
+ len = strlen(actual_dims);
516
+ actual_dims[len-1] = ']';
517
+ PyErr_Format(PyExc_TypeError,
518
+ "Array must have shape of %s. Given array has shape of %s",
519
+ desired_dims,
520
+ actual_dims);
521
+ }
522
+ return success;
523
+ }
524
+
525
+ /* Require the given PyArrayObject to to be Fortran ordered. If the
526
+ * the PyArrayObject is already Fortran ordered, do nothing. Else,
527
+ * set the Fortran ordering flag and recompute the strides.
528
+ */
529
+ int require_fortran(PyArrayObject* ary)
530
+ {
531
+ int success = 1;
532
+ int nd = array_numdims(ary);
533
+ int i;
534
+ npy_intp * strides = array_strides(ary);
535
+ if (array_is_fortran(ary)) return success;
536
+ /* Set the Fortran ordered flag */
537
+ array_enableflags(ary,NPY_ARRAY_FARRAY);
538
+ /* Recompute the strides */
539
+ strides[0] = strides[nd-1];
540
+ for (i=1; i < nd; ++i)
541
+ strides[i] = strides[i-1] * array_size(ary,i-1);
542
+ return success;
543
+ }
544
+ }
545
+
546
+ /* Combine all NumPy fragments into one for convenience */
547
+ %fragment("NumPy_Fragments",
548
+ "header",
549
+ fragment="NumPy_Backward_Compatibility",
550
+ fragment="NumPy_Macros",
551
+ fragment="NumPy_Utilities",
552
+ fragment="NumPy_Object_to_Array",
553
+ fragment="NumPy_Array_Requirements")
554
+ {
555
+ }
556
+
557
+ /* End John Hunter translation (with modifications by Bill Spotz)
558
+ */
559
+
560
+ /* %numpy_typemaps() macro
561
+ *
562
+ * This macro defines a family of 75 typemaps that allow C arguments
563
+ * of the form
564
+ *
565
+ * 1. (DATA_TYPE IN_ARRAY1[ANY])
566
+ * 2. (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1)
567
+ * 3. (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1)
568
+ *
569
+ * 4. (DATA_TYPE IN_ARRAY2[ANY][ANY])
570
+ * 5. (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
571
+ * 6. (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2)
572
+ * 7. (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
573
+ * 8. (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2)
574
+ *
575
+ * 9. (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY])
576
+ * 10. (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
577
+ * 11. (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
578
+ * 12. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_ARRAY3)
579
+ * 13. (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
580
+ * 14. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_FARRAY3)
581
+ *
582
+ * 15. (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY])
583
+ * 16. (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
584
+ * 17. (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
585
+ * 18. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, , DIM_TYPE DIM4, DATA_TYPE* IN_ARRAY4)
586
+ * 19. (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
587
+ * 20. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_FARRAY4)
588
+ *
589
+ * 21. (DATA_TYPE INPLACE_ARRAY1[ANY])
590
+ * 22. (DATA_TYPE* INPLACE_ARRAY1, DIM_TYPE DIM1)
591
+ * 23. (DIM_TYPE DIM1, DATA_TYPE* INPLACE_ARRAY1)
592
+ *
593
+ * 24. (DATA_TYPE INPLACE_ARRAY2[ANY][ANY])
594
+ * 25. (DATA_TYPE* INPLACE_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
595
+ * 26. (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_ARRAY2)
596
+ * 27. (DATA_TYPE* INPLACE_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
597
+ * 28. (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_FARRAY2)
598
+ *
599
+ * 29. (DATA_TYPE INPLACE_ARRAY3[ANY][ANY][ANY])
600
+ * 30. (DATA_TYPE* INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
601
+ * 31. (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
602
+ * 32. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_ARRAY3)
603
+ * 33. (DATA_TYPE* INPLACE_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
604
+ * 34. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_FARRAY3)
605
+ *
606
+ * 35. (DATA_TYPE INPLACE_ARRAY4[ANY][ANY][ANY][ANY])
607
+ * 36. (DATA_TYPE* INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
608
+ * 37. (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
609
+ * 38. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_ARRAY4)
610
+ * 39. (DATA_TYPE* INPLACE_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
611
+ * 40. (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_FARRAY4)
612
+ *
613
+ * 41. (DATA_TYPE ARGOUT_ARRAY1[ANY])
614
+ * 42. (DATA_TYPE* ARGOUT_ARRAY1, DIM_TYPE DIM1)
615
+ * 43. (DIM_TYPE DIM1, DATA_TYPE* ARGOUT_ARRAY1)
616
+ *
617
+ * 44. (DATA_TYPE ARGOUT_ARRAY2[ANY][ANY])
618
+ *
619
+ * 45. (DATA_TYPE ARGOUT_ARRAY3[ANY][ANY][ANY])
620
+ *
621
+ * 46. (DATA_TYPE ARGOUT_ARRAY4[ANY][ANY][ANY][ANY])
622
+ *
623
+ * 47. (DATA_TYPE** ARGOUTVIEW_ARRAY1, DIM_TYPE* DIM1)
624
+ * 48. (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEW_ARRAY1)
625
+ *
626
+ * 49. (DATA_TYPE** ARGOUTVIEW_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
627
+ * 50. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_ARRAY2)
628
+ * 51. (DATA_TYPE** ARGOUTVIEW_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
629
+ * 52. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_FARRAY2)
630
+ *
631
+ * 53. (DATA_TYPE** ARGOUTVIEW_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
632
+ * 54. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_ARRAY3)
633
+ * 55. (DATA_TYPE** ARGOUTVIEW_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
634
+ * 56. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_FARRAY3)
635
+ *
636
+ * 57. (DATA_TYPE** ARGOUTVIEW_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
637
+ * 58. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEW_ARRAY4)
638
+ * 59. (DATA_TYPE** ARGOUTVIEW_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
639
+ * 60. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEW_FARRAY4)
640
+ *
641
+ * 61. (DATA_TYPE** ARGOUTVIEWM_ARRAY1, DIM_TYPE* DIM1)
642
+ * 62. (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEWM_ARRAY1)
643
+ *
644
+ * 63. (DATA_TYPE** ARGOUTVIEWM_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
645
+ * 64. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_ARRAY2)
646
+ * 65. (DATA_TYPE** ARGOUTVIEWM_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
647
+ * 66. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_FARRAY2)
648
+ *
649
+ * 67. (DATA_TYPE** ARGOUTVIEWM_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
650
+ * 68. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEWM_ARRAY3)
651
+ * 69. (DATA_TYPE** ARGOUTVIEWM_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
652
+ * 70. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEWM_FARRAY3)
653
+ *
654
+ * 71. (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
655
+ * 72. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_ARRAY4)
656
+ * 73. (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
657
+ * 74. (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_FARRAY4)
658
+ *
659
+ * 75. (DATA_TYPE* INPLACE_ARRAY_FLAT, DIM_TYPE DIM_FLAT)
660
+ *
661
+ * where "DATA_TYPE" is any type supported by the NumPy module, and
662
+ * "DIM_TYPE" is any int-like type suitable for specifying dimensions.
663
+ * The difference between "ARRAY" typemaps and "FARRAY" typemaps is
664
+ * that the "FARRAY" typemaps expect Fortran ordering of
665
+ * multidimensional arrays. In python, the dimensions will not need
666
+ * to be specified (except for the "DATA_TYPE* ARGOUT_ARRAY1"
667
+ * typemaps). The IN_ARRAYs can be a numpy array or any sequence that
668
+ * can be converted to a numpy array of the specified type. The
669
+ * INPLACE_ARRAYs must be numpy arrays of the appropriate type. The
670
+ * ARGOUT_ARRAYs will be returned as new numpy arrays of the
671
+ * appropriate type.
672
+ *
673
+ * These typemaps can be applied to existing functions using the
674
+ * %apply directive. For example:
675
+ *
676
+ * %apply (double* IN_ARRAY1, int DIM1) {(double* series, int length)};
677
+ * double prod(double* series, int length);
678
+ *
679
+ * %apply (int DIM1, int DIM2, double* INPLACE_ARRAY2)
680
+ * {(int rows, int cols, double* matrix )};
681
+ * void floor(int rows, int cols, double* matrix, double f);
682
+ *
683
+ * %apply (double IN_ARRAY3[ANY][ANY][ANY])
684
+ * {(double tensor[2][2][2] )};
685
+ * %apply (double ARGOUT_ARRAY3[ANY][ANY][ANY])
686
+ * {(double low[2][2][2] )};
687
+ * %apply (double ARGOUT_ARRAY3[ANY][ANY][ANY])
688
+ * {(double upp[2][2][2] )};
689
+ * void luSplit(double tensor[2][2][2],
690
+ * double low[2][2][2],
691
+ * double upp[2][2][2] );
692
+ *
693
+ * or directly with
694
+ *
695
+ * double prod(double* IN_ARRAY1, int DIM1);
696
+ *
697
+ * void floor(int DIM1, int DIM2, double* INPLACE_ARRAY2, double f);
698
+ *
699
+ * void luSplit(double IN_ARRAY3[ANY][ANY][ANY],
700
+ * double ARGOUT_ARRAY3[ANY][ANY][ANY],
701
+ * double ARGOUT_ARRAY3[ANY][ANY][ANY]);
702
+ */
703
+
704
+ %define %numpy_typemaps(DATA_TYPE, DATA_TYPECODE, DIM_TYPE)
705
+
706
+ /************************/
707
+ /* Input Array Typemaps */
708
+ /************************/
709
+
710
+ /* Typemap suite for (DATA_TYPE IN_ARRAY1[ANY])
711
+ */
712
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
713
+ fragment="NumPy_Macros")
714
+ (DATA_TYPE IN_ARRAY1[ANY])
715
+ {
716
+ $1 = is_array($input) || PySequence_Check($input);
717
+ }
718
+ %typemap(in,
719
+ fragment="NumPy_Fragments")
720
+ (DATA_TYPE IN_ARRAY1[ANY])
721
+ (PyArrayObject* array=NULL, int is_new_object=0)
722
+ {
723
+ npy_intp size[1] = { $1_dim0 };
724
+ array = obj_to_array_contiguous_allow_conversion($input,
725
+ DATA_TYPECODE,
726
+ &is_new_object);
727
+ if (!array || !require_dimensions(array, 1) ||
728
+ !require_size(array, size, 1)) SWIG_fail;
729
+ $1 = ($1_ltype) array_data(array);
730
+ }
731
+ %typemap(freearg)
732
+ (DATA_TYPE IN_ARRAY1[ANY])
733
+ {
734
+ if (is_new_object$argnum && array$argnum)
735
+ { Py_DECREF(array$argnum); }
736
+ }
737
+
738
+ /* Typemap suite for (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1)
739
+ */
740
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
741
+ fragment="NumPy_Macros")
742
+ (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1)
743
+ {
744
+ $1 = is_array($input) || PySequence_Check($input);
745
+ }
746
+ %typemap(in,
747
+ fragment="NumPy_Fragments")
748
+ (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1)
749
+ (PyArrayObject* array=NULL, int is_new_object=0)
750
+ {
751
+ npy_intp size[1] = { -1 };
752
+ array = obj_to_array_contiguous_allow_conversion($input,
753
+ DATA_TYPECODE,
754
+ &is_new_object);
755
+ if (!array || !require_dimensions(array, 1) ||
756
+ !require_size(array, size, 1)) SWIG_fail;
757
+ $1 = (DATA_TYPE*) array_data(array);
758
+ $2 = (DIM_TYPE) array_size(array,0);
759
+ }
760
+ %typemap(freearg)
761
+ (DATA_TYPE* IN_ARRAY1, DIM_TYPE DIM1)
762
+ {
763
+ if (is_new_object$argnum && array$argnum)
764
+ { Py_DECREF(array$argnum); }
765
+ }
766
+
767
+ /* Typemap suite for (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1)
768
+ */
769
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
770
+ fragment="NumPy_Macros")
771
+ (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1)
772
+ {
773
+ $1 = is_array($input) || PySequence_Check($input);
774
+ }
775
+ %typemap(in,
776
+ fragment="NumPy_Fragments")
777
+ (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1)
778
+ (PyArrayObject* array=NULL, int is_new_object=0)
779
+ {
780
+ npy_intp size[1] = {-1};
781
+ array = obj_to_array_contiguous_allow_conversion($input,
782
+ DATA_TYPECODE,
783
+ &is_new_object);
784
+ if (!array || !require_dimensions(array, 1) ||
785
+ !require_size(array, size, 1)) SWIG_fail;
786
+ $1 = (DIM_TYPE) array_size(array,0);
787
+ $2 = (DATA_TYPE*) array_data(array);
788
+ }
789
+ %typemap(freearg)
790
+ (DIM_TYPE DIM1, DATA_TYPE* IN_ARRAY1)
791
+ {
792
+ if (is_new_object$argnum && array$argnum)
793
+ { Py_DECREF(array$argnum); }
794
+ }
795
+
796
+ /* Typemap suite for (DATA_TYPE IN_ARRAY2[ANY][ANY])
797
+ */
798
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
799
+ fragment="NumPy_Macros")
800
+ (DATA_TYPE IN_ARRAY2[ANY][ANY])
801
+ {
802
+ $1 = is_array($input) || PySequence_Check($input);
803
+ }
804
+ %typemap(in,
805
+ fragment="NumPy_Fragments")
806
+ (DATA_TYPE IN_ARRAY2[ANY][ANY])
807
+ (PyArrayObject* array=NULL, int is_new_object=0)
808
+ {
809
+ npy_intp size[2] = { $1_dim0, $1_dim1 };
810
+ array = obj_to_array_contiguous_allow_conversion($input,
811
+ DATA_TYPECODE,
812
+ &is_new_object);
813
+ if (!array || !require_dimensions(array, 2) ||
814
+ !require_size(array, size, 2)) SWIG_fail;
815
+ $1 = ($1_ltype) array_data(array);
816
+ }
817
+ %typemap(freearg)
818
+ (DATA_TYPE IN_ARRAY2[ANY][ANY])
819
+ {
820
+ if (is_new_object$argnum && array$argnum)
821
+ { Py_DECREF(array$argnum); }
822
+ }
823
+
824
+ /* Typemap suite for (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
825
+ */
826
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
827
+ fragment="NumPy_Macros")
828
+ (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
829
+ {
830
+ $1 = is_array($input) || PySequence_Check($input);
831
+ }
832
+ %typemap(in,
833
+ fragment="NumPy_Fragments")
834
+ (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
835
+ (PyArrayObject* array=NULL, int is_new_object=0)
836
+ {
837
+ npy_intp size[2] = { -1, -1 };
838
+ array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE,
839
+ &is_new_object);
840
+ if (!array || !require_dimensions(array, 2) ||
841
+ !require_size(array, size, 2)) SWIG_fail;
842
+ $1 = (DATA_TYPE*) array_data(array);
843
+ $2 = (DIM_TYPE) array_size(array,0);
844
+ $3 = (DIM_TYPE) array_size(array,1);
845
+ }
846
+ %typemap(freearg)
847
+ (DATA_TYPE* IN_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
848
+ {
849
+ if (is_new_object$argnum && array$argnum)
850
+ { Py_DECREF(array$argnum); }
851
+ }
852
+
853
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2)
854
+ */
855
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
856
+ fragment="NumPy_Macros")
857
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2)
858
+ {
859
+ $1 = is_array($input) || PySequence_Check($input);
860
+ }
861
+ %typemap(in,
862
+ fragment="NumPy_Fragments")
863
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2)
864
+ (PyArrayObject* array=NULL, int is_new_object=0)
865
+ {
866
+ npy_intp size[2] = { -1, -1 };
867
+ array = obj_to_array_contiguous_allow_conversion($input,
868
+ DATA_TYPECODE,
869
+ &is_new_object);
870
+ if (!array || !require_dimensions(array, 2) ||
871
+ !require_size(array, size, 2)) SWIG_fail;
872
+ $1 = (DIM_TYPE) array_size(array,0);
873
+ $2 = (DIM_TYPE) array_size(array,1);
874
+ $3 = (DATA_TYPE*) array_data(array);
875
+ }
876
+ %typemap(freearg)
877
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_ARRAY2)
878
+ {
879
+ if (is_new_object$argnum && array$argnum)
880
+ { Py_DECREF(array$argnum); }
881
+ }
882
+
883
+ /* Typemap suite for (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
884
+ */
885
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
886
+ fragment="NumPy_Macros")
887
+ (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
888
+ {
889
+ $1 = is_array($input) || PySequence_Check($input);
890
+ }
891
+ %typemap(in,
892
+ fragment="NumPy_Fragments")
893
+ (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
894
+ (PyArrayObject* array=NULL, int is_new_object=0)
895
+ {
896
+ npy_intp size[2] = { -1, -1 };
897
+ array = obj_to_array_fortran_allow_conversion($input,
898
+ DATA_TYPECODE,
899
+ &is_new_object);
900
+ if (!array || !require_dimensions(array, 2) ||
901
+ !require_size(array, size, 2) || !require_fortran(array)) SWIG_fail;
902
+ $1 = (DATA_TYPE*) array_data(array);
903
+ $2 = (DIM_TYPE) array_size(array,0);
904
+ $3 = (DIM_TYPE) array_size(array,1);
905
+ }
906
+ %typemap(freearg)
907
+ (DATA_TYPE* IN_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
908
+ {
909
+ if (is_new_object$argnum && array$argnum)
910
+ { Py_DECREF(array$argnum); }
911
+ }
912
+
913
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2)
914
+ */
915
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
916
+ fragment="NumPy_Macros")
917
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2)
918
+ {
919
+ $1 = is_array($input) || PySequence_Check($input);
920
+ }
921
+ %typemap(in,
922
+ fragment="NumPy_Fragments")
923
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2)
924
+ (PyArrayObject* array=NULL, int is_new_object=0)
925
+ {
926
+ npy_intp size[2] = { -1, -1 };
927
+ array = obj_to_array_fortran_allow_conversion($input,
928
+ DATA_TYPECODE,
929
+ &is_new_object);
930
+ if (!array || !require_dimensions(array, 2) ||
931
+ !require_size(array, size, 2) || !require_fortran(array)) SWIG_fail;
932
+ $1 = (DIM_TYPE) array_size(array,0);
933
+ $2 = (DIM_TYPE) array_size(array,1);
934
+ $3 = (DATA_TYPE*) array_data(array);
935
+ }
936
+ %typemap(freearg)
937
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* IN_FARRAY2)
938
+ {
939
+ if (is_new_object$argnum && array$argnum)
940
+ { Py_DECREF(array$argnum); }
941
+ }
942
+
943
+ /* Typemap suite for (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY])
944
+ */
945
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
946
+ fragment="NumPy_Macros")
947
+ (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY])
948
+ {
949
+ $1 = is_array($input) || PySequence_Check($input);
950
+ }
951
+ %typemap(in,
952
+ fragment="NumPy_Fragments")
953
+ (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY])
954
+ (PyArrayObject* array=NULL, int is_new_object=0)
955
+ {
956
+ npy_intp size[3] = { $1_dim0, $1_dim1, $1_dim2 };
957
+ array = obj_to_array_contiguous_allow_conversion($input,
958
+ DATA_TYPECODE,
959
+ &is_new_object);
960
+ if (!array || !require_dimensions(array, 3) ||
961
+ !require_size(array, size, 3)) SWIG_fail;
962
+ $1 = ($1_ltype) array_data(array);
963
+ }
964
+ %typemap(freearg)
965
+ (DATA_TYPE IN_ARRAY3[ANY][ANY][ANY])
966
+ {
967
+ if (is_new_object$argnum && array$argnum)
968
+ { Py_DECREF(array$argnum); }
969
+ }
970
+
971
+ /* Typemap suite for (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2,
972
+ * DIM_TYPE DIM3)
973
+ */
974
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
975
+ fragment="NumPy_Macros")
976
+ (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
977
+ {
978
+ $1 = is_array($input) || PySequence_Check($input);
979
+ }
980
+ %typemap(in,
981
+ fragment="NumPy_Fragments")
982
+ (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
983
+ (PyArrayObject* array=NULL, int is_new_object=0)
984
+ {
985
+ npy_intp size[3] = { -1, -1, -1 };
986
+ array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE,
987
+ &is_new_object);
988
+ if (!array || !require_dimensions(array, 3) ||
989
+ !require_size(array, size, 3)) SWIG_fail;
990
+ $1 = (DATA_TYPE*) array_data(array);
991
+ $2 = (DIM_TYPE) array_size(array,0);
992
+ $3 = (DIM_TYPE) array_size(array,1);
993
+ $4 = (DIM_TYPE) array_size(array,2);
994
+ }
995
+ %typemap(freearg)
996
+ (DATA_TYPE* IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
997
+ {
998
+ if (is_new_object$argnum && array$argnum)
999
+ { Py_DECREF(array$argnum); }
1000
+ }
1001
+
1002
+ /* Typemap suite for (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2,
1003
+ * DIM_TYPE DIM3)
1004
+ */
1005
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1006
+ fragment="NumPy_Macros")
1007
+ (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1008
+ {
1009
+ /* for now, only concerned with lists */
1010
+ $1 = PySequence_Check($input);
1011
+ }
1012
+ %typemap(in,
1013
+ fragment="NumPy_Fragments")
1014
+ (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1015
+ (DATA_TYPE** array=NULL, PyArrayObject** object_array=NULL, int* is_new_object_array=NULL)
1016
+ {
1017
+ npy_intp size[2] = { -1, -1 };
1018
+ PyArrayObject* temp_array;
1019
+ Py_ssize_t i;
1020
+ int is_new_object;
1021
+
1022
+ /* length of the list */
1023
+ $2 = PyList_Size($input);
1024
+
1025
+ /* the arrays */
1026
+ array = (DATA_TYPE **)malloc($2*sizeof(DATA_TYPE *));
1027
+ object_array = (PyArrayObject **)calloc($2,sizeof(PyArrayObject *));
1028
+ is_new_object_array = (int *)calloc($2,sizeof(int));
1029
+
1030
+ if (array == NULL || object_array == NULL || is_new_object_array == NULL)
1031
+ {
1032
+ SWIG_fail;
1033
+ }
1034
+
1035
+ for (i=0; i<$2; i++)
1036
+ {
1037
+ temp_array = obj_to_array_contiguous_allow_conversion(PySequence_GetItem($input,i), DATA_TYPECODE, &is_new_object);
1038
+
1039
+ /* the new array must be stored so that it can be destroyed in freearg */
1040
+ object_array[i] = temp_array;
1041
+ is_new_object_array[i] = is_new_object;
1042
+
1043
+ if (!temp_array || !require_dimensions(temp_array, 2)) SWIG_fail;
1044
+
1045
+ /* store the size of the first array in the list, then use that for comparison. */
1046
+ if (i == 0)
1047
+ {
1048
+ size[0] = array_size(temp_array,0);
1049
+ size[1] = array_size(temp_array,1);
1050
+ }
1051
+
1052
+ if (!require_size(temp_array, size, 2)) SWIG_fail;
1053
+
1054
+ array[i] = (DATA_TYPE*) array_data(temp_array);
1055
+ }
1056
+
1057
+ $1 = (DATA_TYPE**) array;
1058
+ $3 = (DIM_TYPE) size[0];
1059
+ $4 = (DIM_TYPE) size[1];
1060
+ }
1061
+ %typemap(freearg)
1062
+ (DATA_TYPE** IN_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1063
+ {
1064
+ Py_ssize_t i;
1065
+
1066
+ if (array$argnum!=NULL) free(array$argnum);
1067
+
1068
+ /*freeing the individual arrays if needed */
1069
+ if (object_array$argnum!=NULL)
1070
+ {
1071
+ if (is_new_object_array$argnum!=NULL)
1072
+ {
1073
+ for (i=0; i<$2; i++)
1074
+ {
1075
+ if (object_array$argnum[i] != NULL && is_new_object_array$argnum[i])
1076
+ { Py_DECREF(object_array$argnum[i]); }
1077
+ }
1078
+ free(is_new_object_array$argnum);
1079
+ }
1080
+ free(object_array$argnum);
1081
+ }
1082
+ }
1083
+
1084
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3,
1085
+ * DATA_TYPE* IN_ARRAY3)
1086
+ */
1087
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1088
+ fragment="NumPy_Macros")
1089
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_ARRAY3)
1090
+ {
1091
+ $1 = is_array($input) || PySequence_Check($input);
1092
+ }
1093
+ %typemap(in,
1094
+ fragment="NumPy_Fragments")
1095
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_ARRAY3)
1096
+ (PyArrayObject* array=NULL, int is_new_object=0)
1097
+ {
1098
+ npy_intp size[3] = { -1, -1, -1 };
1099
+ array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE,
1100
+ &is_new_object);
1101
+ if (!array || !require_dimensions(array, 3) ||
1102
+ !require_size(array, size, 3)) SWIG_fail;
1103
+ $1 = (DIM_TYPE) array_size(array,0);
1104
+ $2 = (DIM_TYPE) array_size(array,1);
1105
+ $3 = (DIM_TYPE) array_size(array,2);
1106
+ $4 = (DATA_TYPE*) array_data(array);
1107
+ }
1108
+ %typemap(freearg)
1109
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_ARRAY3)
1110
+ {
1111
+ if (is_new_object$argnum && array$argnum)
1112
+ { Py_DECREF(array$argnum); }
1113
+ }
1114
+
1115
+ /* Typemap suite for (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2,
1116
+ * DIM_TYPE DIM3)
1117
+ */
1118
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1119
+ fragment="NumPy_Macros")
1120
+ (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1121
+ {
1122
+ $1 = is_array($input) || PySequence_Check($input);
1123
+ }
1124
+ %typemap(in,
1125
+ fragment="NumPy_Fragments")
1126
+ (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1127
+ (PyArrayObject* array=NULL, int is_new_object=0)
1128
+ {
1129
+ npy_intp size[3] = { -1, -1, -1 };
1130
+ array = obj_to_array_fortran_allow_conversion($input, DATA_TYPECODE,
1131
+ &is_new_object);
1132
+ if (!array || !require_dimensions(array, 3) ||
1133
+ !require_size(array, size, 3) | !require_fortran(array)) SWIG_fail;
1134
+ $1 = (DATA_TYPE*) array_data(array);
1135
+ $2 = (DIM_TYPE) array_size(array,0);
1136
+ $3 = (DIM_TYPE) array_size(array,1);
1137
+ $4 = (DIM_TYPE) array_size(array,2);
1138
+ }
1139
+ %typemap(freearg)
1140
+ (DATA_TYPE* IN_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1141
+ {
1142
+ if (is_new_object$argnum && array$argnum)
1143
+ { Py_DECREF(array$argnum); }
1144
+ }
1145
+
1146
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3,
1147
+ * DATA_TYPE* IN_FARRAY3)
1148
+ */
1149
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1150
+ fragment="NumPy_Macros")
1151
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_FARRAY3)
1152
+ {
1153
+ $1 = is_array($input) || PySequence_Check($input);
1154
+ }
1155
+ %typemap(in,
1156
+ fragment="NumPy_Fragments")
1157
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_FARRAY3)
1158
+ (PyArrayObject* array=NULL, int is_new_object=0)
1159
+ {
1160
+ npy_intp size[3] = { -1, -1, -1 };
1161
+ array = obj_to_array_fortran_allow_conversion($input,
1162
+ DATA_TYPECODE,
1163
+ &is_new_object);
1164
+ if (!array || !require_dimensions(array, 3) ||
1165
+ !require_size(array, size, 3) || !require_fortran(array)) SWIG_fail;
1166
+ $1 = (DIM_TYPE) array_size(array,0);
1167
+ $2 = (DIM_TYPE) array_size(array,1);
1168
+ $3 = (DIM_TYPE) array_size(array,2);
1169
+ $4 = (DATA_TYPE*) array_data(array);
1170
+ }
1171
+ %typemap(freearg)
1172
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* IN_FARRAY3)
1173
+ {
1174
+ if (is_new_object$argnum && array$argnum)
1175
+ { Py_DECREF(array$argnum); }
1176
+ }
1177
+
1178
+ /* Typemap suite for (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY])
1179
+ */
1180
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1181
+ fragment="NumPy_Macros")
1182
+ (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY])
1183
+ {
1184
+ $1 = is_array($input) || PySequence_Check($input);
1185
+ }
1186
+ %typemap(in,
1187
+ fragment="NumPy_Fragments")
1188
+ (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY])
1189
+ (PyArrayObject* array=NULL, int is_new_object=0)
1190
+ {
1191
+ npy_intp size[4] = { $1_dim0, $1_dim1, $1_dim2 , $1_dim3};
1192
+ array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE,
1193
+ &is_new_object);
1194
+ if (!array || !require_dimensions(array, 4) ||
1195
+ !require_size(array, size, 4)) SWIG_fail;
1196
+ $1 = ($1_ltype) array_data(array);
1197
+ }
1198
+ %typemap(freearg)
1199
+ (DATA_TYPE IN_ARRAY4[ANY][ANY][ANY][ANY])
1200
+ {
1201
+ if (is_new_object$argnum && array$argnum)
1202
+ { Py_DECREF(array$argnum); }
1203
+ }
1204
+
1205
+ /* Typemap suite for (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2,
1206
+ * DIM_TYPE DIM3, DIM_TYPE DIM4)
1207
+ */
1208
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1209
+ fragment="NumPy_Macros")
1210
+ (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1211
+ {
1212
+ $1 = is_array($input) || PySequence_Check($input);
1213
+ }
1214
+ %typemap(in,
1215
+ fragment="NumPy_Fragments")
1216
+ (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1217
+ (PyArrayObject* array=NULL, int is_new_object=0)
1218
+ {
1219
+ npy_intp size[4] = { -1, -1, -1, -1 };
1220
+ array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE,
1221
+ &is_new_object);
1222
+ if (!array || !require_dimensions(array, 4) ||
1223
+ !require_size(array, size, 4)) SWIG_fail;
1224
+ $1 = (DATA_TYPE*) array_data(array);
1225
+ $2 = (DIM_TYPE) array_size(array,0);
1226
+ $3 = (DIM_TYPE) array_size(array,1);
1227
+ $4 = (DIM_TYPE) array_size(array,2);
1228
+ $5 = (DIM_TYPE) array_size(array,3);
1229
+ }
1230
+ %typemap(freearg)
1231
+ (DATA_TYPE* IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1232
+ {
1233
+ if (is_new_object$argnum && array$argnum)
1234
+ { Py_DECREF(array$argnum); }
1235
+ }
1236
+
1237
+ /* Typemap suite for (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2,
1238
+ * DIM_TYPE DIM3, DIM_TYPE DIM4)
1239
+ */
1240
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1241
+ fragment="NumPy_Macros")
1242
+ (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1243
+ {
1244
+ /* for now, only concerned with lists */
1245
+ $1 = PySequence_Check($input);
1246
+ }
1247
+ %typemap(in,
1248
+ fragment="NumPy_Fragments")
1249
+ (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1250
+ (DATA_TYPE** array=NULL, PyArrayObject** object_array=NULL, int* is_new_object_array=NULL)
1251
+ {
1252
+ npy_intp size[3] = { -1, -1, -1 };
1253
+ PyArrayObject* temp_array;
1254
+ Py_ssize_t i;
1255
+ int is_new_object;
1256
+
1257
+ /* length of the list */
1258
+ $2 = PyList_Size($input);
1259
+
1260
+ /* the arrays */
1261
+ array = (DATA_TYPE **)malloc($2*sizeof(DATA_TYPE *));
1262
+ object_array = (PyArrayObject **)calloc($2,sizeof(PyArrayObject *));
1263
+ is_new_object_array = (int *)calloc($2,sizeof(int));
1264
+
1265
+ if (array == NULL || object_array == NULL || is_new_object_array == NULL)
1266
+ {
1267
+ SWIG_fail;
1268
+ }
1269
+
1270
+ for (i=0; i<$2; i++)
1271
+ {
1272
+ temp_array = obj_to_array_contiguous_allow_conversion(PySequence_GetItem($input,i), DATA_TYPECODE, &is_new_object);
1273
+
1274
+ /* the new array must be stored so that it can be destroyed in freearg */
1275
+ object_array[i] = temp_array;
1276
+ is_new_object_array[i] = is_new_object;
1277
+
1278
+ if (!temp_array || !require_dimensions(temp_array, 3)) SWIG_fail;
1279
+
1280
+ /* store the size of the first array in the list, then use that for comparison. */
1281
+ if (i == 0)
1282
+ {
1283
+ size[0] = array_size(temp_array,0);
1284
+ size[1] = array_size(temp_array,1);
1285
+ size[2] = array_size(temp_array,2);
1286
+ }
1287
+
1288
+ if (!require_size(temp_array, size, 3)) SWIG_fail;
1289
+
1290
+ array[i] = (DATA_TYPE*) array_data(temp_array);
1291
+ }
1292
+
1293
+ $1 = (DATA_TYPE**) array;
1294
+ $3 = (DIM_TYPE) size[0];
1295
+ $4 = (DIM_TYPE) size[1];
1296
+ $5 = (DIM_TYPE) size[2];
1297
+ }
1298
+ %typemap(freearg)
1299
+ (DATA_TYPE** IN_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1300
+ {
1301
+ Py_ssize_t i;
1302
+
1303
+ if (array$argnum!=NULL) free(array$argnum);
1304
+
1305
+ /*freeing the individual arrays if needed */
1306
+ if (object_array$argnum!=NULL)
1307
+ {
1308
+ if (is_new_object_array$argnum!=NULL)
1309
+ {
1310
+ for (i=0; i<$2; i++)
1311
+ {
1312
+ if (object_array$argnum[i] != NULL && is_new_object_array$argnum[i])
1313
+ { Py_DECREF(object_array$argnum[i]); }
1314
+ }
1315
+ free(is_new_object_array$argnum);
1316
+ }
1317
+ free(object_array$argnum);
1318
+ }
1319
+ }
1320
+
1321
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4,
1322
+ * DATA_TYPE* IN_ARRAY4)
1323
+ */
1324
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1325
+ fragment="NumPy_Macros")
1326
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_ARRAY4)
1327
+ {
1328
+ $1 = is_array($input) || PySequence_Check($input);
1329
+ }
1330
+ %typemap(in,
1331
+ fragment="NumPy_Fragments")
1332
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_ARRAY4)
1333
+ (PyArrayObject* array=NULL, int is_new_object=0)
1334
+ {
1335
+ npy_intp size[4] = { -1, -1, -1 , -1};
1336
+ array = obj_to_array_contiguous_allow_conversion($input, DATA_TYPECODE,
1337
+ &is_new_object);
1338
+ if (!array || !require_dimensions(array, 4) ||
1339
+ !require_size(array, size, 4)) SWIG_fail;
1340
+ $1 = (DIM_TYPE) array_size(array,0);
1341
+ $2 = (DIM_TYPE) array_size(array,1);
1342
+ $3 = (DIM_TYPE) array_size(array,2);
1343
+ $4 = (DIM_TYPE) array_size(array,3);
1344
+ $5 = (DATA_TYPE*) array_data(array);
1345
+ }
1346
+ %typemap(freearg)
1347
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_ARRAY4)
1348
+ {
1349
+ if (is_new_object$argnum && array$argnum)
1350
+ { Py_DECREF(array$argnum); }
1351
+ }
1352
+
1353
+ /* Typemap suite for (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2,
1354
+ * DIM_TYPE DIM3, DIM_TYPE DIM4)
1355
+ */
1356
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1357
+ fragment="NumPy_Macros")
1358
+ (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1359
+ {
1360
+ $1 = is_array($input) || PySequence_Check($input);
1361
+ }
1362
+ %typemap(in,
1363
+ fragment="NumPy_Fragments")
1364
+ (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1365
+ (PyArrayObject* array=NULL, int is_new_object=0)
1366
+ {
1367
+ npy_intp size[4] = { -1, -1, -1, -1 };
1368
+ array = obj_to_array_fortran_allow_conversion($input, DATA_TYPECODE,
1369
+ &is_new_object);
1370
+ if (!array || !require_dimensions(array, 4) ||
1371
+ !require_size(array, size, 4) | !require_fortran(array)) SWIG_fail;
1372
+ $1 = (DATA_TYPE*) array_data(array);
1373
+ $2 = (DIM_TYPE) array_size(array,0);
1374
+ $3 = (DIM_TYPE) array_size(array,1);
1375
+ $4 = (DIM_TYPE) array_size(array,2);
1376
+ $5 = (DIM_TYPE) array_size(array,3);
1377
+ }
1378
+ %typemap(freearg)
1379
+ (DATA_TYPE* IN_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1380
+ {
1381
+ if (is_new_object$argnum && array$argnum)
1382
+ { Py_DECREF(array$argnum); }
1383
+ }
1384
+
1385
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4,
1386
+ * DATA_TYPE* IN_FARRAY4)
1387
+ */
1388
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1389
+ fragment="NumPy_Macros")
1390
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_FARRAY4)
1391
+ {
1392
+ $1 = is_array($input) || PySequence_Check($input);
1393
+ }
1394
+ %typemap(in,
1395
+ fragment="NumPy_Fragments")
1396
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_FARRAY4)
1397
+ (PyArrayObject* array=NULL, int is_new_object=0)
1398
+ {
1399
+ npy_intp size[4] = { -1, -1, -1 , -1 };
1400
+ array = obj_to_array_fortran_allow_conversion($input, DATA_TYPECODE,
1401
+ &is_new_object);
1402
+ if (!array || !require_dimensions(array, 4) ||
1403
+ !require_size(array, size, 4) || !require_fortran(array)) SWIG_fail;
1404
+ $1 = (DIM_TYPE) array_size(array,0);
1405
+ $2 = (DIM_TYPE) array_size(array,1);
1406
+ $3 = (DIM_TYPE) array_size(array,2);
1407
+ $4 = (DIM_TYPE) array_size(array,3);
1408
+ $5 = (DATA_TYPE*) array_data(array);
1409
+ }
1410
+ %typemap(freearg)
1411
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* IN_FARRAY4)
1412
+ {
1413
+ if (is_new_object$argnum && array$argnum)
1414
+ { Py_DECREF(array$argnum); }
1415
+ }
1416
+
1417
+ /***************************/
1418
+ /* In-Place Array Typemaps */
1419
+ /***************************/
1420
+
1421
+ /* Typemap suite for (DATA_TYPE INPLACE_ARRAY1[ANY])
1422
+ */
1423
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1424
+ fragment="NumPy_Macros")
1425
+ (DATA_TYPE INPLACE_ARRAY1[ANY])
1426
+ {
1427
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1428
+ DATA_TYPECODE);
1429
+ }
1430
+ %typemap(in,
1431
+ fragment="NumPy_Fragments")
1432
+ (DATA_TYPE INPLACE_ARRAY1[ANY])
1433
+ (PyArrayObject* array=NULL)
1434
+ {
1435
+ npy_intp size[1] = { $1_dim0 };
1436
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1437
+ if (!array || !require_dimensions(array,1) || !require_size(array, size, 1) ||
1438
+ !require_contiguous(array) || !require_native(array)) SWIG_fail;
1439
+ $1 = ($1_ltype) array_data(array);
1440
+ }
1441
+
1442
+ /* Typemap suite for (DATA_TYPE* INPLACE_ARRAY1, DIM_TYPE DIM1)
1443
+ */
1444
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1445
+ fragment="NumPy_Macros")
1446
+ (DATA_TYPE* INPLACE_ARRAY1, DIM_TYPE DIM1)
1447
+ {
1448
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1449
+ DATA_TYPECODE);
1450
+ }
1451
+ %typemap(in,
1452
+ fragment="NumPy_Fragments")
1453
+ (DATA_TYPE* INPLACE_ARRAY1, DIM_TYPE DIM1)
1454
+ (PyArrayObject* array=NULL, int i=1)
1455
+ {
1456
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1457
+ if (!array || !require_dimensions(array,1) || !require_contiguous(array)
1458
+ || !require_native(array)) SWIG_fail;
1459
+ $1 = (DATA_TYPE*) array_data(array);
1460
+ $2 = 1;
1461
+ for (i=0; i < array_numdims(array); ++i) $2 *= array_size(array,i);
1462
+ }
1463
+
1464
+ /* Typemap suite for (DIM_TYPE DIM1, DATA_TYPE* INPLACE_ARRAY1)
1465
+ */
1466
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1467
+ fragment="NumPy_Macros")
1468
+ (DIM_TYPE DIM1, DATA_TYPE* INPLACE_ARRAY1)
1469
+ {
1470
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1471
+ DATA_TYPECODE);
1472
+ }
1473
+ %typemap(in,
1474
+ fragment="NumPy_Fragments")
1475
+ (DIM_TYPE DIM1, DATA_TYPE* INPLACE_ARRAY1)
1476
+ (PyArrayObject* array=NULL, int i=0)
1477
+ {
1478
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1479
+ if (!array || !require_dimensions(array,1) || !require_contiguous(array)
1480
+ || !require_native(array)) SWIG_fail;
1481
+ $1 = 1;
1482
+ for (i=0; i < array_numdims(array); ++i) $1 *= array_size(array,i);
1483
+ $2 = (DATA_TYPE*) array_data(array);
1484
+ }
1485
+
1486
+ /* Typemap suite for (DATA_TYPE INPLACE_ARRAY2[ANY][ANY])
1487
+ */
1488
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1489
+ fragment="NumPy_Macros")
1490
+ (DATA_TYPE INPLACE_ARRAY2[ANY][ANY])
1491
+ {
1492
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1493
+ DATA_TYPECODE);
1494
+ }
1495
+ %typemap(in,
1496
+ fragment="NumPy_Fragments")
1497
+ (DATA_TYPE INPLACE_ARRAY2[ANY][ANY])
1498
+ (PyArrayObject* array=NULL)
1499
+ {
1500
+ npy_intp size[2] = { $1_dim0, $1_dim1 };
1501
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1502
+ if (!array || !require_dimensions(array,2) || !require_size(array, size, 2) ||
1503
+ !require_contiguous(array) || !require_native(array)) SWIG_fail;
1504
+ $1 = ($1_ltype) array_data(array);
1505
+ }
1506
+
1507
+ /* Typemap suite for (DATA_TYPE* INPLACE_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
1508
+ */
1509
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1510
+ fragment="NumPy_Macros")
1511
+ (DATA_TYPE* INPLACE_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
1512
+ {
1513
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1514
+ DATA_TYPECODE);
1515
+ }
1516
+ %typemap(in,
1517
+ fragment="NumPy_Fragments")
1518
+ (DATA_TYPE* INPLACE_ARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
1519
+ (PyArrayObject* array=NULL)
1520
+ {
1521
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1522
+ if (!array || !require_dimensions(array,2) || !require_contiguous(array)
1523
+ || !require_native(array)) SWIG_fail;
1524
+ $1 = (DATA_TYPE*) array_data(array);
1525
+ $2 = (DIM_TYPE) array_size(array,0);
1526
+ $3 = (DIM_TYPE) array_size(array,1);
1527
+ }
1528
+
1529
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_ARRAY2)
1530
+ */
1531
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1532
+ fragment="NumPy_Macros")
1533
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_ARRAY2)
1534
+ {
1535
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1536
+ DATA_TYPECODE);
1537
+ }
1538
+ %typemap(in,
1539
+ fragment="NumPy_Fragments")
1540
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_ARRAY2)
1541
+ (PyArrayObject* array=NULL)
1542
+ {
1543
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1544
+ if (!array || !require_dimensions(array,2) || !require_contiguous(array) ||
1545
+ !require_native(array)) SWIG_fail;
1546
+ $1 = (DIM_TYPE) array_size(array,0);
1547
+ $2 = (DIM_TYPE) array_size(array,1);
1548
+ $3 = (DATA_TYPE*) array_data(array);
1549
+ }
1550
+
1551
+ /* Typemap suite for (DATA_TYPE* INPLACE_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
1552
+ */
1553
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1554
+ fragment="NumPy_Macros")
1555
+ (DATA_TYPE* INPLACE_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
1556
+ {
1557
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1558
+ DATA_TYPECODE);
1559
+ }
1560
+ %typemap(in,
1561
+ fragment="NumPy_Fragments")
1562
+ (DATA_TYPE* INPLACE_FARRAY2, DIM_TYPE DIM1, DIM_TYPE DIM2)
1563
+ (PyArrayObject* array=NULL)
1564
+ {
1565
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1566
+ if (!array || !require_dimensions(array,2) || !require_contiguous(array)
1567
+ || !require_native(array) || !require_fortran(array)) SWIG_fail;
1568
+ $1 = (DATA_TYPE*) array_data(array);
1569
+ $2 = (DIM_TYPE) array_size(array,0);
1570
+ $3 = (DIM_TYPE) array_size(array,1);
1571
+ }
1572
+
1573
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_FARRAY2)
1574
+ */
1575
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1576
+ fragment="NumPy_Macros")
1577
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_FARRAY2)
1578
+ {
1579
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1580
+ DATA_TYPECODE);
1581
+ }
1582
+ %typemap(in,
1583
+ fragment="NumPy_Fragments")
1584
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DATA_TYPE* INPLACE_FARRAY2)
1585
+ (PyArrayObject* array=NULL)
1586
+ {
1587
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1588
+ if (!array || !require_dimensions(array,2) || !require_contiguous(array) ||
1589
+ !require_native(array) || !require_fortran(array)) SWIG_fail;
1590
+ $1 = (DIM_TYPE) array_size(array,0);
1591
+ $2 = (DIM_TYPE) array_size(array,1);
1592
+ $3 = (DATA_TYPE*) array_data(array);
1593
+ }
1594
+
1595
+ /* Typemap suite for (DATA_TYPE INPLACE_ARRAY3[ANY][ANY][ANY])
1596
+ */
1597
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1598
+ fragment="NumPy_Macros")
1599
+ (DATA_TYPE INPLACE_ARRAY3[ANY][ANY][ANY])
1600
+ {
1601
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1602
+ DATA_TYPECODE);
1603
+ }
1604
+ %typemap(in,
1605
+ fragment="NumPy_Fragments")
1606
+ (DATA_TYPE INPLACE_ARRAY3[ANY][ANY][ANY])
1607
+ (PyArrayObject* array=NULL)
1608
+ {
1609
+ npy_intp size[3] = { $1_dim0, $1_dim1, $1_dim2 };
1610
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1611
+ if (!array || !require_dimensions(array,3) || !require_size(array, size, 3) ||
1612
+ !require_contiguous(array) || !require_native(array)) SWIG_fail;
1613
+ $1 = ($1_ltype) array_data(array);
1614
+ }
1615
+
1616
+ /* Typemap suite for (DATA_TYPE* INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2,
1617
+ * DIM_TYPE DIM3)
1618
+ */
1619
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1620
+ fragment="NumPy_Macros")
1621
+ (DATA_TYPE* INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1622
+ {
1623
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1624
+ DATA_TYPECODE);
1625
+ }
1626
+ %typemap(in,
1627
+ fragment="NumPy_Fragments")
1628
+ (DATA_TYPE* INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1629
+ (PyArrayObject* array=NULL)
1630
+ {
1631
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1632
+ if (!array || !require_dimensions(array,3) || !require_contiguous(array) ||
1633
+ !require_native(array)) SWIG_fail;
1634
+ $1 = (DATA_TYPE*) array_data(array);
1635
+ $2 = (DIM_TYPE) array_size(array,0);
1636
+ $3 = (DIM_TYPE) array_size(array,1);
1637
+ $4 = (DIM_TYPE) array_size(array,2);
1638
+ }
1639
+
1640
+ /* Typemap suite for (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2,
1641
+ * DIM_TYPE DIM3)
1642
+ */
1643
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1644
+ fragment="NumPy_Macros")
1645
+ (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1646
+ {
1647
+ $1 = PySequence_Check($input);
1648
+ }
1649
+ %typemap(in,
1650
+ fragment="NumPy_Fragments")
1651
+ (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1652
+ (DATA_TYPE** array=NULL, PyArrayObject** object_array=NULL)
1653
+ {
1654
+ npy_intp size[2] = { -1, -1 };
1655
+ PyArrayObject* temp_array;
1656
+ Py_ssize_t i;
1657
+
1658
+ /* length of the list */
1659
+ $2 = PyList_Size($input);
1660
+
1661
+ /* the arrays */
1662
+ array = (DATA_TYPE **)malloc($2*sizeof(DATA_TYPE *));
1663
+ object_array = (PyArrayObject **)calloc($2,sizeof(PyArrayObject *));
1664
+
1665
+ if (array == NULL || object_array == NULL)
1666
+ {
1667
+ SWIG_fail;
1668
+ }
1669
+
1670
+ for (i=0; i<$2; i++)
1671
+ {
1672
+ temp_array = obj_to_array_no_conversion(PySequence_GetItem($input,i), DATA_TYPECODE);
1673
+
1674
+ /* the new array must be stored so that it can be destroyed in freearg */
1675
+ object_array[i] = temp_array;
1676
+
1677
+ if ( !temp_array || !require_dimensions(temp_array, 2) ||
1678
+ !require_contiguous(temp_array) ||
1679
+ !require_native(temp_array) ||
1680
+ !PyArray_EquivTypenums(array_type(temp_array), DATA_TYPECODE)
1681
+ ) SWIG_fail;
1682
+
1683
+ /* store the size of the first array in the list, then use that for comparison. */
1684
+ if (i == 0)
1685
+ {
1686
+ size[0] = array_size(temp_array,0);
1687
+ size[1] = array_size(temp_array,1);
1688
+ }
1689
+
1690
+ if (!require_size(temp_array, size, 2)) SWIG_fail;
1691
+
1692
+ array[i] = (DATA_TYPE*) array_data(temp_array);
1693
+ }
1694
+
1695
+ $1 = (DATA_TYPE**) array;
1696
+ $3 = (DIM_TYPE) size[0];
1697
+ $4 = (DIM_TYPE) size[1];
1698
+ }
1699
+ %typemap(freearg)
1700
+ (DATA_TYPE** INPLACE_ARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1701
+ {
1702
+ if (array$argnum!=NULL) free(array$argnum);
1703
+ if (object_array$argnum!=NULL) free(object_array$argnum);
1704
+ }
1705
+
1706
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3,
1707
+ * DATA_TYPE* INPLACE_ARRAY3)
1708
+ */
1709
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1710
+ fragment="NumPy_Macros")
1711
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_ARRAY3)
1712
+ {
1713
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1714
+ DATA_TYPECODE);
1715
+ }
1716
+ %typemap(in,
1717
+ fragment="NumPy_Fragments")
1718
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_ARRAY3)
1719
+ (PyArrayObject* array=NULL)
1720
+ {
1721
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1722
+ if (!array || !require_dimensions(array,3) || !require_contiguous(array)
1723
+ || !require_native(array)) SWIG_fail;
1724
+ $1 = (DIM_TYPE) array_size(array,0);
1725
+ $2 = (DIM_TYPE) array_size(array,1);
1726
+ $3 = (DIM_TYPE) array_size(array,2);
1727
+ $4 = (DATA_TYPE*) array_data(array);
1728
+ }
1729
+
1730
+ /* Typemap suite for (DATA_TYPE* INPLACE_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2,
1731
+ * DIM_TYPE DIM3)
1732
+ */
1733
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1734
+ fragment="NumPy_Macros")
1735
+ (DATA_TYPE* INPLACE_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1736
+ {
1737
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1738
+ DATA_TYPECODE);
1739
+ }
1740
+ %typemap(in,
1741
+ fragment="NumPy_Fragments")
1742
+ (DATA_TYPE* INPLACE_FARRAY3, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3)
1743
+ (PyArrayObject* array=NULL)
1744
+ {
1745
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1746
+ if (!array || !require_dimensions(array,3) || !require_contiguous(array) ||
1747
+ !require_native(array) || !require_fortran(array)) SWIG_fail;
1748
+ $1 = (DATA_TYPE*) array_data(array);
1749
+ $2 = (DIM_TYPE) array_size(array,0);
1750
+ $3 = (DIM_TYPE) array_size(array,1);
1751
+ $4 = (DIM_TYPE) array_size(array,2);
1752
+ }
1753
+
1754
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3,
1755
+ * DATA_TYPE* INPLACE_FARRAY3)
1756
+ */
1757
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1758
+ fragment="NumPy_Macros")
1759
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_FARRAY3)
1760
+ {
1761
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1762
+ DATA_TYPECODE);
1763
+ }
1764
+ %typemap(in,
1765
+ fragment="NumPy_Fragments")
1766
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DATA_TYPE* INPLACE_FARRAY3)
1767
+ (PyArrayObject* array=NULL)
1768
+ {
1769
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1770
+ if (!array || !require_dimensions(array,3) || !require_contiguous(array)
1771
+ || !require_native(array) || !require_fortran(array)) SWIG_fail;
1772
+ $1 = (DIM_TYPE) array_size(array,0);
1773
+ $2 = (DIM_TYPE) array_size(array,1);
1774
+ $3 = (DIM_TYPE) array_size(array,2);
1775
+ $4 = (DATA_TYPE*) array_data(array);
1776
+ }
1777
+
1778
+ /* Typemap suite for (DATA_TYPE INPLACE_ARRAY4[ANY][ANY][ANY][ANY])
1779
+ */
1780
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1781
+ fragment="NumPy_Macros")
1782
+ (DATA_TYPE INPLACE_ARRAY4[ANY][ANY][ANY][ANY])
1783
+ {
1784
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1785
+ DATA_TYPECODE);
1786
+ }
1787
+ %typemap(in,
1788
+ fragment="NumPy_Fragments")
1789
+ (DATA_TYPE INPLACE_ARRAY4[ANY][ANY][ANY][ANY])
1790
+ (PyArrayObject* array=NULL)
1791
+ {
1792
+ npy_intp size[4] = { $1_dim0, $1_dim1, $1_dim2 , $1_dim3 };
1793
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1794
+ if (!array || !require_dimensions(array,4) || !require_size(array, size, 4) ||
1795
+ !require_contiguous(array) || !require_native(array)) SWIG_fail;
1796
+ $1 = ($1_ltype) array_data(array);
1797
+ }
1798
+
1799
+ /* Typemap suite for (DATA_TYPE* INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2,
1800
+ * DIM_TYPE DIM3, DIM_TYPE DIM4)
1801
+ */
1802
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1803
+ fragment="NumPy_Macros")
1804
+ (DATA_TYPE* INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1805
+ {
1806
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1807
+ DATA_TYPECODE);
1808
+ }
1809
+ %typemap(in,
1810
+ fragment="NumPy_Fragments")
1811
+ (DATA_TYPE* INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1812
+ (PyArrayObject* array=NULL)
1813
+ {
1814
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1815
+ if (!array || !require_dimensions(array,4) || !require_contiguous(array) ||
1816
+ !require_native(array)) SWIG_fail;
1817
+ $1 = (DATA_TYPE*) array_data(array);
1818
+ $2 = (DIM_TYPE) array_size(array,0);
1819
+ $3 = (DIM_TYPE) array_size(array,1);
1820
+ $4 = (DIM_TYPE) array_size(array,2);
1821
+ $5 = (DIM_TYPE) array_size(array,3);
1822
+ }
1823
+
1824
+ /* Typemap suite for (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2,
1825
+ * DIM_TYPE DIM3, DIM_TYPE DIM4)
1826
+ */
1827
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1828
+ fragment="NumPy_Macros")
1829
+ (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1830
+ {
1831
+ $1 = PySequence_Check($input);
1832
+ }
1833
+ %typemap(in,
1834
+ fragment="NumPy_Fragments")
1835
+ (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1836
+ (DATA_TYPE** array=NULL, PyArrayObject** object_array=NULL)
1837
+ {
1838
+ npy_intp size[3] = { -1, -1, -1 };
1839
+ PyArrayObject* temp_array;
1840
+ Py_ssize_t i;
1841
+
1842
+ /* length of the list */
1843
+ $2 = PyList_Size($input);
1844
+
1845
+ /* the arrays */
1846
+ array = (DATA_TYPE **)malloc($2*sizeof(DATA_TYPE *));
1847
+ object_array = (PyArrayObject **)calloc($2,sizeof(PyArrayObject *));
1848
+
1849
+ if (array == NULL || object_array == NULL)
1850
+ {
1851
+ SWIG_fail;
1852
+ }
1853
+
1854
+ for (i=0; i<$2; i++)
1855
+ {
1856
+ temp_array = obj_to_array_no_conversion(PySequence_GetItem($input,i), DATA_TYPECODE);
1857
+
1858
+ /* the new array must be stored so that it can be destroyed in freearg */
1859
+ object_array[i] = temp_array;
1860
+
1861
+ if ( !temp_array || !require_dimensions(temp_array, 3) ||
1862
+ !require_contiguous(temp_array) ||
1863
+ !require_native(temp_array) ||
1864
+ !PyArray_EquivTypenums(array_type(temp_array), DATA_TYPECODE)
1865
+ ) SWIG_fail;
1866
+
1867
+ /* store the size of the first array in the list, then use that for comparison. */
1868
+ if (i == 0)
1869
+ {
1870
+ size[0] = array_size(temp_array,0);
1871
+ size[1] = array_size(temp_array,1);
1872
+ size[2] = array_size(temp_array,2);
1873
+ }
1874
+
1875
+ if (!require_size(temp_array, size, 3)) SWIG_fail;
1876
+
1877
+ array[i] = (DATA_TYPE*) array_data(temp_array);
1878
+ }
1879
+
1880
+ $1 = (DATA_TYPE**) array;
1881
+ $3 = (DIM_TYPE) size[0];
1882
+ $4 = (DIM_TYPE) size[1];
1883
+ $5 = (DIM_TYPE) size[2];
1884
+ }
1885
+ %typemap(freearg)
1886
+ (DATA_TYPE** INPLACE_ARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1887
+ {
1888
+ if (array$argnum!=NULL) free(array$argnum);
1889
+ if (object_array$argnum!=NULL) free(object_array$argnum);
1890
+ }
1891
+
1892
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4,
1893
+ * DATA_TYPE* INPLACE_ARRAY4)
1894
+ */
1895
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1896
+ fragment="NumPy_Macros")
1897
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_ARRAY4)
1898
+ {
1899
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1900
+ DATA_TYPECODE);
1901
+ }
1902
+ %typemap(in,
1903
+ fragment="NumPy_Fragments")
1904
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_ARRAY4)
1905
+ (PyArrayObject* array=NULL)
1906
+ {
1907
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1908
+ if (!array || !require_dimensions(array,4) || !require_contiguous(array)
1909
+ || !require_native(array)) SWIG_fail;
1910
+ $1 = (DIM_TYPE) array_size(array,0);
1911
+ $2 = (DIM_TYPE) array_size(array,1);
1912
+ $3 = (DIM_TYPE) array_size(array,2);
1913
+ $4 = (DIM_TYPE) array_size(array,3);
1914
+ $5 = (DATA_TYPE*) array_data(array);
1915
+ }
1916
+
1917
+ /* Typemap suite for (DATA_TYPE* INPLACE_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2,
1918
+ * DIM_TYPE DIM3, DIM_TYPE DIM4)
1919
+ */
1920
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1921
+ fragment="NumPy_Macros")
1922
+ (DATA_TYPE* INPLACE_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1923
+ {
1924
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1925
+ DATA_TYPECODE);
1926
+ }
1927
+ %typemap(in,
1928
+ fragment="NumPy_Fragments")
1929
+ (DATA_TYPE* INPLACE_FARRAY4, DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4)
1930
+ (PyArrayObject* array=NULL)
1931
+ {
1932
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1933
+ if (!array || !require_dimensions(array,4) || !require_contiguous(array) ||
1934
+ !require_native(array) || !require_fortran(array)) SWIG_fail;
1935
+ $1 = (DATA_TYPE*) array_data(array);
1936
+ $2 = (DIM_TYPE) array_size(array,0);
1937
+ $3 = (DIM_TYPE) array_size(array,1);
1938
+ $4 = (DIM_TYPE) array_size(array,2);
1939
+ $5 = (DIM_TYPE) array_size(array,3);
1940
+ }
1941
+
1942
+ /* Typemap suite for (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3,
1943
+ * DATA_TYPE* INPLACE_FARRAY4)
1944
+ */
1945
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
1946
+ fragment="NumPy_Macros")
1947
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_FARRAY4)
1948
+ {
1949
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
1950
+ DATA_TYPECODE);
1951
+ }
1952
+ %typemap(in,
1953
+ fragment="NumPy_Fragments")
1954
+ (DIM_TYPE DIM1, DIM_TYPE DIM2, DIM_TYPE DIM3, DIM_TYPE DIM4, DATA_TYPE* INPLACE_FARRAY4)
1955
+ (PyArrayObject* array=NULL)
1956
+ {
1957
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
1958
+ if (!array || !require_dimensions(array,4) || !require_contiguous(array)
1959
+ || !require_native(array) || !require_fortran(array)) SWIG_fail;
1960
+ $1 = (DIM_TYPE) array_size(array,0);
1961
+ $2 = (DIM_TYPE) array_size(array,1);
1962
+ $3 = (DIM_TYPE) array_size(array,2);
1963
+ $4 = (DIM_TYPE) array_size(array,3);
1964
+ $5 = (DATA_TYPE*) array_data(array);
1965
+ }
1966
+
1967
+ /*************************/
1968
+ /* Argout Array Typemaps */
1969
+ /*************************/
1970
+
1971
+ /* Typemap suite for (DATA_TYPE ARGOUT_ARRAY1[ANY])
1972
+ */
1973
+ %typemap(in,numinputs=0,
1974
+ fragment="NumPy_Backward_Compatibility,NumPy_Macros")
1975
+ (DATA_TYPE ARGOUT_ARRAY1[ANY])
1976
+ (PyObject* array = NULL)
1977
+ {
1978
+ npy_intp dims[1] = { $1_dim0 };
1979
+ array = PyArray_SimpleNew(1, dims, DATA_TYPECODE);
1980
+ if (!array) SWIG_fail;
1981
+ $1 = ($1_ltype) array_data(array);
1982
+ }
1983
+ %typemap(argout)
1984
+ (DATA_TYPE ARGOUT_ARRAY1[ANY])
1985
+ {
1986
+ $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum);
1987
+ }
1988
+
1989
+ /* Typemap suite for (DATA_TYPE* ARGOUT_ARRAY1, DIM_TYPE DIM1)
1990
+ */
1991
+ %typemap(in,numinputs=1,
1992
+ fragment="NumPy_Fragments")
1993
+ (DATA_TYPE* ARGOUT_ARRAY1, DIM_TYPE DIM1)
1994
+ (PyObject* array = NULL)
1995
+ {
1996
+ npy_intp dims[1];
1997
+ if (!PyInt_Check($input))
1998
+ {
1999
+ const char* typestring = pytype_string($input);
2000
+ PyErr_Format(PyExc_TypeError,
2001
+ "Int dimension expected. '%s' given.",
2002
+ typestring);
2003
+ SWIG_fail;
2004
+ }
2005
+ $2 = (DIM_TYPE) PyInt_AsLong($input);
2006
+ dims[0] = (npy_intp) $2;
2007
+ array = PyArray_SimpleNew(1, dims, DATA_TYPECODE);
2008
+ if (!array) SWIG_fail;
2009
+ $1 = (DATA_TYPE*) array_data(array);
2010
+ }
2011
+ %typemap(argout)
2012
+ (DATA_TYPE* ARGOUT_ARRAY1, DIM_TYPE DIM1)
2013
+ {
2014
+ $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum);
2015
+ }
2016
+
2017
+ /* Typemap suite for (DIM_TYPE DIM1, DATA_TYPE* ARGOUT_ARRAY1)
2018
+ */
2019
+ %typemap(in,numinputs=1,
2020
+ fragment="NumPy_Fragments")
2021
+ (DIM_TYPE DIM1, DATA_TYPE* ARGOUT_ARRAY1)
2022
+ (PyObject* array = NULL)
2023
+ {
2024
+ npy_intp dims[1];
2025
+ if (!PyInt_Check($input))
2026
+ {
2027
+ const char* typestring = pytype_string($input);
2028
+ PyErr_Format(PyExc_TypeError,
2029
+ "Int dimension expected. '%s' given.",
2030
+ typestring);
2031
+ SWIG_fail;
2032
+ }
2033
+ $1 = (DIM_TYPE) PyInt_AsLong($input);
2034
+ dims[0] = (npy_intp) $1;
2035
+ array = PyArray_SimpleNew(1, dims, DATA_TYPECODE);
2036
+ if (!array) SWIG_fail;
2037
+ $2 = (DATA_TYPE*) array_data(array);
2038
+ }
2039
+ %typemap(argout)
2040
+ (DIM_TYPE DIM1, DATA_TYPE* ARGOUT_ARRAY1)
2041
+ {
2042
+ $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum);
2043
+ }
2044
+
2045
+ /* Typemap suite for (DATA_TYPE ARGOUT_ARRAY2[ANY][ANY])
2046
+ */
2047
+ %typemap(in,numinputs=0,
2048
+ fragment="NumPy_Backward_Compatibility,NumPy_Macros")
2049
+ (DATA_TYPE ARGOUT_ARRAY2[ANY][ANY])
2050
+ (PyObject* array = NULL)
2051
+ {
2052
+ npy_intp dims[2] = { $1_dim0, $1_dim1 };
2053
+ array = PyArray_SimpleNew(2, dims, DATA_TYPECODE);
2054
+ if (!array) SWIG_fail;
2055
+ $1 = ($1_ltype) array_data(array);
2056
+ }
2057
+ %typemap(argout)
2058
+ (DATA_TYPE ARGOUT_ARRAY2[ANY][ANY])
2059
+ {
2060
+ $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum);
2061
+ }
2062
+
2063
+ /* Typemap suite for (DATA_TYPE ARGOUT_ARRAY3[ANY][ANY][ANY])
2064
+ */
2065
+ %typemap(in,numinputs=0,
2066
+ fragment="NumPy_Backward_Compatibility,NumPy_Macros")
2067
+ (DATA_TYPE ARGOUT_ARRAY3[ANY][ANY][ANY])
2068
+ (PyObject* array = NULL)
2069
+ {
2070
+ npy_intp dims[3] = { $1_dim0, $1_dim1, $1_dim2 };
2071
+ array = PyArray_SimpleNew(3, dims, DATA_TYPECODE);
2072
+ if (!array) SWIG_fail;
2073
+ $1 = ($1_ltype) array_data(array);
2074
+ }
2075
+ %typemap(argout)
2076
+ (DATA_TYPE ARGOUT_ARRAY3[ANY][ANY][ANY])
2077
+ {
2078
+ $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum);
2079
+ }
2080
+
2081
+ /* Typemap suite for (DATA_TYPE ARGOUT_ARRAY4[ANY][ANY][ANY][ANY])
2082
+ */
2083
+ %typemap(in,numinputs=0,
2084
+ fragment="NumPy_Backward_Compatibility,NumPy_Macros")
2085
+ (DATA_TYPE ARGOUT_ARRAY4[ANY][ANY][ANY][ANY])
2086
+ (PyObject* array = NULL)
2087
+ {
2088
+ npy_intp dims[4] = { $1_dim0, $1_dim1, $1_dim2, $1_dim3 };
2089
+ array = PyArray_SimpleNew(4, dims, DATA_TYPECODE);
2090
+ if (!array) SWIG_fail;
2091
+ $1 = ($1_ltype) array_data(array);
2092
+ }
2093
+ %typemap(argout)
2094
+ (DATA_TYPE ARGOUT_ARRAY4[ANY][ANY][ANY][ANY])
2095
+ {
2096
+ $result = SWIG_Python_AppendOutput($result,(PyObject*)array$argnum);
2097
+ }
2098
+
2099
+ /*****************************/
2100
+ /* Argoutview Array Typemaps */
2101
+ /*****************************/
2102
+
2103
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEW_ARRAY1, DIM_TYPE* DIM1)
2104
+ */
2105
+ %typemap(in,numinputs=0)
2106
+ (DATA_TYPE** ARGOUTVIEW_ARRAY1, DIM_TYPE* DIM1 )
2107
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim_temp)
2108
+ {
2109
+ $1 = &data_temp;
2110
+ $2 = &dim_temp;
2111
+ }
2112
+ %typemap(argout,
2113
+ fragment="NumPy_Backward_Compatibility")
2114
+ (DATA_TYPE** ARGOUTVIEW_ARRAY1, DIM_TYPE* DIM1)
2115
+ {
2116
+ npy_intp dims[1] = { *$2 };
2117
+ PyObject* obj = PyArray_SimpleNewFromData(1, dims, DATA_TYPECODE, (void*)(*$1));
2118
+ PyArrayObject* array = (PyArrayObject*) obj;
2119
+
2120
+ if (!array) SWIG_fail;
2121
+ $result = SWIG_Python_AppendOutput($result,obj);
2122
+ }
2123
+
2124
+ /* Typemap suite for (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEW_ARRAY1)
2125
+ */
2126
+ %typemap(in,numinputs=0)
2127
+ (DIM_TYPE* DIM1 , DATA_TYPE** ARGOUTVIEW_ARRAY1)
2128
+ (DIM_TYPE dim_temp, DATA_TYPE* data_temp = NULL )
2129
+ {
2130
+ $1 = &dim_temp;
2131
+ $2 = &data_temp;
2132
+ }
2133
+ %typemap(argout,
2134
+ fragment="NumPy_Backward_Compatibility")
2135
+ (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEW_ARRAY1)
2136
+ {
2137
+ npy_intp dims[1] = { *$1 };
2138
+ PyObject* obj = PyArray_SimpleNewFromData(1, dims, DATA_TYPECODE, (void*)(*$2));
2139
+ PyArrayObject* array = (PyArrayObject*) obj;
2140
+
2141
+ if (!array) SWIG_fail;
2142
+ $result = SWIG_Python_AppendOutput($result,obj);
2143
+ }
2144
+
2145
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEW_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
2146
+ */
2147
+ %typemap(in,numinputs=0)
2148
+ (DATA_TYPE** ARGOUTVIEW_ARRAY2, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 )
2149
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp)
2150
+ {
2151
+ $1 = &data_temp;
2152
+ $2 = &dim1_temp;
2153
+ $3 = &dim2_temp;
2154
+ }
2155
+ %typemap(argout,
2156
+ fragment="NumPy_Backward_Compatibility")
2157
+ (DATA_TYPE** ARGOUTVIEW_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
2158
+ {
2159
+ npy_intp dims[2] = { *$2, *$3 };
2160
+ PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$1));
2161
+ PyArrayObject* array = (PyArrayObject*) obj;
2162
+
2163
+ if (!array) SWIG_fail;
2164
+ $result = SWIG_Python_AppendOutput($result,obj);
2165
+ }
2166
+
2167
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_ARRAY2)
2168
+ */
2169
+ %typemap(in,numinputs=0)
2170
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DATA_TYPE** ARGOUTVIEW_ARRAY2)
2171
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DATA_TYPE* data_temp = NULL )
2172
+ {
2173
+ $1 = &dim1_temp;
2174
+ $2 = &dim2_temp;
2175
+ $3 = &data_temp;
2176
+ }
2177
+ %typemap(argout,
2178
+ fragment="NumPy_Backward_Compatibility")
2179
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_ARRAY2)
2180
+ {
2181
+ npy_intp dims[2] = { *$1, *$2 };
2182
+ PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$3));
2183
+ PyArrayObject* array = (PyArrayObject*) obj;
2184
+
2185
+ if (!array) SWIG_fail;
2186
+ $result = SWIG_Python_AppendOutput($result,obj);
2187
+ }
2188
+
2189
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEW_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
2190
+ */
2191
+ %typemap(in,numinputs=0)
2192
+ (DATA_TYPE** ARGOUTVIEW_FARRAY2, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 )
2193
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp)
2194
+ {
2195
+ $1 = &data_temp;
2196
+ $2 = &dim1_temp;
2197
+ $3 = &dim2_temp;
2198
+ }
2199
+ %typemap(argout,
2200
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements")
2201
+ (DATA_TYPE** ARGOUTVIEW_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
2202
+ {
2203
+ npy_intp dims[2] = { *$2, *$3 };
2204
+ PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$1));
2205
+ PyArrayObject* array = (PyArrayObject*) obj;
2206
+
2207
+ if (!array || !require_fortran(array)) SWIG_fail;
2208
+ $result = SWIG_Python_AppendOutput($result,obj);
2209
+ }
2210
+
2211
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_FARRAY2)
2212
+ */
2213
+ %typemap(in,numinputs=0)
2214
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DATA_TYPE** ARGOUTVIEW_FARRAY2)
2215
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DATA_TYPE* data_temp = NULL )
2216
+ {
2217
+ $1 = &dim1_temp;
2218
+ $2 = &dim2_temp;
2219
+ $3 = &data_temp;
2220
+ }
2221
+ %typemap(argout,
2222
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements")
2223
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEW_FARRAY2)
2224
+ {
2225
+ npy_intp dims[2] = { *$1, *$2 };
2226
+ PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$3));
2227
+ PyArrayObject* array = (PyArrayObject*) obj;
2228
+
2229
+ if (!array || !require_fortran(array)) SWIG_fail;
2230
+ $result = SWIG_Python_AppendOutput($result,obj);
2231
+ }
2232
+
2233
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEW_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2234
+ DIM_TYPE* DIM3)
2235
+ */
2236
+ %typemap(in,numinputs=0)
2237
+ (DATA_TYPE** ARGOUTVIEW_ARRAY3, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 )
2238
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp)
2239
+ {
2240
+ $1 = &data_temp;
2241
+ $2 = &dim1_temp;
2242
+ $3 = &dim2_temp;
2243
+ $4 = &dim3_temp;
2244
+ }
2245
+ %typemap(argout,
2246
+ fragment="NumPy_Backward_Compatibility")
2247
+ (DATA_TYPE** ARGOUTVIEW_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
2248
+ {
2249
+ npy_intp dims[3] = { *$2, *$3, *$4 };
2250
+ PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$1));
2251
+ PyArrayObject* array = (PyArrayObject*) obj;
2252
+
2253
+ if (!array) SWIG_fail;
2254
+ $result = SWIG_Python_AppendOutput($result,obj);
2255
+ }
2256
+
2257
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3,
2258
+ DATA_TYPE** ARGOUTVIEW_ARRAY3)
2259
+ */
2260
+ %typemap(in,numinputs=0)
2261
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_ARRAY3)
2262
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DATA_TYPE* data_temp = NULL)
2263
+ {
2264
+ $1 = &dim1_temp;
2265
+ $2 = &dim2_temp;
2266
+ $3 = &dim3_temp;
2267
+ $4 = &data_temp;
2268
+ }
2269
+ %typemap(argout,
2270
+ fragment="NumPy_Backward_Compatibility")
2271
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_ARRAY3)
2272
+ {
2273
+ npy_intp dims[3] = { *$1, *$2, *$3 };
2274
+ PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$4));
2275
+ PyArrayObject* array = (PyArrayObject*) obj;
2276
+
2277
+ if (!array) SWIG_fail;
2278
+ $result = SWIG_Python_AppendOutput($result,obj);
2279
+ }
2280
+
2281
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEW_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2282
+ DIM_TYPE* DIM3)
2283
+ */
2284
+ %typemap(in,numinputs=0)
2285
+ (DATA_TYPE** ARGOUTVIEW_FARRAY3, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 )
2286
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp)
2287
+ {
2288
+ $1 = &data_temp;
2289
+ $2 = &dim1_temp;
2290
+ $3 = &dim2_temp;
2291
+ $4 = &dim3_temp;
2292
+ }
2293
+ %typemap(argout,
2294
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements")
2295
+ (DATA_TYPE** ARGOUTVIEW_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
2296
+ {
2297
+ npy_intp dims[3] = { *$2, *$3, *$4 };
2298
+ PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$1));
2299
+ PyArrayObject* array = (PyArrayObject*) obj;
2300
+
2301
+ if (!array || !require_fortran(array)) SWIG_fail;
2302
+ $result = SWIG_Python_AppendOutput($result,obj);
2303
+ }
2304
+
2305
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3,
2306
+ DATA_TYPE** ARGOUTVIEW_FARRAY3)
2307
+ */
2308
+ %typemap(in,numinputs=0)
2309
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DATA_TYPE** ARGOUTVIEW_FARRAY3)
2310
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DATA_TYPE* data_temp = NULL )
2311
+ {
2312
+ $1 = &dim1_temp;
2313
+ $2 = &dim2_temp;
2314
+ $3 = &dim3_temp;
2315
+ $4 = &data_temp;
2316
+ }
2317
+ %typemap(argout,
2318
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements")
2319
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEW_FARRAY3)
2320
+ {
2321
+ npy_intp dims[3] = { *$1, *$2, *$3 };
2322
+ PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$4));
2323
+ PyArrayObject* array = (PyArrayObject*) obj;
2324
+
2325
+ if (!array || !require_fortran(array)) SWIG_fail;
2326
+ $result = SWIG_Python_AppendOutput($result,obj);
2327
+ }
2328
+
2329
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEW_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2330
+ DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2331
+ */
2332
+ %typemap(in,numinputs=0)
2333
+ (DATA_TYPE** ARGOUTVIEW_ARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 )
2334
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp)
2335
+ {
2336
+ $1 = &data_temp;
2337
+ $2 = &dim1_temp;
2338
+ $3 = &dim2_temp;
2339
+ $4 = &dim3_temp;
2340
+ $5 = &dim4_temp;
2341
+ }
2342
+ %typemap(argout,
2343
+ fragment="NumPy_Backward_Compatibility")
2344
+ (DATA_TYPE** ARGOUTVIEW_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2345
+ {
2346
+ npy_intp dims[4] = { *$2, *$3, *$4 , *$5 };
2347
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1));
2348
+ PyArrayObject* array = (PyArrayObject*) obj;
2349
+
2350
+ if (!array) SWIG_fail;
2351
+ $result = SWIG_Python_AppendOutput($result,obj);
2352
+ }
2353
+
2354
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4,
2355
+ DATA_TYPE** ARGOUTVIEW_ARRAY4)
2356
+ */
2357
+ %typemap(in,numinputs=0)
2358
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEW_ARRAY4)
2359
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL )
2360
+ {
2361
+ $1 = &dim1_temp;
2362
+ $2 = &dim2_temp;
2363
+ $3 = &dim3_temp;
2364
+ $4 = &dim4_temp;
2365
+ $5 = &data_temp;
2366
+ }
2367
+ %typemap(argout,
2368
+ fragment="NumPy_Backward_Compatibility")
2369
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEW_ARRAY4)
2370
+ {
2371
+ npy_intp dims[4] = { *$1, *$2, *$3 , *$4 };
2372
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5));
2373
+ PyArrayObject* array = (PyArrayObject*) obj;
2374
+
2375
+ if (!array) SWIG_fail;
2376
+ $result = SWIG_Python_AppendOutput($result,obj);
2377
+ }
2378
+
2379
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEW_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2380
+ DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2381
+ */
2382
+ %typemap(in,numinputs=0)
2383
+ (DATA_TYPE** ARGOUTVIEW_FARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 )
2384
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp)
2385
+ {
2386
+ $1 = &data_temp;
2387
+ $2 = &dim1_temp;
2388
+ $3 = &dim2_temp;
2389
+ $4 = &dim3_temp;
2390
+ $5 = &dim4_temp;
2391
+ }
2392
+ %typemap(argout,
2393
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements")
2394
+ (DATA_TYPE** ARGOUTVIEW_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2395
+ {
2396
+ npy_intp dims[4] = { *$2, *$3, *$4 , *$5 };
2397
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1));
2398
+ PyArrayObject* array = (PyArrayObject*) obj;
2399
+
2400
+ if (!array || !require_fortran(array)) SWIG_fail;
2401
+ $result = SWIG_Python_AppendOutput($result,obj);
2402
+ }
2403
+
2404
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4,
2405
+ DATA_TYPE** ARGOUTVIEW_FARRAY4)
2406
+ */
2407
+ %typemap(in,numinputs=0)
2408
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEW_FARRAY4)
2409
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL )
2410
+ {
2411
+ $1 = &dim1_temp;
2412
+ $2 = &dim2_temp;
2413
+ $3 = &dim3_temp;
2414
+ $4 = &dim4_temp;
2415
+ $5 = &data_temp;
2416
+ }
2417
+ %typemap(argout,
2418
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements")
2419
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEW_FARRAY4)
2420
+ {
2421
+ npy_intp dims[4] = { *$1, *$2, *$3 , *$4 };
2422
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5));
2423
+ PyArrayObject* array = (PyArrayObject*) obj;
2424
+
2425
+ if (!array || !require_fortran(array)) SWIG_fail;
2426
+ $result = SWIG_Python_AppendOutput($result,obj);
2427
+ }
2428
+
2429
+ /*************************************/
2430
+ /* Managed Argoutview Array Typemaps */
2431
+ /*************************************/
2432
+
2433
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY1, DIM_TYPE* DIM1)
2434
+ */
2435
+ %typemap(in,numinputs=0)
2436
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY1, DIM_TYPE* DIM1 )
2437
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim_temp)
2438
+ {
2439
+ $1 = &data_temp;
2440
+ $2 = &dim_temp;
2441
+ }
2442
+ %typemap(argout,
2443
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2444
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY1, DIM_TYPE* DIM1)
2445
+ {
2446
+ npy_intp dims[1] = { *$2 };
2447
+ PyObject* obj = PyArray_SimpleNewFromData(1, dims, DATA_TYPECODE, (void*)(*$1));
2448
+ PyArrayObject* array = (PyArrayObject*) obj;
2449
+
2450
+ if (!array) SWIG_fail;
2451
+
2452
+ %#ifdef SWIGPY_USE_CAPSULE
2453
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2454
+ %#else
2455
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2456
+ %#endif
2457
+
2458
+ %#if NPY_API_VERSION < 0x00000007
2459
+ PyArray_BASE(array) = cap;
2460
+ %#else
2461
+ PyArray_SetBaseObject(array,cap);
2462
+ %#endif
2463
+
2464
+ $result = SWIG_Python_AppendOutput($result,obj);
2465
+ }
2466
+
2467
+ /* Typemap suite for (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEWM_ARRAY1)
2468
+ */
2469
+ %typemap(in,numinputs=0)
2470
+ (DIM_TYPE* DIM1 , DATA_TYPE** ARGOUTVIEWM_ARRAY1)
2471
+ (DIM_TYPE dim_temp, DATA_TYPE* data_temp = NULL )
2472
+ {
2473
+ $1 = &dim_temp;
2474
+ $2 = &data_temp;
2475
+ }
2476
+ %typemap(argout,
2477
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2478
+ (DIM_TYPE* DIM1, DATA_TYPE** ARGOUTVIEWM_ARRAY1)
2479
+ {
2480
+ npy_intp dims[1] = { *$1 };
2481
+ PyObject* obj = PyArray_SimpleNewFromData(1, dims, DATA_TYPECODE, (void*)(*$2));
2482
+ PyArrayObject* array = (PyArrayObject*) obj;
2483
+
2484
+ if (!array) SWIG_fail;
2485
+
2486
+ %#ifdef SWIGPY_USE_CAPSULE
2487
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2488
+ %#else
2489
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2490
+ %#endif
2491
+
2492
+ %#if NPY_API_VERSION < 0x00000007
2493
+ PyArray_BASE(array) = cap;
2494
+ %#else
2495
+ PyArray_SetBaseObject(array,cap);
2496
+ %#endif
2497
+
2498
+ $result = SWIG_Python_AppendOutput($result,obj);
2499
+ }
2500
+
2501
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
2502
+ */
2503
+ %typemap(in,numinputs=0)
2504
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY2, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 )
2505
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp)
2506
+ {
2507
+ $1 = &data_temp;
2508
+ $2 = &dim1_temp;
2509
+ $3 = &dim2_temp;
2510
+ }
2511
+ %typemap(argout,
2512
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2513
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
2514
+ {
2515
+ npy_intp dims[2] = { *$2, *$3 };
2516
+ PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$1));
2517
+ PyArrayObject* array = (PyArrayObject*) obj;
2518
+
2519
+ if (!array) SWIG_fail;
2520
+
2521
+ %#ifdef SWIGPY_USE_CAPSULE
2522
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2523
+ %#else
2524
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2525
+ %#endif
2526
+
2527
+ %#if NPY_API_VERSION < 0x00000007
2528
+ PyArray_BASE(array) = cap;
2529
+ %#else
2530
+ PyArray_SetBaseObject(array,cap);
2531
+ %#endif
2532
+
2533
+ $result = SWIG_Python_AppendOutput($result,obj);
2534
+ }
2535
+
2536
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_ARRAY2)
2537
+ */
2538
+ %typemap(in,numinputs=0)
2539
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DATA_TYPE** ARGOUTVIEWM_ARRAY2)
2540
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DATA_TYPE* data_temp = NULL )
2541
+ {
2542
+ $1 = &dim1_temp;
2543
+ $2 = &dim2_temp;
2544
+ $3 = &data_temp;
2545
+ }
2546
+ %typemap(argout,
2547
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2548
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_ARRAY2)
2549
+ {
2550
+ npy_intp dims[2] = { *$1, *$2 };
2551
+ PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$3));
2552
+ PyArrayObject* array = (PyArrayObject*) obj;
2553
+
2554
+ if (!array) SWIG_fail;
2555
+
2556
+ %#ifdef SWIGPY_USE_CAPSULE
2557
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2558
+ %#else
2559
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2560
+ %#endif
2561
+
2562
+ %#if NPY_API_VERSION < 0x00000007
2563
+ PyArray_BASE(array) = cap;
2564
+ %#else
2565
+ PyArray_SetBaseObject(array,cap);
2566
+ %#endif
2567
+
2568
+ $result = SWIG_Python_AppendOutput($result,obj);
2569
+ }
2570
+
2571
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
2572
+ */
2573
+ %typemap(in,numinputs=0)
2574
+ (DATA_TYPE** ARGOUTVIEWM_FARRAY2, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 )
2575
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp)
2576
+ {
2577
+ $1 = &data_temp;
2578
+ $2 = &dim1_temp;
2579
+ $3 = &dim2_temp;
2580
+ }
2581
+ %typemap(argout,
2582
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities")
2583
+ (DATA_TYPE** ARGOUTVIEWM_FARRAY2, DIM_TYPE* DIM1, DIM_TYPE* DIM2)
2584
+ {
2585
+ npy_intp dims[2] = { *$2, *$3 };
2586
+ PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$1));
2587
+ PyArrayObject* array = (PyArrayObject*) obj;
2588
+
2589
+ if (!array || !require_fortran(array)) SWIG_fail;
2590
+
2591
+ %#ifdef SWIGPY_USE_CAPSULE
2592
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2593
+ %#else
2594
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2595
+ %#endif
2596
+
2597
+ %#if NPY_API_VERSION < 0x00000007
2598
+ PyArray_BASE(array) = cap;
2599
+ %#else
2600
+ PyArray_SetBaseObject(array,cap);
2601
+ %#endif
2602
+
2603
+ $result = SWIG_Python_AppendOutput($result,obj);
2604
+ }
2605
+
2606
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_FARRAY2)
2607
+ */
2608
+ %typemap(in,numinputs=0)
2609
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DATA_TYPE** ARGOUTVIEWM_FARRAY2)
2610
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DATA_TYPE* data_temp = NULL )
2611
+ {
2612
+ $1 = &dim1_temp;
2613
+ $2 = &dim2_temp;
2614
+ $3 = &data_temp;
2615
+ }
2616
+ %typemap(argout,
2617
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities")
2618
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DATA_TYPE** ARGOUTVIEWM_FARRAY2)
2619
+ {
2620
+ npy_intp dims[2] = { *$1, *$2 };
2621
+ PyObject* obj = PyArray_SimpleNewFromData(2, dims, DATA_TYPECODE, (void*)(*$3));
2622
+ PyArrayObject* array = (PyArrayObject*) obj;
2623
+
2624
+ if (!array || !require_fortran(array)) SWIG_fail;
2625
+
2626
+ %#ifdef SWIGPY_USE_CAPSULE
2627
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2628
+ %#else
2629
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2630
+ %#endif
2631
+
2632
+ %#if NPY_API_VERSION < 0x00000007
2633
+ PyArray_BASE(array) = cap;
2634
+ %#else
2635
+ PyArray_SetBaseObject(array,cap);
2636
+ %#endif
2637
+
2638
+ $result = SWIG_Python_AppendOutput($result,obj);
2639
+ }
2640
+
2641
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2642
+ DIM_TYPE* DIM3)
2643
+ */
2644
+ %typemap(in,numinputs=0)
2645
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY3, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 )
2646
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp)
2647
+ {
2648
+ $1 = &data_temp;
2649
+ $2 = &dim1_temp;
2650
+ $3 = &dim2_temp;
2651
+ $4 = &dim3_temp;
2652
+ }
2653
+ %typemap(argout,
2654
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2655
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
2656
+ {
2657
+ npy_intp dims[3] = { *$2, *$3, *$4 };
2658
+ PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$1));
2659
+ PyArrayObject* array = (PyArrayObject*) obj;
2660
+
2661
+ if (!array) SWIG_fail;
2662
+
2663
+ %#ifdef SWIGPY_USE_CAPSULE
2664
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2665
+ %#else
2666
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2667
+ %#endif
2668
+
2669
+ %#if NPY_API_VERSION < 0x00000007
2670
+ PyArray_BASE(array) = cap;
2671
+ %#else
2672
+ PyArray_SetBaseObject(array,cap);
2673
+ %#endif
2674
+
2675
+ $result = SWIG_Python_AppendOutput($result,obj);
2676
+ }
2677
+
2678
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3,
2679
+ DATA_TYPE** ARGOUTVIEWM_ARRAY3)
2680
+ */
2681
+ %typemap(in,numinputs=0)
2682
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DATA_TYPE** ARGOUTVIEWM_ARRAY3)
2683
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DATA_TYPE* data_temp = NULL )
2684
+ {
2685
+ $1 = &dim1_temp;
2686
+ $2 = &dim2_temp;
2687
+ $3 = &dim3_temp;
2688
+ $4 = &data_temp;
2689
+ }
2690
+ %typemap(argout,
2691
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2692
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEWM_ARRAY3)
2693
+ {
2694
+ npy_intp dims[3] = { *$1, *$2, *$3 };
2695
+ PyObject* obj= PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$4));
2696
+ PyArrayObject* array = (PyArrayObject*) obj;
2697
+
2698
+ if (!array) SWIG_fail;
2699
+
2700
+ %#ifdef SWIGPY_USE_CAPSULE
2701
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2702
+ %#else
2703
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2704
+ %#endif
2705
+
2706
+ %#if NPY_API_VERSION < 0x00000007
2707
+ PyArray_BASE(array) = cap;
2708
+ %#else
2709
+ PyArray_SetBaseObject(array,cap);
2710
+ %#endif
2711
+
2712
+ $result = SWIG_Python_AppendOutput($result,obj);
2713
+ }
2714
+
2715
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2716
+ DIM_TYPE* DIM3)
2717
+ */
2718
+ %typemap(in,numinputs=0)
2719
+ (DATA_TYPE** ARGOUTVIEWM_FARRAY3, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 )
2720
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp)
2721
+ {
2722
+ $1 = &data_temp;
2723
+ $2 = &dim1_temp;
2724
+ $3 = &dim2_temp;
2725
+ $4 = &dim3_temp;
2726
+ }
2727
+ %typemap(argout,
2728
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities")
2729
+ (DATA_TYPE** ARGOUTVIEWM_FARRAY3, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
2730
+ {
2731
+ npy_intp dims[3] = { *$2, *$3, *$4 };
2732
+ PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$1));
2733
+ PyArrayObject* array = (PyArrayObject*) obj;
2734
+
2735
+ if (!array || !require_fortran(array)) SWIG_fail;
2736
+
2737
+ %#ifdef SWIGPY_USE_CAPSULE
2738
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2739
+ %#else
2740
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2741
+ %#endif
2742
+
2743
+ %#if NPY_API_VERSION < 0x00000007
2744
+ PyArray_BASE(array) = cap;
2745
+ %#else
2746
+ PyArray_SetBaseObject(array,cap);
2747
+ %#endif
2748
+
2749
+ $result = SWIG_Python_AppendOutput($result,obj);
2750
+ }
2751
+
2752
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3,
2753
+ DATA_TYPE** ARGOUTVIEWM_FARRAY3)
2754
+ */
2755
+ %typemap(in,numinputs=0)
2756
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DATA_TYPE** ARGOUTVIEWM_FARRAY3)
2757
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DATA_TYPE* data_temp = NULL )
2758
+ {
2759
+ $1 = &dim1_temp;
2760
+ $2 = &dim2_temp;
2761
+ $3 = &dim3_temp;
2762
+ $4 = &data_temp;
2763
+ }
2764
+ %typemap(argout,
2765
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities")
2766
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DATA_TYPE** ARGOUTVIEWM_FARRAY3)
2767
+ {
2768
+ npy_intp dims[3] = { *$1, *$2, *$3 };
2769
+ PyObject* obj = PyArray_SimpleNewFromData(3, dims, DATA_TYPECODE, (void*)(*$4));
2770
+ PyArrayObject* array = (PyArrayObject*) obj;
2771
+
2772
+ if (!array || !require_fortran(array)) SWIG_fail;
2773
+
2774
+ %#ifdef SWIGPY_USE_CAPSULE
2775
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2776
+ %#else
2777
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2778
+ %#endif
2779
+
2780
+ %#if NPY_API_VERSION < 0x00000007
2781
+ PyArray_BASE(array) = cap;
2782
+ %#else
2783
+ PyArray_SetBaseObject(array,cap);
2784
+ %#endif
2785
+
2786
+ $result = SWIG_Python_AppendOutput($result,obj);
2787
+ }
2788
+
2789
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2790
+ DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2791
+ */
2792
+ %typemap(in,numinputs=0)
2793
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 )
2794
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp)
2795
+ {
2796
+ $1 = &data_temp;
2797
+ $2 = &dim1_temp;
2798
+ $3 = &dim2_temp;
2799
+ $4 = &dim3_temp;
2800
+ $5 = &dim4_temp;
2801
+ }
2802
+ %typemap(argout,
2803
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2804
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2805
+ {
2806
+ npy_intp dims[4] = { *$2, *$3, *$4 , *$5 };
2807
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1));
2808
+ PyArrayObject* array = (PyArrayObject*) obj;
2809
+
2810
+ if (!array) SWIG_fail;
2811
+
2812
+ %#ifdef SWIGPY_USE_CAPSULE
2813
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2814
+ %#else
2815
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2816
+ %#endif
2817
+
2818
+ %#if NPY_API_VERSION < 0x00000007
2819
+ PyArray_BASE(array) = cap;
2820
+ %#else
2821
+ PyArray_SetBaseObject(array,cap);
2822
+ %#endif
2823
+
2824
+ $result = SWIG_Python_AppendOutput($result,obj);
2825
+ }
2826
+
2827
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4,
2828
+ DATA_TYPE** ARGOUTVIEWM_ARRAY4)
2829
+ */
2830
+ %typemap(in,numinputs=0)
2831
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEWM_ARRAY4)
2832
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL )
2833
+ {
2834
+ $1 = &dim1_temp;
2835
+ $2 = &dim2_temp;
2836
+ $3 = &dim3_temp;
2837
+ $4 = &dim4_temp;
2838
+ $5 = &data_temp;
2839
+ }
2840
+ %typemap(argout,
2841
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2842
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_ARRAY4)
2843
+ {
2844
+ npy_intp dims[4] = { *$1, *$2, *$3 , *$4 };
2845
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5));
2846
+ PyArrayObject* array = (PyArrayObject*) obj;
2847
+
2848
+ if (!array) SWIG_fail;
2849
+
2850
+ %#ifdef SWIGPY_USE_CAPSULE
2851
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2852
+ %#else
2853
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2854
+ %#endif
2855
+
2856
+ %#if NPY_API_VERSION < 0x00000007
2857
+ PyArray_BASE(array) = cap;
2858
+ %#else
2859
+ PyArray_SetBaseObject(array,cap);
2860
+ %#endif
2861
+
2862
+ $result = SWIG_Python_AppendOutput($result,obj);
2863
+ }
2864
+
2865
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2866
+ DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2867
+ */
2868
+ %typemap(in,numinputs=0)
2869
+ (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 )
2870
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp)
2871
+ {
2872
+ $1 = &data_temp;
2873
+ $2 = &dim1_temp;
2874
+ $3 = &dim2_temp;
2875
+ $4 = &dim3_temp;
2876
+ $5 = &dim4_temp;
2877
+ }
2878
+ %typemap(argout,
2879
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities")
2880
+ (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3)
2881
+ {
2882
+ npy_intp dims[4] = { *$2, *$3, *$4 , *$5 };
2883
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1));
2884
+ PyArrayObject* array = (PyArrayObject*) obj;
2885
+
2886
+ if (!array || !require_fortran(array)) SWIG_fail;
2887
+
2888
+ %#ifdef SWIGPY_USE_CAPSULE
2889
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2890
+ %#else
2891
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2892
+ %#endif
2893
+
2894
+ %#if NPY_API_VERSION < 0x00000007
2895
+ PyArray_BASE(array) = cap;
2896
+ %#else
2897
+ PyArray_SetBaseObject(array,cap);
2898
+ %#endif
2899
+
2900
+ $result = SWIG_Python_AppendOutput($result,obj);
2901
+ }
2902
+
2903
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4,
2904
+ DATA_TYPE** ARGOUTVIEWM_FARRAY4)
2905
+ */
2906
+ %typemap(in,numinputs=0)
2907
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEWM_FARRAY4)
2908
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL )
2909
+ {
2910
+ $1 = &dim1_temp;
2911
+ $2 = &dim2_temp;
2912
+ $3 = &dim3_temp;
2913
+ $4 = &dim4_temp;
2914
+ $5 = &data_temp;
2915
+ }
2916
+ %typemap(argout,
2917
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities")
2918
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_FARRAY4)
2919
+ {
2920
+ npy_intp dims[4] = { *$1, *$2, *$3 , *$4 };
2921
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5));
2922
+ PyArrayObject* array = (PyArrayObject*) obj;
2923
+
2924
+ if (!array || !require_fortran(array)) SWIG_fail;
2925
+
2926
+ %#ifdef SWIGPY_USE_CAPSULE
2927
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2928
+ %#else
2929
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2930
+ %#endif
2931
+
2932
+ %#if NPY_API_VERSION < 0x00000007
2933
+ PyArray_BASE(array) = cap;
2934
+ %#else
2935
+ PyArray_SetBaseObject(array,cap);
2936
+ %#endif
2937
+
2938
+ $result = SWIG_Python_AppendOutput($result,obj);
2939
+ }
2940
+
2941
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
2942
+ DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2943
+ */
2944
+ %typemap(in,numinputs=0)
2945
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 )
2946
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp)
2947
+ {
2948
+ $1 = &data_temp;
2949
+ $2 = &dim1_temp;
2950
+ $3 = &dim2_temp;
2951
+ $4 = &dim3_temp;
2952
+ $5 = &dim4_temp;
2953
+ }
2954
+ %typemap(argout,
2955
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2956
+ (DATA_TYPE** ARGOUTVIEWM_ARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
2957
+ {
2958
+ npy_intp dims[4] = { *$2, *$3, *$4 , *$5 };
2959
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1));
2960
+ PyArrayObject* array = (PyArrayObject*) obj;
2961
+
2962
+ if (!array) SWIG_fail;
2963
+
2964
+ %#ifdef SWIGPY_USE_CAPSULE
2965
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
2966
+ %#else
2967
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
2968
+ %#endif
2969
+
2970
+ %#if NPY_API_VERSION < 0x00000007
2971
+ PyArray_BASE(array) = cap;
2972
+ %#else
2973
+ PyArray_SetBaseObject(array,cap);
2974
+ %#endif
2975
+
2976
+ $result = SWIG_Python_AppendOutput($result,obj);
2977
+ }
2978
+
2979
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4,
2980
+ DATA_TYPE** ARGOUTVIEWM_ARRAY4)
2981
+ */
2982
+ %typemap(in,numinputs=0)
2983
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEWM_ARRAY4)
2984
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL )
2985
+ {
2986
+ $1 = &dim1_temp;
2987
+ $2 = &dim2_temp;
2988
+ $3 = &dim3_temp;
2989
+ $4 = &dim4_temp;
2990
+ $5 = &data_temp;
2991
+ }
2992
+ %typemap(argout,
2993
+ fragment="NumPy_Backward_Compatibility,NumPy_Utilities")
2994
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_ARRAY4)
2995
+ {
2996
+ npy_intp dims[4] = { *$1, *$2, *$3 , *$4 };
2997
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5));
2998
+ PyArrayObject* array = (PyArrayObject*) obj;
2999
+
3000
+ if (!array) SWIG_fail;
3001
+
3002
+ %#ifdef SWIGPY_USE_CAPSULE
3003
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
3004
+ %#else
3005
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
3006
+ %#endif
3007
+
3008
+ %#if NPY_API_VERSION < 0x00000007
3009
+ PyArray_BASE(array) = cap;
3010
+ %#else
3011
+ PyArray_SetBaseObject(array,cap);
3012
+ %#endif
3013
+
3014
+ $result = SWIG_Python_AppendOutput($result,obj);
3015
+ }
3016
+
3017
+ /* Typemap suite for (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2,
3018
+ DIM_TYPE* DIM3, DIM_TYPE* DIM4)
3019
+ */
3020
+ %typemap(in,numinputs=0)
3021
+ (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 )
3022
+ (DATA_TYPE* data_temp = NULL , DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp)
3023
+ {
3024
+ $1 = &data_temp;
3025
+ $2 = &dim1_temp;
3026
+ $3 = &dim2_temp;
3027
+ $4 = &dim3_temp;
3028
+ $5 = &dim4_temp;
3029
+ }
3030
+ %typemap(argout,
3031
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities")
3032
+ (DATA_TYPE** ARGOUTVIEWM_FARRAY4, DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4)
3033
+ {
3034
+ npy_intp dims[4] = { *$2, *$3, *$4 , *$5 };
3035
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$1));
3036
+ PyArrayObject* array = (PyArrayObject*) obj;
3037
+
3038
+ if (!array || !require_fortran(array)) SWIG_fail;
3039
+
3040
+ %#ifdef SWIGPY_USE_CAPSULE
3041
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
3042
+ %#else
3043
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
3044
+ %#endif
3045
+
3046
+ %#if NPY_API_VERSION < 0x00000007
3047
+ PyArray_BASE(array) = cap;
3048
+ %#else
3049
+ PyArray_SetBaseObject(array,cap);
3050
+ %#endif
3051
+
3052
+ $result = SWIG_Python_AppendOutput($result,obj);
3053
+ }
3054
+
3055
+ /* Typemap suite for (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4,
3056
+ DATA_TYPE** ARGOUTVIEWM_FARRAY4)
3057
+ */
3058
+ %typemap(in,numinputs=0)
3059
+ (DIM_TYPE* DIM1 , DIM_TYPE* DIM2 , DIM_TYPE* DIM3 , DIM_TYPE* DIM4 , DATA_TYPE** ARGOUTVIEWM_FARRAY4)
3060
+ (DIM_TYPE dim1_temp, DIM_TYPE dim2_temp, DIM_TYPE dim3_temp, DIM_TYPE dim4_temp, DATA_TYPE* data_temp = NULL )
3061
+ {
3062
+ $1 = &dim1_temp;
3063
+ $2 = &dim2_temp;
3064
+ $3 = &dim3_temp;
3065
+ $4 = &dim4_temp;
3066
+ $5 = &data_temp;
3067
+ }
3068
+ %typemap(argout,
3069
+ fragment="NumPy_Backward_Compatibility,NumPy_Array_Requirements,NumPy_Utilities")
3070
+ (DIM_TYPE* DIM1, DIM_TYPE* DIM2, DIM_TYPE* DIM3, DIM_TYPE* DIM4, DATA_TYPE** ARGOUTVIEWM_FARRAY4)
3071
+ {
3072
+ npy_intp dims[4] = { *$1, *$2, *$3 , *$4 };
3073
+ PyObject* obj = PyArray_SimpleNewFromData(4, dims, DATA_TYPECODE, (void*)(*$5));
3074
+ PyArrayObject* array = (PyArrayObject*) obj;
3075
+
3076
+ if (!array || !require_fortran(array)) SWIG_fail;
3077
+
3078
+ %#ifdef SWIGPY_USE_CAPSULE
3079
+ PyObject* cap = PyCapsule_New((void*)(*$1), SWIGPY_CAPSULE_NAME, free_cap);
3080
+ %#else
3081
+ PyObject* cap = PyCObject_FromVoidPtr((void*)(*$1), free);
3082
+ %#endif
3083
+
3084
+ %#if NPY_API_VERSION < 0x00000007
3085
+ PyArray_BASE(array) = cap;
3086
+ %#else
3087
+ PyArray_SetBaseObject(array,cap);
3088
+ %#endif
3089
+
3090
+ $result = SWIG_Python_AppendOutput($result,obj);
3091
+ }
3092
+
3093
+ /**************************************/
3094
+ /* In-Place Array Typemap - flattened */
3095
+ /**************************************/
3096
+
3097
+ /* Typemap suite for (DATA_TYPE* INPLACE_ARRAY_FLAT, DIM_TYPE DIM_FLAT)
3098
+ */
3099
+ %typecheck(SWIG_TYPECHECK_DOUBLE_ARRAY,
3100
+ fragment="NumPy_Macros")
3101
+ (DATA_TYPE* INPLACE_ARRAY_FLAT, DIM_TYPE DIM_FLAT)
3102
+ {
3103
+ $1 = is_array($input) && PyArray_EquivTypenums(array_type($input),
3104
+ DATA_TYPECODE);
3105
+ }
3106
+ %typemap(in,
3107
+ fragment="NumPy_Fragments")
3108
+ (DATA_TYPE* INPLACE_ARRAY_FLAT, DIM_TYPE DIM_FLAT)
3109
+ (PyArrayObject* array=NULL, int i=1)
3110
+ {
3111
+ array = obj_to_array_no_conversion($input, DATA_TYPECODE);
3112
+ if (!array || !require_c_or_f_contiguous(array)
3113
+ || !require_native(array)) SWIG_fail;
3114
+ $1 = (DATA_TYPE*) array_data(array);
3115
+ $2 = 1;
3116
+ for (i=0; i < array_numdims(array); ++i) $2 *= array_size(array,i);
3117
+ }
3118
+
3119
+ %enddef /* %numpy_typemaps() macro */
3120
+ /* *************************************************************** */
3121
+
3122
+ /* Concrete instances of the %numpy_typemaps() macro: Each invocation
3123
+ * below applies all of the typemaps above to the specified data type.
3124
+ */
3125
+ %numpy_typemaps(signed char , NPY_BYTE , int)
3126
+ %numpy_typemaps(unsigned char , NPY_UBYTE , int)
3127
+ %numpy_typemaps(short , NPY_SHORT , int)
3128
+ %numpy_typemaps(unsigned short , NPY_USHORT , int)
3129
+ %numpy_typemaps(int , NPY_INT , int)
3130
+ %numpy_typemaps(unsigned int , NPY_UINT , int)
3131
+ %numpy_typemaps(long , NPY_LONG , int)
3132
+ %numpy_typemaps(unsigned long , NPY_ULONG , int)
3133
+ %numpy_typemaps(long long , NPY_LONGLONG , int)
3134
+ %numpy_typemaps(unsigned long long, NPY_ULONGLONG, int)
3135
+ %numpy_typemaps(float , NPY_FLOAT , int)
3136
+ %numpy_typemaps(double , NPY_DOUBLE , int)
3137
+
3138
+ /* ***************************************************************
3139
+ * The follow macro expansion does not work, because C++ bool is 4
3140
+ * bytes and NPY_BOOL is 1 byte
3141
+ *
3142
+ * %numpy_typemaps(bool, NPY_BOOL, int)
3143
+ */
3144
+
3145
+ /* ***************************************************************
3146
+ * On my Mac, I get the following warning for this macro expansion:
3147
+ * 'swig/python detected a memory leak of type 'long double *', no destructor found.'
3148
+ *
3149
+ * %numpy_typemaps(long double, NPY_LONGDOUBLE, int)
3150
+ */
3151
+
3152
+ #ifdef __cplusplus
3153
+
3154
+ %include <std_complex.i>
3155
+
3156
+ %numpy_typemaps(std::complex<float>, NPY_CFLOAT , int)
3157
+ %numpy_typemaps(std::complex<double>, NPY_CDOUBLE, int)
3158
+
3159
+ #endif
3160
+
3161
+ #endif /* SWIGPYTHON */