Name
convolve
Synopsis
convolve(a,b,mode=2)
Returns an array c with rank
1, the linear convolution of rank
1 arrays a and
b. Linear convolution is defined over
unbounded sequences. convolve conceptually extends
a and b to
infinite length by padding with 0, then clips the
infinite-length result to its central part, yielding
c. When mode is
2, the default, convolve clips
only the padding, so c’s
shape is
(len(
a
)+len(
b
)-1,).
Otherwise, convolve clips more. Say
len(
a
)
is greater than or equal to
len(
b
):
when mode is 0,
len(
c
)
is
len(
a
)-len(
b
)+1;
when mode is 1,
len(
c
)
is
len(
a
).
When
len(
a
)
is less than
len(
b
),
the effect is symmetrical. For example:
a = Numeric.arange(6) b = Numeric.arange(4) print Numeric.convolve(a, b) # prints: [0 0 1 4 10 16 22 22 15] print Numeric.convolve(a, b, 1) # prints: [0 1 4 10 16 22] print Numeric.convolve(a, b, 0) # prints: [4 10 16]