squared_exponential_covariance_function - The Squared Exponential covariance function in multiple dimensions
Example compile flags (system dependent):
-DLINUX_X86_64 -DLINUX_X86_64_OPTERON -DGNU_COMPILER
-lKJB -lfftw3 -lgsl -lgslcblas -ljpeg -lSVM -lstdc++ -lpthread -lSLATEC -lg2c -lacml -lacml_mv -lblas -lg2c -lncursesw
const Vector *t1,
const Vector *t2,
const void *l,
This routine is meant to be used with the fill_covariance_function. It is one
of the predefined covariance functions.
For a given pair of indices t1 and t2, the matrix pointed to by cov will be
exp(-0.5( ||t1 - t2|| / l_p ) )I
where I is a d x d identity matrix. If the random variables of the Gaussian
process are vectors (i.e., if d > 1), then each component is independent of
the others. The characteristic length l_p, a double, is specified by
passing in a const void pointer l that points to it,
i.e., l == (const void*) &l_p.
If the matrix pointed to by cov is NULL, then a matrix of the appropriate
size is created. If it exists, but is the wrong size, then it is recreated.
Otherwise, the storage is recycled.
If the routine fails (due to storage allocation or an error in the
covariance function), then ERROR is returned with and error message being
set. Otherwise NO_ERROR is returned.
This software is not adequatedly tested. It is recomended that
results are checked independantly where appropriate.