# NAME

fill_mean_vector - Fills a mean vector for a Gaussian process
# SYNOPSIS

#include "gp/gp_gaussian_processes.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 fill_mean_vector
(
Vector **mean,
const Vector_vector *indices,
int (*mean_func)(Vector **,const Vector *,int),
int d
);

# DESCRIPTION

This routine creates a mean vector for a Gaussian process where the dimension
of the indices is given by the dimension of the vectors of indices, and the
dimension of the variables is d. Then, it fills *mean with subvectors that are
the result of calling the given mean function for that index.
For example, the subvector of *mean of elements 0,1,...,d is v, where v is the
vector gotten in the call
mean_func(&v, indices->elements[0], d).
Naturally, all of the vectors of indices must have equal lengths. Also,
mean_func must "return" d-vector (there are some predefined mean functions in
the library). If the routine succeeds, mean will be of length
indices->elements[0]->length * d.
If the vector pointed to by mean is NULL, then a vector of the appropriate size
is created. If it exists, but is the wrong size, then it is recreated. Otherwise,
the storage is recycled.
# RETURNS

If the routine fails (due to storage allocation or an error in the mean
function), then ERROR is returned with and error message being set. Otherwise
NO_ERROR is returned.
# RELATED

zero_mean_vector
# DISCLAIMER

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

Ernesto Brau
# DOCUMENTER

Ernesto Brau
# SEE ALSO

fill_covariance_matrix
,
sample_from_gaussian_process_prior
,
sample_from_gaussian_process_prior_i
,
sample_from_gaussian_process_predictive
,
sample_from_gaussian_process_predictive_i
,
get_gaussian_process_predictive_distribution
,
get_gaussian_process_predictive_distribution_i
,
get_gaussian_process_posterior_distribution
,
get_gaussian_process_posterior_distribution_i
,
compute_gaussian_process_likelihood
,
compute_gaussian_process_likelihood_i
,
compute_gaussian_process_marginal_likelihood
,
compute_gaussian_process_marginal_likelihood_i
,
compute_gaussian_process_marginal_log_likelihood
,
compute_gaussian_process_marginal_log_likelihood_i