# ListConvolve

Usage

ListConvolve[ker, list] forms the convolution of the kernel ker with list.
ListConvolve[ker, list, k] forms the cyclic convolution in which the k element of ker is aligned with each element in list.
ListConvolve[ker, list, {, }] forms the cyclic convolution whose first element contains list[[1]] ker[[]] and whose last element contains list[[-1]] ker[[]].
ListConvolve[ker, list, klist, p] forms the convolution in which list is padded at each end with repetitions of the element p.
ListConvolve[ker, list, klist, {, , ... }] forms the convolution in which list is padded at each end with cyclic repetitions of the .
ListConvolve[ker, list, klist, padding, g, h] forms a generalized convolution in which g is used in place of Times and h in place of Plus.
ListConvolve[ker, list, klist, padding, g, h, lev] forms a convolution using elements at level lev in ker and list.

Notes

• With kernel and list , ListConvolve[ker, list] computes , where the limits of the sum are such that the kernel never overhangs either end of the list.
• Example: ListConvolve[x,y, a,b,c].
ListConvolve[ker, list] gives a result of length Length[list]-Length[ker]+1.
ListConvolve[ker, list] allows no overhangs and is equivalent to ListConvolve[ker, list, {-1, 1}].
ListConvolve[ker, list, k] is equivalent to ListConvolve[ker, list, {k, k}].
• The values of and in ListConvolve[ker, list, {, }] determine the amount of overhang to allow at each end of list.
• Common settings for {, } 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
• Examples: ListConvolve[x,y, a,b,c, 1,1].
ListConvolve[x,y, a,b,c, 1,-1].
• With maximal overhang at one end only, the result from ListConvolve is the same length as list.
ListConvolve[ker, list, {, }, padlist] effectively lays down repeated copies of padlist, then superimposes one copy of list on them and forms a convolution of the result.
• Common settings for padlist are:
 p pad with repetitions of a single element {, , ... } pad with cyclic repetitions of a sequence of elements list pad by treating list as cyclic (default) {} do no padding
ListConvolve works with multidimensional kernels and lists of data.
ListConvolve[ker, list, {{, , ... }, {, , ... }}] forms the cyclic convolution whose {1,1, ... } element contains ker[[, , ... ]] list[[1,1, ... ]] and whose {-1,-1, ... } element contains ker[[, , ... ]] list[[-1,-1, ... ]].
{, } is taken to be equivalent to {{, , ... }, {, , ... }}.
• When a function h is specified to use in place of Plus, explicit nested h expressions are generated with a depth equal to the depth of ker.
ListConvolve works with exact numbers and symbolic data as well as approximate numbers.
• See Section 3.8.5.
• Implementation notes: see Section A.9.4.
• New in Version 4.

THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.