From 726605c58b7bf6c54be87a7ca7b7cbbd92e43a50 Mon Sep 17 00:00:00 2001 From: Pavan Yalamanchili Date: Sun, 11 Sep 2016 01:01:46 -0400 Subject: [PATCH 1/3] BUGFIX: array.H() now calls af_transpose with proper options --- arrayfire/array.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arrayfire/array.py b/arrayfire/array.py index 327fd6bee..beb2eb8ef 100644 --- a/arrayfire/array.py +++ b/arrayfire/array.py @@ -589,7 +589,7 @@ def H(self): """ Return the hermitian transpose of the array """ - return transpose(self, False) + return transpose(self, True) def dims(self): """ From 7b30010cb4e3dcf11c304d17229868c24df5ea26 Mon Sep 17 00:00:00 2001 From: Pavan Yalamanchili Date: Sun, 11 Sep 2016 01:03:24 -0400 Subject: [PATCH 2/3] BUGFIX: Fixing typo in QR (was calling af_lu instead) --- arrayfire/lapack.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arrayfire/lapack.py b/arrayfire/lapack.py index 346cddb01..add6f555a 100644 --- a/arrayfire/lapack.py +++ b/arrayfire/lapack.py @@ -98,7 +98,7 @@ def qr(A): Q = Array() R = Array() T = Array() - safe_call(backend.get().af_lu(ct.pointer(Q.arr), ct.pointer(R.arr), ct.pointer(T.arr), A.arr)) + safe_call(backend.get().af_qr(ct.pointer(Q.arr), ct.pointer(R.arr), ct.pointer(T.arr), A.arr)) return Q,R,T def qr_inplace(A): From 2196fe51901095144ab33308d18076f441bfe377 Mon Sep 17 00:00:00 2001 From: Pavan Yalamanchili Date: Sun, 11 Sep 2016 02:16:51 -0400 Subject: [PATCH 3/3] BUGFIX: Fix conversion between numpy and arrayfire arrays --- arrayfire/interop.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/arrayfire/interop.py b/arrayfire/interop.py index e512b7548..4f5e39d22 100644 --- a/arrayfire/interop.py +++ b/arrayfire/interop.py @@ -26,6 +26,18 @@ AF_NUMPY_FOUND=True + _nptype_to_aftype = {'f4' : Dtype.f32, + 'f8' : Dtype.f64, + 'b1' : Dtype.b8, + 'u1' : Dtype.u8, + 'i4' : Dtype.s32, + 's4' : Dtype.u32, + 'i8' : Dtype.s64, + 's8' : Dtype.u64, + 'c8' : Dtype.c32, + 'c16' : Dtype.c64} + + def np_to_af_array(np_arr): """ Convert numpy.ndarray to arrayfire.Array. @@ -41,7 +53,7 @@ def np_to_af_array(np_arr): in_shape = np_arr.shape in_ptr = np_arr.ctypes.data_as(ct.c_void_p) - in_dtype = np_arr.dtype.char + in_dtype = _nptype_to_aftype[np_arr.dtype.str[1:]] if (np_arr.flags['F_CONTIGUOUS']): return Array(in_ptr, in_shape, in_dtype)