24 clex.
parse_args(
"formation_energy,per_species");
40 "Whether configuration is a vertex on the formation_energy convex hull (i.e., is a groundstate)."
41 " Only one Configuration out of a set that have identical or almost identical points in"
42 " composition/energy space will return true."
43 " Accepts arguments ($selection,$composition,$dim_tol,$bottom_tol)."
44 " ($selection may be one of: <filename>, 'ALL', 'CALCULATED', 'MASTER' <--default)"
45 " ($composition may be one of: 'comp', 'atom_frac' <--default)"
46 " ($dim_tol: tolerance for detecting composition dimensionality, default=1e-8)"
47 " ($bottom_tol: tolerance for detecting which facets form the convex hull bottom, default=1e-8)"
48 " For 'comp', 'formation_energy' is used. For 'atom_frac', 'formation_energy_per_atom' is used."
49 " Ex: on_hull, on_hull(MASTER,comp).";
65 orgQhull::QhullVertexList vertices =
_hull().
data().vertexList();
66 for(
auto it = vertices.begin(); it != vertices.end(); ++it) {
80 "Distance, in eV, of a configuration's formation_energy_per_atom above the convex hull."
81 " Accepts arguments ($selection,$composition,$dim_tol,$bottom_tol)."
82 " ($selection may be one of: <filename>, 'ALL', 'CALCULATED', 'MASTER' <--default)"
83 " ($composition may be one of: 'comp', 'atom_frac' <--default)."
84 " ($dim_tol: tolerance for detecting composition dimensionality, default=1e-8)"
85 " ($bottom_tol: tolerance for detecting which facets form the convex hull bottom, default=1e-8)"
86 " For 'comp', 'formation_energy' is used. For 'atom_frac', 'formation_energy_per_atom' is used."
87 " Ex: hull_dist, hull_dist(MASTER,comp).";
111 "Whether configuration is a vertex on the *cluster-expanded* formation_energy "
112 "convex hull (i.e., is a *predicted* groundstate)."
113 " Only one Configuration out of a set that have identical or almost identical points in"
114 " composition/energy space will return true."
115 " Accepts arguments ($selection,$composition,$dim_tol,$bottom_tol)."
116 " ($selection may be one of: <filename>, 'ALL', 'CALCULATED', 'MASTER' <--default)"
117 " ($composition may be one of: 'comp', 'atom_frac' <--default)"
118 " ($dim_tol: tolerance for detecting composition dimensionality, default=1e-8)"
119 " ($bottom_tol: tolerance for detecting which facets form the convex hull bottom, default=1e-8)"
120 " For 'comp', 'clex(formation_energy)' is used. For 'atom_frac', 'clex(formation_energy_per_atom)' is used."
121 " Ex: clex_hull_dist, clex_hull_dist(MASTER,comp).";
140 orgQhull::QhullVertexList vertices =
_hull().
data().vertexList();
141 for(
auto it = vertices.begin(); it != vertices.end(); ++it) {
155 "Distance, in eV, of a configuration's *cluster-expanded* "
156 "formation_energy_per_atom above the convex hull."
157 " Accepts arguments ($selection,$composition,$dim_tol,$bottom_tol)."
158 " ($selection may be one of: <filename>, 'ALL', 'CALCULATED', 'MASTER' <--default)"
159 " ($composition may be one of: 'comp', 'atom_frac' <--default)"
160 " ($dim_tol: tolerance for detecting composition dimensionality, default=1e-8)"
161 " ($bottom_tol: tolerance for detecting which facets form the convex hull bottom, default=1e-8)"
162 " For 'comp', 'clex(formation_energy)' is used. For 'atom_frac', 'clex(formation_energy_per_atom)' is used."
163 " Ex: clex_hull_dist, clex_hull_dist(MASTER,comp).";
AtomFrac SpeciesFrac
In the future, AtomFrac will actually be atoms only.
static const std::string Name
double dist_to_hull(const Configuration &config) const
The distance a Configuration is above the hull along the energy axis.
static const std::string Name
bool has_formation_energy(const Configuration &_config)
const orgQhull::Qhull & data() const
const Access the hull object directly
virtual bool validate(const Configuration &_config) const override
Validate that the Configuration has a cluster expanded formation energy per species.
const Configuration & configuration(const orgQhull::QhullPoint &point) const
Return the configuration corresponding to any point.
std::map< std::string, CalculatorPair > CalculatorOptions
Hull::CalculatorOptions clex_hull_calculator_options()
Returns a map containing default clex hull calculators.
bool parse_args(const std::string &args) override
Expects 'clex', 'clex(formation_energy)', or 'clex(formation_energy_per_species)'.
static const std::string Desc
double evaluate(const Configuration &_config) const override
Return the distance to the hull.
Calculate param composition of a Configuration.
static const std::string Desc
static const std::string Name
bool validate(const Configuration &_config) const override
Validate that the Configuration has a formation energy per species.
std::unique_ptr< T > clone(const T &obj, typename std::enable_if< has_clone< T >::value, T >::type *=nullptr)
virtual bool validate(const Configuration &_config) const override
Validate that the Configuration has a cluster expanded formation energy per species.
bool evaluate(const Configuration &_config) const override
Check if the Configuration is a hull vertex.
ConfigIO::GenericConfigFormatter< double > formation_energy()
std::string name() const
SCELV_A_B_C_D_E_F/i.
std::string default_hull_calculator()
Returns "atom_frac".
static constexpr double m_dist_to_hull_tol
static const std::string Desc
Returns predicted formation energy.
const Hull & _hull() const
const Access the Hull object
static const std::string Name
std::pair< notstd::cloneable_ptr< CompCalculator >, notstd::cloneable_ptr< EnergyCalculator > > CalculatorPair
bool validate(const Configuration &_config) const override
Validate that the Configuration has a formation energy per species.
Hull::CalculatorOptions hull_calculator_options()
Returns a map containing default hull calculators.
virtual double evaluate(const Configuration &_config) const override
Return the distance to the hull.
ClexHullDist()
Constructor.
std::unique_ptr< Clex > clone() const
Clone using copy constructor.
static const std::string Desc
Base class for hull info formatters.
virtual bool evaluate(const Configuration &_config) const override
Check if the Configuration is a hull vertex.
A Configuration represents the values of all degrees of freedom in a Supercell.
ConfigIO::GenericConfigFormatter< double > formation_energy_per_species()