# NAME

convolve_matrix - Convolves matrix with an arbitrary mask
# SYNOPSIS

#include "m/m_convolve.h"
Example compile flags (system dependent):
-DLINUX_X86_64 -DLINUX_X86_64_OPTERON -DGNU_COMPILER
-I/home/kobus/include
-L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
-lKJB -lfftw3 -lgsl -lgslcblas -ljpeg -lSVM -lstdc++ -lpthread -lSLATEC -lg2c -lacml -lacml_mv -lblas -lg2c -lncursesw
int convolve_matrix
(
Matrix **out_mpp,
const Matrix *in_mp,
const Matrix *mask_mp
);

# DESCRIPTION

This routine convolves the matrix pointed to by in_mp with the mask mask_mp,
putting the result into *out_mpp.
If *out_mpp is NULL, then an matrix of the appropriate size is created, if
it is the wrong size, then it is resized, and if it is the right size, the
storage is recycled.
The results near the boundaries are computed by assuming the input matrix
reflects itself at the edges.
# RETURNS

NO_ERROR on success, and ERROR on failure, with an appropriate error
message being set.
# DISCLAIMER

This software is not adequatedly tested. It is recomended that
results are checked independantly where appropriate.
# AUTHOR

Kobus Barnard
# DOCUMENTER

Kobus Barnard
# SEE ALSO

gauss_convolve_matrix
,
x_convolve_matrix
,
y_convolve_matrix
,
convolve_vector
,
get_2D_gaussian_mask_dispatch
,
get_2D_gaussian_mask
,
get_2D_gaussian_mask_2
,
get_2D_gaussian_dx_mask
,
get_2D_gaussian_dy_mask
,
get_1D_gaussian_mask