On Tue, Dec 22, 2015 at 7:42 AM, Ralf Gommers <ralf.gomm...@gmail.com> wrote:
> > > On Tue, Dec 22, 2015 at 12:55 AM, Peter Creasey < > p.e.creasey...@googlemail.com> wrote: > >> Hi all, >> I submitted a PR (#6872) for using complex numbers in np.lib.interp. >> >> The tests pass on my machine, but I see that the TravisCI builds are >> giving assertion fails (on my own test) with python 3.3 and 3.5 of the >> form: >> > assert_almost_equal >> > TypeError: Cannot cast array data from dtype('complex128') to >> dtype('float64') according to the rule 'safe' >> >> When I was writing the test I used np.testing.assert_almost_equal with >> complex128 as it works in my python 2.7, however having checked the >> docstring I cannot tell what the expected behaviour should be (complex >> or no complex allowed). Should my test be changed or the >> assert_almost_equal? >> > > Hi Peter, that error is unrelated to assert_almost_equal. What happens is > that when you pass in a complex argument `fp` to your modified > `compiled_interp`, you're somewhere doing a cast that's not safe and > trigger the error at > https://github.com/numpy/numpy/blob/master/numpy/core/src/multiarray/ctors.c#L1930. > For what "safe casting" means, see > http://docs.scipy.org/doc/numpy/reference/generated/numpy.can_cast.html > The problem then is probably here <https://github.com/numpy/numpy/pull/6872/files#diff-45aacfd88a495829ee10815c1d02326fL623> . You may want to throw in a PyErr_Clear() <https://docs.python.org/3/c-api/exceptions.html#c.PyErr_Clear> when the conversion of the fp array to NPY_DOUBLE fails before trying with NPY_CDOUBLE, and check if it goes away. Jaime -- (\__/) ( O.o) ( > <) Este es Conejo. Copia a Conejo en tu firma y ayúdale en sus planes de dominación mundial.
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org https://mail.scipy.org/mailman/listinfo/numpy-discussion