1 #ifndef CLUEPOINTGAUSS_H
2 #define CLUEPOINTGAUSS_H
4 #include "../distribution/distribution.h"
5 #include "../point/point.h"
6 #include "../point/matrix.h"
11 #define M_PI 3.14159265358979323846
36 virtual double nll(
Point const& x)
const;
40 template<
typename RndEngine>
Point draw(RndEngine&)
const;
48 template<
typename RndEngine>
52 std::normal_distribution<> nd(0,1);
54 std::vector<double> coord;
55 for (
size_t i=0; i<d; ++i)
56 coord.push_back(nd(re));
60 for (
size_t i=0; i<d; ++i)
61 coord.push_back(m(i,0));
62 return Point(coord)+this->
mean;
virtual double density(Point const &x) const
Evaluates the density of the multivariate normal distribution at the given point x.
virtual double squaredMahalanobis(Point const &x) const
PointGauss(Point const &m, Matrix const &cov)
Point draw(RndEngine &) const
Weighted matrix of arbitrary dimension.
Univariate normal distribution.
Weighted point of arbitrary dimension.
Abstract base class for probability distributions.
virtual double nll(Point const &x) const
Computes the negative log-likelihood of the density at the given point x.