summaryrefslogtreecommitdiff
path: root/numpy/oldnumeric
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/oldnumeric')
-rw-r--r--numpy/oldnumeric/compat.py171
-rw-r--r--numpy/oldnumeric/tests/test_oldnumeric.py86
2 files changed, 257 insertions, 0 deletions
diff --git a/numpy/oldnumeric/compat.py b/numpy/oldnumeric/compat.py
new file mode 100644
index 000000000..ca9d32044
--- /dev/null
+++ b/numpy/oldnumeric/compat.py
@@ -0,0 +1,171 @@
+# Compatibility module containing deprecated names
+
+__all__ = ['NewAxis',
+ 'UFuncType', 'UfuncType', 'ArrayType', 'arraytype',
+ 'LittleEndian', 'Bool',
+ 'Character', 'UnsignedInt8', 'UnsignedInt16', 'UnsignedInt', 'UInt',
+ 'UInt8','UInt16','UInt32', 'UnsignedInt32', 'UnsignedInteger',
+ # UnsignedInt64 and Unsigned128 added below if possible
+ # same for Int64 and Int128, Float128, and Complex128
+ 'Int8', 'Int16', 'Int32',
+ 'Int0', 'Int', 'Float0', 'Float', 'Complex0', 'Complex',
+ 'PyObject', 'Float32', 'Float64', 'Float16', 'Float8',
+ 'Complex32', 'Complex64', 'Complex8', 'Complex16',
+ 'sarray', 'arrayrange', 'cross_correlate',
+ 'matrixmultiply', 'outerproduct', 'innerproduct',
+ 'cross_product', 'array_constructor',
+ 'DumpArray', 'LoadArray', 'multiarray', 'divide_safe',
+ # from cPickle
+ 'dump', 'dumps'
+ ]
+
+import numpy.core.multiarray as mu
+import numpy.core.umath as um
+import numpy.core.numerictypes as nt
+from numpy.core.numeric import asarray, array, asanyarray, \
+ correlate, outer, concatenate, cross
+from numpy.core.umath import sign, absolute, multiply
+import numpy.core.numeric as _nx
+import sys
+_dt_ = nt.sctype2char
+
+import types
+
+from cPickle import dump, dumps
+
+multiarray = mu
+
+def sarray(a, dtype=None, copy=False):
+ return array(a, dtype, copy)
+
+#Use this to add a new axis to an array
+#compatibility only
+NewAxis = None
+
+#deprecated
+UFuncType = type(um.sin)
+UfuncType = type(um.sin)
+ArrayType = mu.ndarray
+arraytype = mu.ndarray
+
+LittleEndian = (sys.byteorder == 'little')
+
+# backward compatible names from old Precision.py
+
+Character = 'S1'
+UnsignedInt8 = _dt_(nt.uint8)
+UInt8 = UnsignedInt8
+UnsignedInt16 = _dt_(nt.uint16)
+UInt16 = UnsignedInt16
+UnsignedInt32 = _dt_(nt.uint32)
+UInt32 = UnsignedInt32
+UnsignedInt = _dt_(nt.uint)
+UInt = UnsignedInt
+
+try:
+ UnsignedInt64 = _dt_(nt.uint64)
+except AttributeError:
+ pass
+else:
+ UInt64 = UnsignedInt64
+ __all__ += ['UnsignedInt64', 'UInt64']
+try:
+ UnsignedInt128 = _dt_(nt.uint128)
+except AttributeError:
+ pass
+else:
+ UInt128 = UnsignedInt128
+ __all__ += ['UnsignedInt128','UInt128']
+
+Int8 = _dt_(nt.int8)
+Int16 = _dt_(nt.int16)
+Int32 = _dt_(nt.int32)
+
+try:
+ Int64 = _dt_(nt.int64)
+except AttributeError:
+ pass
+else:
+ __all__ += ['Int64']
+
+try:
+ Int128 = _dt_(nt.int128)
+except AttributeError:
+ pass
+else:
+ __all__ += ['Int128']
+
+Bool = _dt_(bool)
+Int0 = _dt_(int)
+Int = _dt_(int)
+Float0 = _dt_(float)
+Float = _dt_(float)
+Complex0 = _dt_(complex)
+Complex = _dt_(complex)
+PyObject = _dt_(nt.object_)
+Float32 = _dt_(nt.float32)
+Float64 = _dt_(nt.float64)
+
+Float16='f'
+Float8='f'
+UnsignedInteger='L'
+Complex8='F'
+Complex16='F'
+
+try:
+ Float128 = _dt_(nt.float128)
+except AttributeError:
+ pass
+else:
+ __all__ += ['Float128']
+
+Complex32 = _dt_(nt.complex64)
+Complex64 = _dt_(nt.complex128)
+
+try:
+ Complex128 = _dt_(nt.complex256)
+except AttributeError:
+ pass
+else:
+ __all__ += ['Complex128']
+
+def _deprecate(func, oldname, newname):
+ import warnings
+ def newfunc(*args,**kwds):
+ warnings.warn("%s is deprecated, use %s" % (oldname, newname),
+ DeprecationWarning)
+ return func(*args, **kwds)
+ return newfunc
+
+# backward compatibility
+arrayrange = _deprecate(mu.arange, 'arrayrange', 'arange')
+cross_correlate = _deprecate(correlate, 'cross_correlate', 'correlate')
+cross_product = _deprecate(cross, 'cross_product', 'cross')
+divide_safe = _deprecate(um.divide, 'divide_safe', 'divide')
+
+# deprecated names
+matrixmultiply = _deprecate(mu.dot, 'matrixmultiply', 'dot')
+outerproduct = _deprecate(outer, 'outerproduct', 'outer')
+innerproduct = _deprecate(mu.inner, 'innerproduct', 'inner')
+
+
+
+def DumpArray(m, fp):
+ m.dump(fp)
+
+def LoadArray(fp):
+ import cPickle
+ return cPickle.load(fp)
+
+def array_constructor(shape, typecode, thestr, Endian=LittleEndian):
+ if typecode == "O":
+ x = array(thestr, "O")
+ else:
+ x = mu.fromstring(thestr, typecode)
+ x.shape = shape
+ if LittleEndian != Endian:
+ return x.byteswap(TRUE)
+ else:
+ return x
+
+
diff --git a/numpy/oldnumeric/tests/test_oldnumeric.py b/numpy/oldnumeric/tests/test_oldnumeric.py
new file mode 100644
index 000000000..14d5dfd84
--- /dev/null
+++ b/numpy/oldnumeric/tests/test_oldnumeric.py
@@ -0,0 +1,86 @@
+from numpy.testing import *
+
+from numpy import array
+from numpy.oldnumeric import *
+from numpy.core.numeric import float32, float64, complex64, complex128, int8, \
+ int16, int32, int64, uint, uint8, uint16, uint32, uint64
+
+class test_oldtypes(NumPyTestCase):
+ def check_oldtypes(self, level=1):
+ a1 = array([0,1,0], Float)
+ a2 = array([0,1,0], float)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Float8)
+ a2 = array([0,1,0], float)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Float16)
+ a2 = array([0,1,0], float)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Float32)
+ a2 = array([0,1,0], float32)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Float64)
+ a2 = array([0,1,0], float64)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Complex)
+ a2 = array([0,1,0], complex)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Complex8)
+ a2 = array([0,1,0], complex)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Complex16)
+ a2 = array([0,1,0], complex)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Complex32)
+ a2 = array([0,1,0], complex64)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Complex64)
+ a2 = array([0,1,0], complex128)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Int)
+ a2 = array([0,1,0], int)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Int8)
+ a2 = array([0,1,0], int8)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Int16)
+ a2 = array([0,1,0], int16)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Int32)
+ a2 = array([0,1,0], int32)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], Int64)
+ a2 = array([0,1,0], int64)
+ assert_array_equal(a1, a2)
+ a1 = array([0,1,0], UnsignedInt)
+ a2 = array([0,1,0], UnsignedInteger)
+ a3 = array([0,1,0], uint)
+ assert_array_equal(a1, a3)
+ assert_array_equal(a2, a3)
+ a1 = array([0,1,0], UInt8)
+ a2 = array([0,1,0], UnsignedInt8)
+ a3 = array([0,1,0], uint8)
+ assert_array_equal(a1, a3)
+ assert_array_equal(a2, a3)
+ a1 = array([0,1,0], UInt16)
+ a2 = array([0,1,0], UnsignedInt16)
+ a3 = array([0,1,0], uint16)
+ assert_array_equal(a1, a3)
+ assert_array_equal(a2, a3)
+ a1 = array([0,1,0], UInt32)
+ a2 = array([0,1,0], UnsignedInt32)
+ a3 = array([0,1,0], uint32)
+ assert_array_equal(a1, a3)
+ assert_array_equal(a2, a3)
+ a1 = array([0,1,0], UInt64)
+ a2 = array([0,1,0], UnsignedInt64)
+ a3 = array([0,1,0], uint64)
+ assert_array_equal(a1, a3)
+ assert_array_equal(a2, a3)
+ a1 = array([0,1,0], Bool)
+ a2 = array([0,1,0], bool)
+ assert_array_equal(a1, a2)
+
+
+if __name__ == "__main__":
+ NumPyTest().run()