summaryrefslogtreecommitdiff
path: root/doc/numpybook/comparison/pyrex
diff options
context:
space:
mode:
Diffstat (limited to 'doc/numpybook/comparison/pyrex')
-rw-r--r--doc/numpybook/comparison/pyrex/add.c560
-rw-r--r--doc/numpybook/comparison/pyrex/add.pyx75
-rw-r--r--doc/numpybook/comparison/pyrex/c_numpy.pxd107
-rw-r--r--doc/numpybook/comparison/pyrex/filter.c388
-rw-r--r--doc/numpybook/comparison/pyrex/filter.pyx44
-rw-r--r--doc/numpybook/comparison/pyrex/setup.py30
-rwxr-xr-xdoc/numpybook/comparison/pyrex/timeme2
7 files changed, 0 insertions, 1206 deletions
diff --git a/doc/numpybook/comparison/pyrex/add.c b/doc/numpybook/comparison/pyrex/add.c
deleted file mode 100644
index d5e3bd725..000000000
--- a/doc/numpybook/comparison/pyrex/add.c
+++ /dev/null
@@ -1,560 +0,0 @@
-/* Generated by Pyrex 0.9.4.1 on Thu Aug 17 02:11:41 2006 */
-
-#include "Python.h"
-#include "structmember.h"
-#ifndef PY_LONG_LONG
- #define PY_LONG_LONG LONG_LONG
-#endif
-#ifdef __cplusplus
-#define __PYX_EXTERN_C extern "C"
-#else
-#define __PYX_EXTERN_C extern
-#endif
-__PYX_EXTERN_C double pow(double, double);
-#include "numpy/arrayobject.h"
-
-
-typedef struct {PyObject **p; char *s;} __Pyx_InternTabEntry; /*proto*/
-typedef struct {PyObject **p; char *s; long n;} __Pyx_StringTabEntry; /*proto*/
-static PyObject *__Pyx_UnpackItem(PyObject *, int); /*proto*/
-static int __Pyx_EndUnpack(PyObject *, int); /*proto*/
-static int __Pyx_PrintItem(PyObject *); /*proto*/
-static int __Pyx_PrintNewline(void); /*proto*/
-static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
-static void __Pyx_ReRaise(void); /*proto*/
-static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list); /*proto*/
-static PyObject *__Pyx_GetExcValue(void); /*proto*/
-static int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed, char *name); /*proto*/
-static int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); /*proto*/
-static int __Pyx_GetStarArgs(PyObject **args, PyObject **kwds, char *kwd_list[], int nargs, PyObject **args2, PyObject **kwds2); /*proto*/
-static void __Pyx_WriteUnraisable(char *name); /*proto*/
-static void __Pyx_AddTraceback(char *funcname); /*proto*/
-static PyTypeObject *__Pyx_ImportType(char *module_name, char *class_name, long size); /*proto*/
-static int __Pyx_SetVtable(PyObject *dict, void *vtable); /*proto*/
-static int __Pyx_GetVtable(PyObject *dict, void *vtabptr); /*proto*/
-static PyObject *__Pyx_CreateClass(PyObject *bases, PyObject *dict, PyObject *name, char *modname); /*proto*/
-static int __Pyx_InternStrings(__Pyx_InternTabEntry *t); /*proto*/
-static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/
-static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/
-
-static PyObject *__pyx_m;
-static PyObject *__pyx_b;
-static int __pyx_lineno;
-static char *__pyx_filename;
-static char **__pyx_f;
-
-/* Declarations from c_numpy */
-
-static PyTypeObject *__pyx_ptype_7c_numpy_dtype = 0;
-static PyTypeObject *__pyx_ptype_7c_numpy_ndarray = 0;
-
-/* Declarations from add */
-
-
-/* Implementation of add */
-
-static PyObject *__pyx_n_c_numpy;
-static PyObject *__pyx_n_zadd;
-static PyObject *__pyx_n_cadd;
-static PyObject *__pyx_n_dadd;
-static PyObject *__pyx_n_sadd;
-
-static PyObject *__pyx_f_3add_zadd(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static PyObject *__pyx_f_3add_zadd(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_ao = 0;
- PyObject *__pyx_v_bo = 0;
- PyArrayObject *__pyx_v_c;
- PyArrayObject *__pyx_v_a;
- PyArrayObject *__pyx_v_b;
- npy_intp __pyx_v_i;
- PyObject *__pyx_r;
- PyObject *__pyx_1 = 0;
- npy_intp __pyx_2;
- static char *__pyx_argnames[] = {"ao","bo",0};
- if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OO", __pyx_argnames, &__pyx_v_ao, &__pyx_v_bo)) return 0;
- Py_INCREF(__pyx_v_ao);
- Py_INCREF(__pyx_v_bo);
- __pyx_v_c = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_a = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_b = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":15 */
- __pyx_1 = PyArray_ContiguousFromAny(__pyx_v_ao,NPY_CDOUBLE,1,1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_a));
- __pyx_v_a = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":16 */
- __pyx_1 = PyArray_ContiguousFromAny(__pyx_v_bo,NPY_CDOUBLE,1,1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_b));
- __pyx_v_b = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":18 */
- __pyx_1 = PyArray_SimpleNew(__pyx_v_a->nd,__pyx_v_a->dimensions,__pyx_v_a->descr->type_num); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_c));
- __pyx_v_c = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":21 */
- __pyx_2 = (__pyx_v_a->dimensions[0]);
- for (__pyx_v_i = 0; __pyx_v_i < __pyx_2; ++__pyx_v_i) {
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":22 */
- (((npy_cdouble (*))__pyx_v_c->data)[__pyx_v_i]).real = ((((npy_cdouble (*))__pyx_v_a->data)[__pyx_v_i]).real + (((npy_cdouble (*))__pyx_v_b->data)[__pyx_v_i]).real);
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":24 */
- (((npy_cdouble (*))__pyx_v_c->data)[__pyx_v_i]).imag = ((((npy_cdouble (*))__pyx_v_a->data)[__pyx_v_i]).imag + (((npy_cdouble (*))__pyx_v_b->data)[__pyx_v_i]).imag);
- __pyx_L2:;
- }
- __pyx_L3:;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":26 */
- Py_INCREF(((PyObject *)__pyx_v_c));
- __pyx_r = ((PyObject *)__pyx_v_c);
- goto __pyx_L0;
-
- __pyx_r = Py_None; Py_INCREF(Py_None);
- goto __pyx_L0;
- __pyx_L1:;
- Py_XDECREF(__pyx_1);
- __Pyx_AddTraceback("add.zadd");
- __pyx_r = 0;
- __pyx_L0:;
- Py_DECREF(__pyx_v_c);
- Py_DECREF(__pyx_v_a);
- Py_DECREF(__pyx_v_b);
- Py_DECREF(__pyx_v_ao);
- Py_DECREF(__pyx_v_bo);
- return __pyx_r;
-}
-
-static PyObject *__pyx_f_3add_cadd(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static PyObject *__pyx_f_3add_cadd(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_ao = 0;
- PyObject *__pyx_v_bo = 0;
- PyArrayObject *__pyx_v_c;
- PyArrayObject *__pyx_v_a;
- PyArrayObject *__pyx_v_b;
- npy_intp __pyx_v_i;
- PyObject *__pyx_r;
- PyObject *__pyx_1 = 0;
- npy_intp __pyx_2;
- static char *__pyx_argnames[] = {"ao","bo",0};
- if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OO", __pyx_argnames, &__pyx_v_ao, &__pyx_v_bo)) return 0;
- Py_INCREF(__pyx_v_ao);
- Py_INCREF(__pyx_v_bo);
- __pyx_v_c = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_a = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_b = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":32 */
- __pyx_1 = PyArray_ContiguousFromAny(__pyx_v_ao,NPY_CFLOAT,1,1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_a));
- __pyx_v_a = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":33 */
- __pyx_1 = PyArray_ContiguousFromAny(__pyx_v_bo,NPY_CFLOAT,1,1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_b));
- __pyx_v_b = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":35 */
- __pyx_1 = PyArray_SimpleNew(__pyx_v_a->nd,__pyx_v_a->dimensions,__pyx_v_a->descr->type_num); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_c));
- __pyx_v_c = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":38 */
- __pyx_2 = (__pyx_v_a->dimensions[0]);
- for (__pyx_v_i = 0; __pyx_v_i < __pyx_2; ++__pyx_v_i) {
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":39 */
- (((npy_cfloat (*))__pyx_v_c->data)[__pyx_v_i]).real = ((((npy_cfloat (*))__pyx_v_a->data)[__pyx_v_i]).real + (((npy_cfloat (*))__pyx_v_b->data)[__pyx_v_i]).real);
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":41 */
- (((npy_cfloat (*))__pyx_v_c->data)[__pyx_v_i]).imag = ((((npy_cfloat (*))__pyx_v_a->data)[__pyx_v_i]).imag + (((npy_cfloat (*))__pyx_v_b->data)[__pyx_v_i]).imag);
- __pyx_L2:;
- }
- __pyx_L3:;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":43 */
- Py_INCREF(((PyObject *)__pyx_v_c));
- __pyx_r = ((PyObject *)__pyx_v_c);
- goto __pyx_L0;
-
- __pyx_r = Py_None; Py_INCREF(Py_None);
- goto __pyx_L0;
- __pyx_L1:;
- Py_XDECREF(__pyx_1);
- __Pyx_AddTraceback("add.cadd");
- __pyx_r = 0;
- __pyx_L0:;
- Py_DECREF(__pyx_v_c);
- Py_DECREF(__pyx_v_a);
- Py_DECREF(__pyx_v_b);
- Py_DECREF(__pyx_v_ao);
- Py_DECREF(__pyx_v_bo);
- return __pyx_r;
-}
-
-static PyObject *__pyx_f_3add_dadd(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static PyObject *__pyx_f_3add_dadd(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_ao = 0;
- PyObject *__pyx_v_bo = 0;
- PyArrayObject *__pyx_v_c;
- PyArrayObject *__pyx_v_a;
- PyArrayObject *__pyx_v_b;
- npy_intp __pyx_v_i;
- PyObject *__pyx_r;
- PyObject *__pyx_1 = 0;
- npy_intp __pyx_2;
- static char *__pyx_argnames[] = {"ao","bo",0};
- if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OO", __pyx_argnames, &__pyx_v_ao, &__pyx_v_bo)) return 0;
- Py_INCREF(__pyx_v_ao);
- Py_INCREF(__pyx_v_bo);
- __pyx_v_c = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_a = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_b = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":50 */
- __pyx_1 = PyArray_ContiguousFromAny(__pyx_v_ao,NPY_DOUBLE,1,1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_a));
- __pyx_v_a = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":51 */
- __pyx_1 = PyArray_ContiguousFromAny(__pyx_v_bo,NPY_DOUBLE,1,1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_b));
- __pyx_v_b = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":53 */
- __pyx_1 = PyArray_SimpleNew(__pyx_v_a->nd,__pyx_v_a->dimensions,__pyx_v_a->descr->type_num); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_c));
- __pyx_v_c = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":56 */
- __pyx_2 = (__pyx_v_a->dimensions[0]);
- for (__pyx_v_i = 0; __pyx_v_i < __pyx_2; ++__pyx_v_i) {
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":57 */
- (((double (*))__pyx_v_c->data)[__pyx_v_i]) = ((((double (*))__pyx_v_a->data)[__pyx_v_i]) + (((double (*))__pyx_v_b->data)[__pyx_v_i]));
- __pyx_L2:;
- }
- __pyx_L3:;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":59 */
- Py_INCREF(((PyObject *)__pyx_v_c));
- __pyx_r = ((PyObject *)__pyx_v_c);
- goto __pyx_L0;
-
- __pyx_r = Py_None; Py_INCREF(Py_None);
- goto __pyx_L0;
- __pyx_L1:;
- Py_XDECREF(__pyx_1);
- __Pyx_AddTraceback("add.dadd");
- __pyx_r = 0;
- __pyx_L0:;
- Py_DECREF(__pyx_v_c);
- Py_DECREF(__pyx_v_a);
- Py_DECREF(__pyx_v_b);
- Py_DECREF(__pyx_v_ao);
- Py_DECREF(__pyx_v_bo);
- return __pyx_r;
-}
-
-static PyObject *__pyx_f_3add_sadd(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static PyObject *__pyx_f_3add_sadd(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_ao = 0;
- PyObject *__pyx_v_bo = 0;
- PyArrayObject *__pyx_v_c;
- PyArrayObject *__pyx_v_a;
- PyArrayObject *__pyx_v_b;
- npy_intp __pyx_v_i;
- PyObject *__pyx_r;
- PyObject *__pyx_1 = 0;
- npy_intp __pyx_2;
- static char *__pyx_argnames[] = {"ao","bo",0};
- if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "OO", __pyx_argnames, &__pyx_v_ao, &__pyx_v_bo)) return 0;
- Py_INCREF(__pyx_v_ao);
- Py_INCREF(__pyx_v_bo);
- __pyx_v_c = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_a = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_b = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":66 */
- __pyx_1 = PyArray_ContiguousFromAny(__pyx_v_ao,NPY_FLOAT,1,1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_a));
- __pyx_v_a = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":67 */
- __pyx_1 = PyArray_ContiguousFromAny(__pyx_v_bo,NPY_FLOAT,1,1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_b));
- __pyx_v_b = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":69 */
- __pyx_1 = PyArray_SimpleNew(__pyx_v_a->nd,__pyx_v_a->dimensions,__pyx_v_a->descr->type_num); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_c));
- __pyx_v_c = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":72 */
- __pyx_2 = (__pyx_v_a->dimensions[0]);
- for (__pyx_v_i = 0; __pyx_v_i < __pyx_2; ++__pyx_v_i) {
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":73 */
- (((float (*))__pyx_v_c->data)[__pyx_v_i]) = ((((float (*))__pyx_v_a->data)[__pyx_v_i]) + (((float (*))__pyx_v_b->data)[__pyx_v_i]));
- __pyx_L2:;
- }
- __pyx_L3:;
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":75 */
- Py_INCREF(((PyObject *)__pyx_v_c));
- __pyx_r = ((PyObject *)__pyx_v_c);
- goto __pyx_L0;
-
- __pyx_r = Py_None; Py_INCREF(Py_None);
- goto __pyx_L0;
- __pyx_L1:;
- Py_XDECREF(__pyx_1);
- __Pyx_AddTraceback("add.sadd");
- __pyx_r = 0;
- __pyx_L0:;
- Py_DECREF(__pyx_v_c);
- Py_DECREF(__pyx_v_a);
- Py_DECREF(__pyx_v_b);
- Py_DECREF(__pyx_v_ao);
- Py_DECREF(__pyx_v_bo);
- return __pyx_r;
-}
-
-static __Pyx_InternTabEntry __pyx_intern_tab[] = {
- {&__pyx_n_c_numpy, "c_numpy"},
- {&__pyx_n_cadd, "cadd"},
- {&__pyx_n_dadd, "dadd"},
- {&__pyx_n_sadd, "sadd"},
- {&__pyx_n_zadd, "zadd"},
- {0, 0}
-};
-
-static struct PyMethodDef __pyx_methods[] = {
- {"zadd", (PyCFunction)__pyx_f_3add_zadd, METH_VARARGS|METH_KEYWORDS, 0},
- {"cadd", (PyCFunction)__pyx_f_3add_cadd, METH_VARARGS|METH_KEYWORDS, 0},
- {"dadd", (PyCFunction)__pyx_f_3add_dadd, METH_VARARGS|METH_KEYWORDS, 0},
- {"sadd", (PyCFunction)__pyx_f_3add_sadd, METH_VARARGS|METH_KEYWORDS, 0},
- {0, 0, 0, 0}
-};
-
-static void __pyx_init_filenames(void); /*proto*/
-
-PyMODINIT_FUNC initadd(void); /*proto*/
-PyMODINIT_FUNC initadd(void) {
- __pyx_init_filenames();
- __pyx_m = Py_InitModule4("add", __pyx_methods, 0, 0, PYTHON_API_VERSION);
- if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; goto __pyx_L1;};
- __pyx_b = PyImport_AddModule("__builtin__");
- if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; goto __pyx_L1;};
- if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; goto __pyx_L1;};
- if (__Pyx_InternStrings(__pyx_intern_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; goto __pyx_L1;};
- __pyx_ptype_7c_numpy_dtype = __Pyx_ImportType("numpy", "dtype", sizeof(PyArray_Descr)); if (!__pyx_ptype_7c_numpy_dtype) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 74; goto __pyx_L1;}
- __pyx_ptype_7c_numpy_ndarray = __Pyx_ImportType("numpy", "ndarray", sizeof(PyArrayObject)); if (!__pyx_ptype_7c_numpy_ndarray) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 79; goto __pyx_L1;}
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":9 */
- import_array();
-
- /* "/Users/oliphant/numpybook/pyrex/add.pyx":62 */
- return;
- __pyx_L1:;
- __Pyx_AddTraceback("add");
-}
-
-static char *__pyx_filenames[] = {
- "add.pyx",
- "c_numpy.pxd",
-};
-
-/* Runtime support code */
-
-static void __pyx_init_filenames(void) {
- __pyx_f = __pyx_filenames;
-}
-
-static int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {
- if (!type) {
- PyErr_Format(PyExc_SystemError, "Missing type object");
- return 0;
- }
- if (obj == Py_None || PyObject_TypeCheck(obj, type))
- return 1;
- PyErr_Format(PyExc_TypeError, "Cannot convert %s to %s",
- obj->ob_type->tp_name, type->tp_name);
- return 0;
-}
-
-static int __Pyx_InternStrings(__Pyx_InternTabEntry *t) {
- while (t->p) {
- *t->p = PyString_InternFromString(t->s);
- if (!*t->p)
- return -1;
- ++t;
- }
- return 0;
-}
-
-static PyTypeObject *__Pyx_ImportType(char *module_name, char *class_name,
- long size)
-{
- PyObject *py_module_name = 0;
- PyObject *py_class_name = 0;
- PyObject *py_name_list = 0;
- PyObject *py_module = 0;
- PyObject *result = 0;
-
- py_module_name = PyString_FromString(module_name);
- if (!py_module_name)
- goto bad;
- py_class_name = PyString_FromString(class_name);
- if (!py_class_name)
- goto bad;
- py_name_list = PyList_New(1);
- if (!py_name_list)
- goto bad;
- Py_INCREF(py_class_name);
- if (PyList_SetItem(py_name_list, 0, py_class_name) < 0)
- goto bad;
- py_module = __Pyx_Import(py_module_name, py_name_list);
- if (!py_module)
- goto bad;
- result = PyObject_GetAttr(py_module, py_class_name);
- if (!result)
- goto bad;
- if (!PyType_Check(result)) {
- PyErr_Format(PyExc_TypeError,
- "%s.%s is not a type object",
- module_name, class_name);
- goto bad;
- }
- if (((PyTypeObject *)result)->tp_basicsize != size) {
- PyErr_Format(PyExc_ValueError,
- "%s.%s does not appear to be the correct type object",
- module_name, class_name);
- goto bad;
- }
- goto done;
-bad:
- Py_XDECREF(result);
- result = 0;
-done:
- Py_XDECREF(py_module_name);
- Py_XDECREF(py_class_name);
- Py_XDECREF(py_name_list);
- return (PyTypeObject *)result;
-}
-
-static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list) {
- PyObject *__import__ = 0;
- PyObject *empty_list = 0;
- PyObject *module = 0;
- PyObject *global_dict = 0;
- PyObject *empty_dict = 0;
- PyObject *list;
- __import__ = PyObject_GetAttrString(__pyx_b, "__import__");
- if (!__import__)
- goto bad;
- if (from_list)
- list = from_list;
- else {
- empty_list = PyList_New(0);
- if (!empty_list)
- goto bad;
- list = empty_list;
- }
- global_dict = PyModule_GetDict(__pyx_m);
- if (!global_dict)
- goto bad;
- empty_dict = PyDict_New();
- if (!empty_dict)
- goto bad;
- module = PyObject_CallFunction(__import__, "OOOO",
- name, global_dict, empty_dict, list);
-bad:
- Py_XDECREF(empty_list);
- Py_XDECREF(__import__);
- Py_XDECREF(empty_dict);
- return module;
-}
-
-#include "compile.h"
-#include "frameobject.h"
-#include "traceback.h"
-
-static void __Pyx_AddTraceback(char *funcname) {
- PyObject *py_srcfile = 0;
- PyObject *py_funcname = 0;
- PyObject *py_globals = 0;
- PyObject *empty_tuple = 0;
- PyObject *empty_string = 0;
- PyCodeObject *py_code = 0;
- PyFrameObject *py_frame = 0;
-
- py_srcfile = PyString_FromString(__pyx_filename);
- if (!py_srcfile) goto bad;
- py_funcname = PyString_FromString(funcname);
- if (!py_funcname) goto bad;
- py_globals = PyModule_GetDict(__pyx_m);
- if (!py_globals) goto bad;
- empty_tuple = PyTuple_New(0);
- if (!empty_tuple) goto bad;
- empty_string = PyString_FromString("");
- if (!empty_string) goto bad;
- py_code = PyCode_New(
- 0, /*int argcount,*/
- 0, /*int nlocals,*/
- 0, /*int stacksize,*/
- 0, /*int flags,*/
- empty_string, /*PyObject *code,*/
- empty_tuple, /*PyObject *consts,*/
- empty_tuple, /*PyObject *names,*/
- empty_tuple, /*PyObject *varnames,*/
- empty_tuple, /*PyObject *freevars,*/
- empty_tuple, /*PyObject *cellvars,*/
- py_srcfile, /*PyObject *filename,*/
- py_funcname, /*PyObject *name,*/
- __pyx_lineno, /*int firstlineno,*/
- empty_string /*PyObject *lnotab*/
- );
- if (!py_code) goto bad;
- py_frame = PyFrame_New(
- PyThreadState_Get(), /*PyThreadState *tstate,*/
- py_code, /*PyCodeObject *code,*/
- py_globals, /*PyObject *globals,*/
- 0 /*PyObject *locals*/
- );
- if (!py_frame) goto bad;
- py_frame->f_lineno = __pyx_lineno;
- PyTraceBack_Here(py_frame);
-bad:
- Py_XDECREF(py_srcfile);
- Py_XDECREF(py_funcname);
- Py_XDECREF(empty_tuple);
- Py_XDECREF(empty_string);
- Py_XDECREF(py_code);
- Py_XDECREF(py_frame);
-}
diff --git a/doc/numpybook/comparison/pyrex/add.pyx b/doc/numpybook/comparison/pyrex/add.pyx
deleted file mode 100644
index 63c231641..000000000
--- a/doc/numpybook/comparison/pyrex/add.pyx
+++ /dev/null
@@ -1,75 +0,0 @@
-# -*- Mode: Python -*- Not really, but close enough
-
-cimport c_numpy
-from c_numpy cimport import_array, ndarray, npy_intp, npy_cdouble, \
- npy_cfloat, NPY_DOUBLE, NPY_CDOUBLE, NPY_FLOAT, \
- NPY_CFLOAT
-
-#We need to initialize NumPy
-import_array()
-
-def zadd(object ao, object bo):
- cdef ndarray c, a, b
- cdef npy_intp i
-
- a = c_numpy.PyArray_ContiguousFromAny(ao, NPY_CDOUBLE, 1, 1)
- b = c_numpy.PyArray_ContiguousFromAny(bo, NPY_CDOUBLE, 1, 1)
-
- c = c_numpy.PyArray_SimpleNew(a.nd, a.dimensions,
- a.descr.type_num)
-
- for i from 0 <= i < a.dimensions[0]:
- (<npy_cdouble *>c.data)[i].real = (<npy_cdouble *>a.data)[i].real + \
- (<npy_cdouble *>b.data)[i].real
- (<npy_cdouble *>c.data)[i].imag = (<npy_cdouble *>a.data)[i].imag + \
- (<npy_cdouble *>b.data)[i].imag
- return c
-
-def cadd(object ao, object bo):
- cdef ndarray c, a, b
- cdef npy_intp i
-
- a = c_numpy.PyArray_ContiguousFromAny(ao, NPY_CFLOAT, 1, 1)
- b = c_numpy.PyArray_ContiguousFromAny(bo, NPY_CFLOAT, 1, 1)
-
- c = c_numpy.PyArray_SimpleNew(a.nd, a.dimensions,
- a.descr.type_num)
-
- for i from 0 <= i < a.dimensions[0]:
- (<npy_cfloat *>c.data)[i].real = (<npy_cfloat *>a.data)[i].real + \
- (<npy_cfloat *>b.data)[i].real
- (<npy_cfloat *>c.data)[i].imag = (<npy_cfloat *>a.data)[i].imag + \
- (<npy_cfloat *>b.data)[i].imag
- return c
-
-
-def dadd(object ao, object bo):
- cdef ndarray c, a, b
- cdef npy_intp i
-
- a = c_numpy.PyArray_ContiguousFromAny(ao, NPY_DOUBLE, 1, 1)
- b = c_numpy.PyArray_ContiguousFromAny(bo, NPY_DOUBLE, 1, 1)
-
- c = c_numpy.PyArray_SimpleNew(a.nd, a.dimensions,
- a.descr.type_num)
-
- for i from 0 <= i < a.dimensions[0]:
- (<double *>c.data)[i] = (<double *>a.data)[i] + \
- (<double *>b.data)[i]
- return c
-
-
-def sadd(object ao, object bo):
- cdef ndarray c, a, b
- cdef npy_intp i
-
- a = c_numpy.PyArray_ContiguousFromAny(ao, NPY_FLOAT, 1, 1)
- b = c_numpy.PyArray_ContiguousFromAny(bo, NPY_FLOAT, 1, 1)
-
- c = c_numpy.PyArray_SimpleNew(a.nd, a.dimensions,
- a.descr.type_num)
-
- for i from 0 <= i < a.dimensions[0]:
- (<float *>c.data)[i] = (<float *>a.data)[i] + \
- (<float *>b.data)[i]
- return c
diff --git a/doc/numpybook/comparison/pyrex/c_numpy.pxd b/doc/numpybook/comparison/pyrex/c_numpy.pxd
deleted file mode 100644
index 66e77e294..000000000
--- a/doc/numpybook/comparison/pyrex/c_numpy.pxd
+++ /dev/null
@@ -1,107 +0,0 @@
-# :Author: Robert Kern
-# :Copyright: 2004, Enthought, Inc.
-# :License: BSD Style
-
-
-cdef extern from "numpy/arrayobject.h":
-
- cdef enum NPY_TYPES:
- NPY_BOOL
- NPY_BYTE
- NPY_UBYTE
- NPY_SHORT
- NPY_USHORT
- NPY_INT
- NPY_UINT
- NPY_LONG
- NPY_ULONG
- NPY_LONGLONG
- NPY_ULONGLONG
- NPY_FLOAT
- NPY_DOUBLE
- NPY_LONGDOUBLE
- NPY_CFLOAT
- NPY_CDOUBLE
- NPY_CLONGDOUBLE
- NPY_OBJECT
- NPY_STRING
- NPY_UNICODE
- NPY_VOID
- NPY_NTYPES
- NPY_NOTYPE
-
- cdef enum requirements:
- NPY_CONTIGUOUS
- NPY_FORTRAN
- NPY_OWNDATA
- NPY_FORCECAST
- NPY_ENSURECOPY
- NPY_ENSUREARRAY
- NPY_ELEMENTSTRIDES
- NPY_ALIGNED
- NPY_NOTSWAPPED
- NPY_WRITEABLE
- NPY_UPDATEIFCOPY
- NPY_ARR_HAS_DESCR
-
- NPY_BEHAVED
- NPY_BEHAVED_NS
- NPY_CARRAY
- NPY_CARRAY_RO
- NPY_FARRAY
- NPY_FARRAY_RO
- NPY_DEFAULT
-
- NPY_IN_ARRAY
- NPY_OUT_ARRAY
- NPY_INOUT_ARRAY
- NPY_IN_FARRAY
- NPY_OUT_FARRAY
- NPY_INOUT_FARRAY
-
- NPY_UPDATE_ALL
-
- ctypedef struct npy_cdouble:
- double real
- double imag
-
- ctypedef struct npy_cfloat:
- double real
- double imag
-
- ctypedef int npy_intp
-
- ctypedef extern class numpy.dtype [object PyArray_Descr]:
- cdef int type_num, elsize, alignment
- cdef char type, kind, byteorder
- cdef int flags
- cdef object fields, typeobj
-
- ctypedef extern class numpy.ndarray [object PyArrayObject]:
- cdef char *data
- cdef int nd
- cdef npy_intp *dimensions
- cdef npy_intp *strides
- cdef object base
- cdef dtype descr
- cdef int flags
-
- object PyArray_ZEROS(int ndims, npy_intp* dims, NPY_TYPES type_num, int fortran)
- object PyArray_EMPTY(int ndims, npy_intp* dims, NPY_TYPES type_num, int fortran)
- dtype PyArray_DescrFromTypeNum(NPY_TYPES type_num)
- object PyArray_SimpleNew(int ndims, npy_intp* dims, NPY_TYPES type_num)
- int PyArray_Check(object obj)
- object PyArray_ContiguousFromAny(object obj, NPY_TYPES type,
- int mindim, int maxdim)
- npy_intp PyArray_SIZE(ndarray arr)
- npy_intp PyArray_NBYTES(ndarray arr)
- void *PyArray_DATA(ndarray arr)
- object PyArray_FromAny(object obj, dtype newtype, int mindim, int maxdim,
- int requirements, object context)
- object PyArray_FROMANY(object obj, NPY_TYPES type_num, int min,
- int max, int requirements)
- object PyArray_NewFromDescr(object subtype, dtype newtype, int nd,
- npy_intp* dims, npy_intp* strides, void* data,
- int flags, object parent)
-
- void import_array()
diff --git a/doc/numpybook/comparison/pyrex/filter.c b/doc/numpybook/comparison/pyrex/filter.c
deleted file mode 100644
index 1c25eb677..000000000
--- a/doc/numpybook/comparison/pyrex/filter.c
+++ /dev/null
@@ -1,388 +0,0 @@
-/* Generated by Pyrex 0.9.4.1 on Thu Aug 17 02:11:42 2006 */
-
-#include "Python.h"
-#include "structmember.h"
-#ifndef PY_LONG_LONG
- #define PY_LONG_LONG LONG_LONG
-#endif
-#ifdef __cplusplus
-#define __PYX_EXTERN_C extern "C"
-#else
-#define __PYX_EXTERN_C extern
-#endif
-__PYX_EXTERN_C double pow(double, double);
-#include "numpy/arrayobject.h"
-
-
-typedef struct {PyObject **p; char *s;} __Pyx_InternTabEntry; /*proto*/
-typedef struct {PyObject **p; char *s; long n;} __Pyx_StringTabEntry; /*proto*/
-static PyObject *__Pyx_UnpackItem(PyObject *, int); /*proto*/
-static int __Pyx_EndUnpack(PyObject *, int); /*proto*/
-static int __Pyx_PrintItem(PyObject *); /*proto*/
-static int __Pyx_PrintNewline(void); /*proto*/
-static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
-static void __Pyx_ReRaise(void); /*proto*/
-static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list); /*proto*/
-static PyObject *__Pyx_GetExcValue(void); /*proto*/
-static int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed, char *name); /*proto*/
-static int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); /*proto*/
-static int __Pyx_GetStarArgs(PyObject **args, PyObject **kwds, char *kwd_list[], int nargs, PyObject **args2, PyObject **kwds2); /*proto*/
-static void __Pyx_WriteUnraisable(char *name); /*proto*/
-static void __Pyx_AddTraceback(char *funcname); /*proto*/
-static PyTypeObject *__Pyx_ImportType(char *module_name, char *class_name, long size); /*proto*/
-static int __Pyx_SetVtable(PyObject *dict, void *vtable); /*proto*/
-static int __Pyx_GetVtable(PyObject *dict, void *vtabptr); /*proto*/
-static PyObject *__Pyx_CreateClass(PyObject *bases, PyObject *dict, PyObject *name, char *modname); /*proto*/
-static int __Pyx_InternStrings(__Pyx_InternTabEntry *t); /*proto*/
-static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/
-static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/
-
-static PyObject *__pyx_m;
-static PyObject *__pyx_b;
-static int __pyx_lineno;
-static char *__pyx_filename;
-static char **__pyx_f;
-
-/* Declarations from c_numpy */
-
-static PyTypeObject *__pyx_ptype_7c_numpy_dtype = 0;
-static PyTypeObject *__pyx_ptype_7c_numpy_ndarray = 0;
-
-/* Declarations from filter */
-
-
-/* Implementation of filter */
-
-static PyObject *__pyx_n_c_numpy;
-static PyObject *__pyx_n_filter;
-
-static PyObject *__pyx_f_6filter_filter(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
-static PyObject *__pyx_f_6filter_filter(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
- PyObject *__pyx_v_ao = 0;
- PyArrayObject *__pyx_v_a;
- PyArrayObject *__pyx_v_b;
- npy_intp __pyx_v_i;
- npy_intp __pyx_v_j;
- npy_intp __pyx_v_M;
- npy_intp __pyx_v_N;
- npy_intp __pyx_v_S0;
- npy_intp __pyx_v_S1;
- npy_intp __pyx_v_r;
- npy_intp __pyx_v_rm1;
- npy_intp __pyx_v_rp1;
- npy_intp __pyx_v_c;
- npy_intp __pyx_v_cm1;
- npy_intp __pyx_v_cp1;
- PyObject *__pyx_v_oS;
- PyObject *__pyx_r;
- PyObject *__pyx_1 = 0;
- long __pyx_2;
- long __pyx_3;
- PyObject *__pyx_4 = 0;
- int __pyx_5;
- static char *__pyx_argnames[] = {"ao",0};
- if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "O", __pyx_argnames, &__pyx_v_ao)) return 0;
- Py_INCREF(__pyx_v_ao);
- __pyx_v_a = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_b = ((PyArrayObject *)Py_None); Py_INCREF(Py_None);
- __pyx_v_oS = Py_None; Py_INCREF(Py_None);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":18 */
- __pyx_1 = PyArray_FROMANY(__pyx_v_ao,NPY_DOUBLE,2,2,NPY_ALIGNED); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_a));
- __pyx_v_a = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":19 */
- __pyx_1 = PyArray_ZEROS(__pyx_v_a->nd,__pyx_v_a->dimensions,__pyx_v_a->descr->type_num,0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 19; goto __pyx_L1;}
- if (!__Pyx_TypeTest(__pyx_1, __pyx_ptype_7c_numpy_ndarray)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 19; goto __pyx_L1;}
- Py_DECREF(((PyObject *)__pyx_v_b));
- __pyx_v_b = ((PyArrayObject *)__pyx_1);
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":20 */
- __pyx_v_M = (__pyx_v_a->dimensions[0]);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":21 */
- __pyx_v_N = (__pyx_v_a->dimensions[1]);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":22 */
- __pyx_v_S0 = (__pyx_v_a->strides[0]);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":23 */
- __pyx_v_S1 = (__pyx_v_a->strides[1]);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":24 */
- __pyx_2 = (__pyx_v_M - 1);
- for (__pyx_v_i = 1; __pyx_v_i < __pyx_2; ++__pyx_v_i) {
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":25 */
- __pyx_v_r = (__pyx_v_i * __pyx_v_S0);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":26 */
- __pyx_v_rm1 = (__pyx_v_r - __pyx_v_S0);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":27 */
- __pyx_v_rp1 = (__pyx_v_r + __pyx_v_S0);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":28 */
- __pyx_1 = PyInt_FromLong((__pyx_v_i * __pyx_v_N)); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; goto __pyx_L1;}
- Py_DECREF(__pyx_v_oS);
- __pyx_v_oS = __pyx_1;
- __pyx_1 = 0;
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":29 */
- __pyx_3 = (__pyx_v_N - 1);
- for (__pyx_v_j = 1; __pyx_v_j < __pyx_3; ++__pyx_v_j) {
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":30 */
- __pyx_v_c = (__pyx_v_j * __pyx_v_S1);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":31 */
- __pyx_v_cm1 = (__pyx_v_c - __pyx_v_S1);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":32 */
- __pyx_v_cp1 = (__pyx_v_c + __pyx_v_S1);
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":38 */
- __pyx_1 = PyInt_FromLong(__pyx_v_j); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; goto __pyx_L1;}
- __pyx_4 = PyNumber_Add(__pyx_v_oS, __pyx_1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; goto __pyx_L1;}
- Py_DECREF(__pyx_1); __pyx_1 = 0;
- __pyx_5 = PyInt_AsLong(__pyx_4); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; goto __pyx_L1;}
- Py_DECREF(__pyx_4); __pyx_4 = 0;
- (((double (*))__pyx_v_b->data)[__pyx_5]) = (((((double (*))((__pyx_v_a->data + __pyx_v_r) + __pyx_v_c))[0]) + (((((((double (*))((__pyx_v_a->data + __pyx_v_rm1) + __pyx_v_c))[0]) + (((double (*))((__pyx_v_a->data + __pyx_v_rp1) + __pyx_v_c))[0])) + (((double (*))((__pyx_v_a->data + __pyx_v_r) + __pyx_v_cm1))[0])) + (((double (*))((__pyx_v_a->data + __pyx_v_r) + __pyx_v_cp1))[0])) * 0.5)) + (((((((double (*))((__pyx_v_a->data + __pyx_v_rm1) + __pyx_v_cm1))[0]) + (((double (*))((__pyx_v_a->data + __pyx_v_rp1) + __pyx_v_cm1))[0])) + (((double (*))((__pyx_v_a->data + __pyx_v_rp1) + __pyx_v_cp1))[0])) + (((double (*))((__pyx_v_a->data + __pyx_v_rm1) + __pyx_v_cp1))[0])) * 0.25));
- __pyx_L4:;
- }
- __pyx_L5:;
- __pyx_L2:;
- }
- __pyx_L3:;
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":43 */
- Py_INCREF(((PyObject *)__pyx_v_b));
- __pyx_r = ((PyObject *)__pyx_v_b);
- goto __pyx_L0;
-
- __pyx_r = Py_None; Py_INCREF(Py_None);
- goto __pyx_L0;
- __pyx_L1:;
- Py_XDECREF(__pyx_1);
- Py_XDECREF(__pyx_4);
- __Pyx_AddTraceback("filter.filter");
- __pyx_r = 0;
- __pyx_L0:;
- Py_DECREF(__pyx_v_a);
- Py_DECREF(__pyx_v_b);
- Py_DECREF(__pyx_v_oS);
- Py_DECREF(__pyx_v_ao);
- return __pyx_r;
-}
-
-static __Pyx_InternTabEntry __pyx_intern_tab[] = {
- {&__pyx_n_c_numpy, "c_numpy"},
- {&__pyx_n_filter, "filter"},
- {0, 0}
-};
-
-static struct PyMethodDef __pyx_methods[] = {
- {"filter", (PyCFunction)__pyx_f_6filter_filter, METH_VARARGS|METH_KEYWORDS, 0},
- {0, 0, 0, 0}
-};
-
-static void __pyx_init_filenames(void); /*proto*/
-
-PyMODINIT_FUNC initfilter(void); /*proto*/
-PyMODINIT_FUNC initfilter(void) {
- __pyx_init_filenames();
- __pyx_m = Py_InitModule4("filter", __pyx_methods, 0, 0, PYTHON_API_VERSION);
- if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; goto __pyx_L1;};
- __pyx_b = PyImport_AddModule("__builtin__");
- if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; goto __pyx_L1;};
- if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; goto __pyx_L1;};
- if (__Pyx_InternStrings(__pyx_intern_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; goto __pyx_L1;};
- __pyx_ptype_7c_numpy_dtype = __Pyx_ImportType("numpy", "dtype", sizeof(PyArray_Descr)); if (!__pyx_ptype_7c_numpy_dtype) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 74; goto __pyx_L1;}
- __pyx_ptype_7c_numpy_ndarray = __Pyx_ImportType("numpy", "ndarray", sizeof(PyArrayObject)); if (!__pyx_ptype_7c_numpy_ndarray) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 79; goto __pyx_L1;}
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":9 */
- import_array();
-
- /* "/Users/oliphant/numpybook/pyrex/filter.pyx":11 */
- return;
- __pyx_L1:;
- __Pyx_AddTraceback("filter");
-}
-
-static char *__pyx_filenames[] = {
- "filter.pyx",
- "c_numpy.pxd",
-};
-
-/* Runtime support code */
-
-static void __pyx_init_filenames(void) {
- __pyx_f = __pyx_filenames;
-}
-
-static int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {
- if (!type) {
- PyErr_Format(PyExc_SystemError, "Missing type object");
- return 0;
- }
- if (obj == Py_None || PyObject_TypeCheck(obj, type))
- return 1;
- PyErr_Format(PyExc_TypeError, "Cannot convert %s to %s",
- obj->ob_type->tp_name, type->tp_name);
- return 0;
-}
-
-static int __Pyx_InternStrings(__Pyx_InternTabEntry *t) {
- while (t->p) {
- *t->p = PyString_InternFromString(t->s);
- if (!*t->p)
- return -1;
- ++t;
- }
- return 0;
-}
-
-static PyTypeObject *__Pyx_ImportType(char *module_name, char *class_name,
- long size)
-{
- PyObject *py_module_name = 0;
- PyObject *py_class_name = 0;
- PyObject *py_name_list = 0;
- PyObject *py_module = 0;
- PyObject *result = 0;
-
- py_module_name = PyString_FromString(module_name);
- if (!py_module_name)
- goto bad;
- py_class_name = PyString_FromString(class_name);
- if (!py_class_name)
- goto bad;
- py_name_list = PyList_New(1);
- if (!py_name_list)
- goto bad;
- Py_INCREF(py_class_name);
- if (PyList_SetItem(py_name_list, 0, py_class_name) < 0)
- goto bad;
- py_module = __Pyx_Import(py_module_name, py_name_list);
- if (!py_module)
- goto bad;
- result = PyObject_GetAttr(py_module, py_class_name);
- if (!result)
- goto bad;
- if (!PyType_Check(result)) {
- PyErr_Format(PyExc_TypeError,
- "%s.%s is not a type object",
- module_name, class_name);
- goto bad;
- }
- if (((PyTypeObject *)result)->tp_basicsize != size) {
- PyErr_Format(PyExc_ValueError,
- "%s.%s does not appear to be the correct type object",
- module_name, class_name);
- goto bad;
- }
- goto done;
-bad:
- Py_XDECREF(result);
- result = 0;
-done:
- Py_XDECREF(py_module_name);
- Py_XDECREF(py_class_name);
- Py_XDECREF(py_name_list);
- return (PyTypeObject *)result;
-}
-
-static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list) {
- PyObject *__import__ = 0;
- PyObject *empty_list = 0;
- PyObject *module = 0;
- PyObject *global_dict = 0;
- PyObject *empty_dict = 0;
- PyObject *list;
- __import__ = PyObject_GetAttrString(__pyx_b, "__import__");
- if (!__import__)
- goto bad;
- if (from_list)
- list = from_list;
- else {
- empty_list = PyList_New(0);
- if (!empty_list)
- goto bad;
- list = empty_list;
- }
- global_dict = PyModule_GetDict(__pyx_m);
- if (!global_dict)
- goto bad;
- empty_dict = PyDict_New();
- if (!empty_dict)
- goto bad;
- module = PyObject_CallFunction(__import__, "OOOO",
- name, global_dict, empty_dict, list);
-bad:
- Py_XDECREF(empty_list);
- Py_XDECREF(__import__);
- Py_XDECREF(empty_dict);
- return module;
-}
-
-#include "compile.h"
-#include "frameobject.h"
-#include "traceback.h"
-
-static void __Pyx_AddTraceback(char *funcname) {
- PyObject *py_srcfile = 0;
- PyObject *py_funcname = 0;
- PyObject *py_globals = 0;
- PyObject *empty_tuple = 0;
- PyObject *empty_string = 0;
- PyCodeObject *py_code = 0;
- PyFrameObject *py_frame = 0;
-
- py_srcfile = PyString_FromString(__pyx_filename);
- if (!py_srcfile) goto bad;
- py_funcname = PyString_FromString(funcname);
- if (!py_funcname) goto bad;
- py_globals = PyModule_GetDict(__pyx_m);
- if (!py_globals) goto bad;
- empty_tuple = PyTuple_New(0);
- if (!empty_tuple) goto bad;
- empty_string = PyString_FromString("");
- if (!empty_string) goto bad;
- py_code = PyCode_New(
- 0, /*int argcount,*/
- 0, /*int nlocals,*/
- 0, /*int stacksize,*/
- 0, /*int flags,*/
- empty_string, /*PyObject *code,*/
- empty_tuple, /*PyObject *consts,*/
- empty_tuple, /*PyObject *names,*/
- empty_tuple, /*PyObject *varnames,*/
- empty_tuple, /*PyObject *freevars,*/
- empty_tuple, /*PyObject *cellvars,*/
- py_srcfile, /*PyObject *filename,*/
- py_funcname, /*PyObject *name,*/
- __pyx_lineno, /*int firstlineno,*/
- empty_string /*PyObject *lnotab*/
- );
- if (!py_code) goto bad;
- py_frame = PyFrame_New(
- PyThreadState_Get(), /*PyThreadState *tstate,*/
- py_code, /*PyCodeObject *code,*/
- py_globals, /*PyObject *globals,*/
- 0 /*PyObject *locals*/
- );
- if (!py_frame) goto bad;
- py_frame->f_lineno = __pyx_lineno;
- PyTraceBack_Here(py_frame);
-bad:
- Py_XDECREF(py_srcfile);
- Py_XDECREF(py_funcname);
- Py_XDECREF(empty_tuple);
- Py_XDECREF(empty_string);
- Py_XDECREF(py_code);
- Py_XDECREF(py_frame);
-}
diff --git a/doc/numpybook/comparison/pyrex/filter.pyx b/doc/numpybook/comparison/pyrex/filter.pyx
deleted file mode 100644
index 492bc43de..000000000
--- a/doc/numpybook/comparison/pyrex/filter.pyx
+++ /dev/null
@@ -1,44 +0,0 @@
-# -*- Mode: Python -*- Not really, but close enough
-
-cimport c_numpy
-from c_numpy cimport import_array, ndarray, npy_intp,\
- NPY_DOUBLE, NPY_CDOUBLE, NPY_FLOAT, \
- NPY_CFLOAT, NPY_ALIGNED
-
-#We need to initialize NumPy
-import_array()
-
-def filter(object ao):
- cdef ndarray a, b
- cdef npy_intp i, j, M, N, S0, S1
- cdef npy_intp r,rm1,rp1,c,cm1,cp1
-
- # Require an ALIGNED array (but not necessarily contiguous)
- # We will use strides to access the elements.
- a = c_numpy.PyArray_FROMANY(ao, NPY_DOUBLE, 2, 2, NPY_ALIGNED)
- b = c_numpy.PyArray_ZEROS(a.nd, a.dimensions, a.descr.type_num, 0)
- M = a.dimensions[0]
- N = a.dimensions[1]
- S0 = a.strides[0]
- S1 = a.strides[1]
- for i from 1 <= i < M-1:
- r = i*S0
- rm1 = r-S0
- rp1 = r+S0
- oS = i*N
- for j from 1 <= j < N-1:
- c = j*S1
- cm1 = c-S1
- cp1 = c+S1
- (<double *>b.data)[oS+j] = \
- (<double *>(a.data+r+c))[0] + \
- ((<double *>(a.data+rm1+c))[0] + \
- (<double *>(a.data+rp1+c))[0] + \
- (<double *>(a.data+r+cm1))[0] + \
- (<double *>(a.data+r+cp1))[0])*0.5 + \
- ((<double *>(a.data+rm1+cm1))[0] + \
- (<double *>(a.data+rp1+cm1))[0] + \
- (<double *>(a.data+rp1+cp1))[0] + \
- (<double *>(a.data+rm1+cp1))[0])*0.25
- return b
-
diff --git a/doc/numpybook/comparison/pyrex/setup.py b/doc/numpybook/comparison/pyrex/setup.py
deleted file mode 100644
index 3fb69a705..000000000
--- a/doc/numpybook/comparison/pyrex/setup.py
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/usr/bin/env python
-from __future__ import division, print_function
-
-from distutils.core import setup
-from distutils.extension import Extension
-
-import numpy
-
-# Define a pyrex-based extension module, using the generated sources if pyrex
-from Pyrex.Distutils import build_ext
-pyx_sources = ['add.pyx']
-cmdclass = {'build_ext': build_ext}
-
-
-pyx_ext = Extension('add',
- pyx_sources,
- include_dirs = [numpy.get_include()])
-
-pyx_ext2 = Extension('blur',
- ['blur.pyx'],
- include_dirs = [numpy.get_include()])
-
-
-# Call the routine which does the real work
-setup(name = 'add',
- description = 'Small example on using Pyrex to write a Numpy extension',
- url = 'http://www.scipy.org/Cookbook/Pyrex_and_NumPy',
- ext_modules = [pyx_ext, pyx_ext2],
- cmdclass = cmdclass,
- )
diff --git a/doc/numpybook/comparison/pyrex/timeme b/doc/numpybook/comparison/pyrex/timeme
deleted file mode 100755
index 2f7cd297f..000000000
--- a/doc/numpybook/comparison/pyrex/timeme
+++ /dev/null
@@ -1,2 +0,0 @@
-python2.4 -m timeit -s "import numpy as N; a=N.random.rand(100,200); import filter" "b = filter.filter(a)"
-