I have now implemented this functionality in numpy.correlate() and 
numpy.convolve(). https://github.com/bringingheavendown/numpy. The files that 
were edited are:
numpy/core/src/multiarray/multiarraymodule.c
numpy/core/numeric.py
numpy/core/tests/test_numeric.py
Please look over the code, my design decisions, and the unit tests I have 
written. This is my first time contributing, so I am not confident about any of 
these and welcome feedback.

> On Jun 8, 2015, at 9:54 PM, Honi Sanders <h...@brandeis.edu> wrote:
> 
> I am learning numpy/scipy, coming from a MATLAB background. The xcorr 
> function in Matlab has an optional argument "maxlag" that limits the lag 
> range from –maxlag to maxlag. This is very useful if you are looking at the 
> cross-correlation between two very long time series but are only interested 
> in the correlation within a certain time range. The performance increases are 
> enormous considering that cross-correlation is incredibly expensive to 
> compute.
> 
> What is troubling me is that numpy.correlate does not have a maxlag feature. 
> This means that even if I only want to see correlations between two time 
> series with lags between -100 and +100 ms, for example, it will still 
> calculate the correlation for every lag between -20000 and +20000 ms (which 
> is the length of the time series). This (theoretically) gives a 200x 
> performance hit! Is it possible that I could contribute this feature?
> 
> I have introduced this question as a scipy issue 
> https://github.com/scipy/scipy/issues/4940 and on the spicy-dev list 
> (http://mail.scipy.org/pipermail/scipy-dev/2015-June/020757.html).  It seems 
> the best place to start is with numpy.correlate, so that is what I am 
> requesting.  I have done a simple implementation 
> (https://gist.github.com/bringingheavendown/b4ce18aa007118e4e084) which gives 
> 50x speedup under my conditions 
> (https://github.com/scipy/scipy/issues/4940#issuecomment-110187847). 
> 
> This is my first experience with contributing to open-source software, so any 
> pointers are appreciated.  
> 

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to