HELP CONVOLVE_ND                                David Young
                                                November 1992

    convolve_nd(ARRIN, MASK, ARROUT, REGION) -> ARROUT

This is just like *CONVOLVE_2D but for N-dimensional arrays, where N is
any integer greater than or equal to 1. The arguments mean the same
things except for the possibility of having any number of dimensions.
All arrays must have the same number of dimensions.

For 1-D and 2-D arrays it may be more efficient to use *CONVOLVE_1D or
*CONVOLVE_2D respectively. (The procedure does not test for these cases
to avoid having to load the 1-D and 2-D external procedures if they are
not needed. Also it is not clear that the 2-D one is more efficient in
all cases - it is best to check using real examples.) If the mask array
has a lot of zeroes, it will be more efficient to use *CONVOLVE_INDEX.

Sometimes an N-D convolution is separable into a sequence of 1-D
convolutions. In such a case it will be very much more efficient to
carry it out in this way using *CONVOLVE_NX1D, which takes an N-D array
and a 1-D mask. This analysis needs to be done by the user. (An example
is the N-D Gaussian mask whose principle axes are aligned with the array
coordinate axes.)

--- $popvision/help/convolve_nd
--- Copyright University of Sussex 1992. All rights reserved. ----------
