1 #ifndef CONFIGIONOVELTY_HH
2 #define CONFIGIONOVELTY_HH
47 ScalarAttribute<
Configuration>(
"novelty",
"Novelty of a configuration with respect to a population of configurations, measured using the Mahalanobis distance of its correlations. Accepts one argument, a configuration selection specifying the population against which novelty is measured (default MASTER). Ex: novelty(path/to/selection)") {}
52 std::unique_ptr<Novelty>
clone()
const {
53 return std::unique_ptr<Novelty>(this->
_clone());
71 bool parse_args(
const std::string &args)
override;
bool parse_args(const std::string &args) override
Eigen::MatrixXd m_gram_mat
Gram matrix, which defind Mahalanobis scalar product.
double evaluate(const Configuration &_config) const override
void init(const Configuration &_tmplt) const override
std::string m_selection
specifies which selection to use as the population
Eigen::VectorXd m_avg_corr
The average correlation vector of the population.
A DatumFormatter class to measure the 'novelty' of a configuration with respect to a population of co...
Novelty * _clone() const override
Clone.
std::string short_header(const Configuration &_config) const override
DataFormatter< Configuration > m_format
Formatter which is used to obtain correlations.
A Configuration represents the values of all degrees of freedom in a Supercell.
std::unique_ptr< Novelty > clone() const