22 #ifndef __MLPACK_METHODS_GMM_POSITIVE_DEFINITE_CONSTRAINT_HPP
23 #define __MLPACK_METHODS_GMM_POSITIVE_DEFINITE_CONSTRAINT_HPP
44 if (arma::det(covariance) <= 1e-50)
46 Log::Debug <<
"Covariance matrix is not positive definite. Adding "
47 <<
"perturbation." << std::endl;
49 double perturbation = 1e-30;
50 while (arma::det(covariance) <= 1e-50)
52 covariance.diag() += perturbation;