HP MLIB User's Guide Vol. 2 7th Ed.

Chapter 6 Correlation and Convolution Subprograms 595
Correlation and convolution SCONV/DCONV
Usage VECLIB:
INTEGER*4 incx, incw, incy, m, n
REAL*4 x(lenx), w(lenw), y(leny)
CALL SCONV(x, incx, w, incw, y, incy, m, n)
INTEGER*4 incx, incw, incy, m, n
REAL*8 x(lenx), w(lenw), y(leny)
CALL DCONV(x, incx, w, incw, y, incy, m, n)
VECLIB8:
INTEGER*8 incx, incw, incy, m, n
REAL*4 x(lenx), w(lenw), y(leny)
CALL SCONV(x, incx, w, incw, y, incy, m, n)
INTEGER*8 incx, incw, incy, m, n
REAL*8 x(lenx), w(lenw), y(leny)
CALL DCONV(x, incx, w, incw, y, incy, m, n)
Input x Array containing the operand (or trace) vector x of
length m+n1. lenx = (m+n2)×|incx|+1.
incx Increment for the array x, incx 0. x
i
is stored in
x((i1)×incx+1). incx is normally positive whether
computing the correlation or the convolution. Use
incx = 1 if the vector x is stored contiguously in array x,
that is, if x
i
is stored in x(i). Refer to “Notes.
w Array containing the operator (or kernel) vector w of
length n. lenw = (n1)×|incw|+1. Refer to the
description of incw for alternate usage of w.
incw Increment for the array w, incw 0. w
j
is stored in
w((j1)×incw+1). incw is normally positive to compute
the correlation and negative to compute the
convolution.
Use incw = 1 if computing the correlation and vector w
is stored contiguously in forward order in array w, that
is, if w
j
is stored in w(j). Refer to “Example 1” on
page 597. Also, use incw = 1 if computing the
convolution and vector w is stored contiguously in
backward order in array w, that is, if w
j
is stored in
w(n+1j).
Use incw = 1 if computing the convolution and vector
w is stored contiguously in forward order in array w,