Author: Alex Gaynor <[email protected]>
Branch: numpy-exp
Changeset: r44174:058d5388ef87
Date: 2011-05-14 21:35 -0500
http://bitbucket.org/pypy/pypy/changeset/058d5388ef87/

Log:    Implemented abs ufunc.

diff --git a/pypy/module/micronumpy/__init__.py 
b/pypy/module/micronumpy/__init__.py
--- a/pypy/module/micronumpy/__init__.py
+++ b/pypy/module/micronumpy/__init__.py
@@ -10,6 +10,7 @@
         'zeros': 'interp_numarray.zeros',
 
         # ufuncs
+        'abs': 'interp_ufuncs.npabs',
         'negative': 'interp_ufuncs.negative',
     }
 
diff --git a/pypy/module/micronumpy/interp_ufuncs.py 
b/pypy/module/micronumpy/interp_ufuncs.py
--- a/pypy/module/micronumpy/interp_ufuncs.py
+++ b/pypy/module/micronumpy/interp_ufuncs.py
@@ -13,4 +13,8 @@
 
 @ufunc
 def negative(value):
-    return -value
\ No newline at end of file
+    return -value
+
+@ufunc
+def npabs(value):
+    return abs(value)
\ No newline at end of file
diff --git a/pypy/module/micronumpy/test/test_ufuncs.py 
b/pypy/module/micronumpy/test/test_ufuncs.py
--- a/pypy/module/micronumpy/test/test_ufuncs.py
+++ b/pypy/module/micronumpy/test/test_ufuncs.py
@@ -13,4 +13,12 @@
         a = array([-5.0, 1.0])
         b = negative(a)
         a[0] = 5.0
-        assert b[0] == 5.0
\ No newline at end of file
+        assert b[0] == 5.0
+
+    def test_abs(self):
+        from numpy import array, abs as npabs
+
+        a = array([-5.0, -0.0, 1.0])
+        b = npabs(a)
+        for i in range(3):
+            assert b[i] == abs(a[i])
\ No newline at end of file
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to