A multi-dimensional Gaussian probability density function using a Cholesky decomposition. More...
#include <prob_dens_func.h>
Given a (square) covariance matrix,
, and a mean vector
the PDF is
Given the Cholesky decomposition
, and a vector,
of samples from the standard Gaussian with 0 mean and unit variance, one can create a sample
from
.
A separate class for the two-dimensional case is prob_dens_mdim_biv_gaussian .
Definition at line 924 of file prob_dens_func.h.
Public Member Functions | |
| virtual size_t | dim () const |
| The dimensionality. | |
| prob_dens_mdim_gaussian () | |
| Create an empty distribution. | |
| prob_dens_mdim_gaussian (size_t p_ndim, vec_t &p_peak, mat_t &covar) | |
| Create a distribution from the covariance matrix. | |
| void | set (size_t p_ndim, vec_t &p_peak, mat_t &covar) |
| Set the peak and covariance matrix for the distribution. | |
| void | set_alt (size_t p_ndim, vec_t &p_peak, mat_t &p_chol, mat_t &p_covar_inv, double p_norm) |
| Alternate set function for use when covariance matrix has already been decomposed and inverted. | |
| template<class vec_vec_t , class mat_col_t , class func_t > | |
| void | set_gproc (size_t n_dim, size_t n_init, vec_vec_t &x, vec_t &y, func_t &fcovar) |
| Given a data set and a covariance function, construct probability distribution based on a Gaussian process which includes noise. | |
| virtual double | pdf (const vec_t &x) const |
| The normalized density. | |
| virtual double | log_pdf (const vec_t &x) const |
| The log of the normalized density. | |
| virtual void | operator() (vec_t &x) const |
| Sample the distribution. | |
Protected Attributes | |
| mat_t | chol |
| Cholesky decomposition. | |
| mat_t | covar_inv |
| Inverse of the covariance matrix. | |
| vec_t | peak |
| Location of the peak. | |
| double | norm |
Normalization factor, . | |
| size_t | ndim |
| Number of dimensions. | |
| vec_t | q |
| Temporary storage 1. | |
| vec_t | vtmp |
| Temporary storage 2. | |
| o2scl::prob_dens_gaussian | pdg |
| Standard normal. | |
Documentation generated with Doxygen. Provided under the
GNU Free Documentation License (see License Information).