23 what()
const noexcept override
25 return "Invalid dimension";
32 what()
const noexcept override
34 return "Gaussian not initialized";
41 what()
const noexcept override
43 return "Covariance not symmetric";
53 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
103 if (
this != &prototype)
105 this->dimension = prototype.dimension;
107 this->cov = prototype.cov;
108 this->mean = prototype.mean;
117 stream <<
"mean: " << std::endl << rhs.mean << std::endl;
118 stream <<
"cov: " << std::endl << rhs.cov << std::endl;
friend std::ostream & operator<<(std::ostream &stream, const Gaussian &rhs)
const covariance_type & getCovariance() const
Eigen::VectorXd value_type
double evaluate(const value_type &point)
int getDimensions() const
Eigen::MatrixXd samples_type
void set(const Gaussian &prototype)
Gaussian & operator=(const Gaussian &prototype)
Eigen::MatrixXd covariance_type
void setCovariance(const covariance_type &cov)
void setMean(const value_type &mean)
value_type drawSampleDiagonalCovariance()
const value_type & getMean() const
void generateFromSamples(const samples_type &samples)
double mahalanobis(const value_type &point)