[Numpy-svn] r2738 - in trunk/numpy: core/include/numpy core/src linalg
numpy-svn at scipy.org
numpy-svn at scipy.org
Thu Jul 6 02:57:09 EDT 2006
Author: oliphant
Date: 2006-07-06 01:57:03 -0500 (Thu, 06 Jul 2006)
New Revision: 2738
Modified:
trunk/numpy/core/include/numpy/arrayobject.h
trunk/numpy/core/src/ufuncobject.c
trunk/numpy/linalg/linalg.py
Log:
Fix buffered reduce, accumulate, and reduceat.
Modified: trunk/numpy/core/include/numpy/arrayobject.h
===================================================================
--- trunk/numpy/core/include/numpy/arrayobject.h 2006-07-05 20:09:11 UTC (rev 2737)
+++ trunk/numpy/core/include/numpy/arrayobject.h 2006-07-06 06:57:03 UTC (rev 2738)
@@ -1604,7 +1604,7 @@
} while(0)
/* Copy should always return contiguous array */
-#define PyArray_Copy(obj) PyArray_NewCopy(obj, 0)
+#define PyArray_Copy(obj) PyArray_NewCopy(obj, PyArray_CORDER)
#define PyArray_FromObject(op, type, min_depth, max_depth) \
PyArray_FromAny(op, PyArray_DescrFromType(type), min_depth, \
Modified: trunk/numpy/core/src/ufuncobject.c
===================================================================
--- trunk/numpy/core/src/ufuncobject.c 2006-07-05 20:09:11 UTC (rev 2737)
+++ trunk/numpy/core/src/ufuncobject.c 2006-07-06 06:57:03 UTC (rev 2738)
@@ -2097,6 +2097,8 @@
loop->function((char **)loop->bufptr,
&i,
loop->steps, loop->funcdata);
+ loop->bufptr[1] += loop->steps[1]*i;
+ loop->bufptr[2] += loop->steps[2]*i;
UFUNC_CHECK_ERROR(loop);
}
PyArray_ITER_NEXT(loop->it);
@@ -2239,6 +2241,8 @@
loop->function((char **)loop->bufptr,
&i,
loop->steps, loop->funcdata);
+ loop->bufptr[1] += loop->steps[1]*i;
+ loop->bufptr[2] += loop->steps[2]*i;
UFUNC_CHECK_ERROR(loop);
}
PyArray_ITER_NEXT(loop->it);
@@ -2386,6 +2390,7 @@
&j, loop->steps,
loop->funcdata);
UFUNC_CHECK_ERROR(loop);
+ loop->bufptr[1] += j*loop->steps[1];
}
loop->bufptr[1] += loop->ret->strides[axis];
ptr++;
Modified: trunk/numpy/linalg/linalg.py
===================================================================
--- trunk/numpy/linalg/linalg.py 2006-07-05 20:09:11 UTC (rev 2737)
+++ trunk/numpy/linalg/linalg.py 2006-07-06 06:57:03 UTC (rev 2738)
@@ -19,7 +19,7 @@
from numpy.lib import *
import lapack_lite
-fortran_int = int32
+fortran_int = intc
# Error object
class LinAlgError(Exception):
More information about the Numpy-svn
mailing list