17#ifndef SYMFNCSTATISTICS
18#define SYMFNCSTATISTICS
89 std::map<std::size_t, Container>
data;
103 void addValue(std::size_t index,
double value);
121 std::size_t indexStructure,
122 std::size_t indexAtom);
void clear()
Completely erase database.
std::vector< std::string > getExtrapolationWarningLines() const
Get lines with extrapolation warnings.
SymFncStatistics()
Constructor, initializes bool variables.
bool stopOnExtrapolationWarnings
Whether to raise an exception in case of extrapolation warnings.
std::map< std::size_t, Container > data
Map for all symmetry functions containing all gathered information.
void addValue(std::size_t index, double value)
Update symmetry function statistics with one value.
bool collectStatistics
Whether statistics are gathered.
void resetExtrapolationWarnings()
Reset extrapolation warnings for all symmetry functions at once.
void addExtrapolationWarning(std::size_t index, std::size_t type, double value, double Gmin, double Gmax, std::string element, std::size_t indexStructure, std::size_t indexAtom)
Add extrapolation warning entry.
std::size_t countExtrapolationWarnings() const
Count total number of extrapolation warnings.
bool collectExtrapolationWarnings
Whether extrapolation warnings are logged.
bool writeExtrapolationWarnings
Whether to write out extrapolation warnings immediately as they occur.
void resetStatistics()
Reset statistics for all symmetry functions at once.
Struct containing statistics gathered during symmetry function calculation.
void resetStatistics()
Reset only statistics.
void resetExtrapolationWarnings()
Reset only extrapolation warnings.
std::vector< std::size_t > indexStructureEW
Structure indices for which extrapolation warnings occured.
Container()
Constructor, initializes contents to zero.
void reset()
Reset all values.
std::vector< double > valueEW
Out-of-bounds values causing extrapolation warnings.
std::vector< std::size_t > indexAtomEW
Atom indices for which extrapolation warnings occured.
double min
Minimum symmetry function value encountered.
double sum2
Sum of squared symmetry function values (to compute sigma).
std::size_t countEW
Counts extrapolation warnings.
double sum
Sum of symmetry function values (to compute mean).
std::string element
Element string of central atom of symmetry function.
double Gmax
Maximum symmetry function from scaling data.
std::size_t type
Symmetry function type.
double max
Maximum symmetry function value encountered.
std::size_t count
Counts total number of symmetry function evaluations.
double Gmin
Minimum symmetry function from scaling data.