[Numpy-discussion] Problem with correlate?
Hanno Klemm
klemm@phys.ethz...
Wed Aug 20 07:13:21 CDT 2008
Hi All,
after the discussion on numpy.correlate some time ago, regarding
complex conjugation, etc. I today was pointed to yet another oddity,
which I hope somebody could explain to me, as to why that's a feature,
rather than a bug. I'm thoroughly confused by the following behaviour:
In [29]: x = array([0.,0.,1, 0, 0])
In [30]: y = array([0, 0, 0, 1., 0, 0, 0])
In [31]: correlate(x,y)
Out[31]: array([ 0., 1., 0.])
In [32]: correlate(x,y, mode='full')
Out[32]: array([ 0., 0., 0., 0., 0., 1., 0., 0., 0., 0., 0.])
In [33]: y = array([0,0,1.,0,0])
In [34]: correlate(x,y,mode='full')
Out[34]: array([ 0., 0., 0., 0., 1., 0., 0., 0., 0.])
So far, everything is allright and as expected. Now:
In [35]: y1 = array([1,0,0,0,0])
In [36]: correlate(x,y1,mode='full')
Out[36]: array([ 0., 0., 0., 0., 0., 0., 1., 0., 0.])
In [37]: y2 = array([1,0,0,0,0,0,0])
In [38]: correlate(x,y2,mode='full')
Out[38]: array([ 0., 0., 1., 0., 0., 0., 0., 0., 0., 0., 0.])
Could somebody please help me understanding, why the one switches
places? Furthermore, this behaviour does not seem to be very
consistent, if we switch the x and y argument:
In [39]: correlate(y2,x,mode='full')
Out[39]: array([ 0., 0., 1., 0., 0., 0., 0., 0., 0., 0., 0.])
In [40]: correlate(y1,x,mode='full')
Out[40]: array([ 0., 0., 1., 0., 0., 0., 0., 0., 0.])
The answer remains the same. Any help would be appreciated, the numpy
version is 1.0.4.
Best regards,
Hanno
--
Hanno Klemm
klemm@phys.ethz.ch
More information about the Numpy-discussion
mailing list