ListCorrelate

ListCorrelate[ker, list]
forms the correlation of the kernel ker with list.

ListCorrelate[ker, list, k]
forms the cyclic correlation in which the k^(th) element of ker is aligned with each element in list.

ListCorrelate[ker, list, {kL, kR}]
forms the cyclic correlation whose first element contains and whose last element contains .

ListCorrelate[ker, list, klist, p]
forms the correlation in which list is padded at each end with repetitions of the element p.

ListCorrelate[ker, list, klist, {p1, p2, ...}]
forms the correlation in which list is padded at each end with cyclic repetitions of the .

ListCorrelate[ker, list, klist, padding, g, h]
forms a generalized correlation in which g is used in place of Times and h in place of Plus.

ListCorrelate[ker, list, klist, padding, g, h, lev]
forms a correlation using elements at level lev in ker and list.

DetailsDetails

  • With kernel and list , ListCorrelate[ker, list] computes , where the limits of the sum are such that the kernel never overhangs either end of the list.
  • For a one-dimensional list ListCorrelate[ker, list] is equivalent to ListConvolve[Reverse[ker], list].
  • For higher-dimensional lists, ker must be reversed at every level.
  • Settings for and are negated in ListConvolve relative to ListCorrelate.
  • Common settings for in ListCorrelate are:
  • {1,-1}no overhangs (default)
    {1,1}maximal overhang at the right-hand end
    {-1,-1}maximal overhang at the left-hand end
    {-1,1}maximal overhangs at both beginning and end

ExamplesExamplesopen allclose all

Basic Examples (4)Basic Examples (4)

Correlate a kernel with a list of data:

In[1]:=
Click for copyable input
Out[1]=

Make a cyclic correlation the same length as the original data:

In[1]:=
Click for copyable input
Out[1]=

Align element 2 in the kernel with successive elements in the data:

In[2]:=
Click for copyable input
Out[2]=

Pad with instead of using the data cyclically:

In[1]:=
Click for copyable input
Out[1]=

Two-dimensional correlation:

In[1]:=
Click for copyable input
Out[1]=
New in 4
New to Mathematica? Find your learning path »
Have a question? Ask support »