CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <MonteCarloEnum.hh>
Definition at line 43 of file MonteCarloEnum.hh.
Public Types | |
typedef HallOfFame< Configuration, MonteCarloEnumMetric > | HallOfFameType |
Public Member Functions | |
template<typename MonteTypeSettings , typename MonteCarloType > | |
MonteCarloEnum (const PrimClex &primclex, const MonteTypeSettings &settings, Log &log, MonteCarloType &mc) | |
const PrimClex & | primclex () const |
const Access the PrimClex that *this is based on More... | |
bool | on_accept () const |
Check if enumeration is requested after every acceptance. More... | |
bool | on_sample () const |
Check if enumeration is requested after every sample. More... | |
HallOfFameType::InsertResult | insert (const Configuration &config) |
Attempt to insert (canonical) Configuration into enumeration hall of fame. More... | |
void | clear () |
Clear hall of fame. More... | |
const HallOfFameType & | halloffame () const |
const Access the enumeration hall of fame More... | |
void | save_configs () |
Save configurations in the hall of fame to the config list. More... | |
std::string | check_args () const |
std::string | metric_args () const |
void | print_info () const |
bool | debug () const |
return true if running in debug mode More... | |
bool | check_existence () const |
If true, insert configurations in canonical form. More... | |
bool | insert_canonical () const |
Map for faster? access of PrimClex's supercells. More... | |
void | reset () |
Clear hall of fame and reset excluded. More... | |
Private Member Functions | |
MonteCarloEnum::HallOfFameType::InsertResult | _insert (const Configuration &config) |
Insert in hall of fame if 'check' passes. More... | |
HallOfFameType & | _halloffame () |
Log & | _log () const |
Private Attributes | |
const PrimClex & | m_primclex |
PrimClex for this system. More... | |
Log & | m_log |
Target for messages. More... | |
ENUM_SAMPLE_MODE | m_sample_mode |
when to attempt to insert configurations in the hall of fame More... | |
bool | m_debug |
std::string | m_check_args |
std::string | m_metric_args |
notstd::cloneable_ptr< HallOfFameType > | m_halloffame |
Use for enumerating configurations via Monte Carlo. More... | |
notstd::cloneable_ptr< MonteCarloEnumCheck > | m_enum_check |
Use for enumerating configurations via Monte Carlo. More... | |
bool | m_check_existence |
If true, only keep configurations that are not enumerated already. More... | |
bool | m_insert_canonical |
If true, insert configurations in canonical form. More... | |
std::map< std::string, Supercell * > | m_canon_scel |
Map for faster? access of PrimClex's supercells. More... | |
DataFormatterDictionary< Configuration > | m_dict |
Used for various purposes. More... | |
std::map< std::string, std::pair< bool, double > > | m_data |
holds 'is_new, score' data More... | |
Definition at line 45 of file MonteCarloEnum.hh.
template CASM::Monte::MonteCarloEnum::MonteCarloEnum | ( | const PrimClex & | primclex, |
const MonteTypeSettings & | settings, | ||
Log & | log, | ||
MonteCarloType & | mc | ||
) |
Definition at line 14 of file MonteCarloEnum_impl.hh.
|
private |
Definition at line 171 of file MonteCarloEnum.cc.
|
private |
Insert in hall of fame if 'check' passes.
Definition at line 10 of file MonteCarloEnum.cc.
|
inlineprivate |
Definition at line 108 of file MonteCarloEnum.hh.
|
inline |
Definition at line 81 of file MonteCarloEnum.hh.
|
inline |
If true, insert configurations in canonical form.
If m_check_existence == true, this must be true
Definition at line 93 of file MonteCarloEnum.hh.
|
inline |
Clear hall of fame.
Definition at line 69 of file MonteCarloEnum.hh.
|
inline |
return true if running in debug mode
Definition at line 88 of file MonteCarloEnum.hh.
const MonteCarloEnum::HallOfFameType & CASM::Monte::MonteCarloEnum::halloffame | ( | ) | const |
const Access the enumeration hall of fame
Definition at line 73 of file MonteCarloEnum.cc.
MonteCarloEnum::HallOfFameType::InsertResult CASM::Monte::MonteCarloEnum::insert | ( | const Configuration & | config | ) |
Attempt to insert (canonical) Configuration into enumeration hall of fame.
Attempt to insert Configuration into enumeration hall of fame.
Configurations are only inserted into hall of fame if:
Definition at line 28 of file MonteCarloEnum.cc.
|
inline |
Map for faster? access of PrimClex's supercells.
Definition at line 96 of file MonteCarloEnum.hh.
|
inline |
Definition at line 83 of file MonteCarloEnum.hh.
|
inline |
Check if enumeration is requested after every acceptance.
Definition at line 55 of file MonteCarloEnum.hh.
|
inline |
Check if enumeration is requested after every sample.
Definition at line 60 of file MonteCarloEnum.hh.
|
inline |
const Access the PrimClex that *this is based on
Definition at line 52 of file MonteCarloEnum.hh.
void CASM::Monte::MonteCarloEnum::print_info | ( | ) | const |
Definition at line 143 of file MonteCarloEnum.cc.
void CASM::Monte::MonteCarloEnum::reset | ( | ) |
Clear hall of fame and reset excluded.
Definition at line 161 of file MonteCarloEnum.cc.
void CASM::Monte::MonteCarloEnum::save_configs | ( | ) |
Save configurations in the hall of fame to the config list.
Definition at line 83 of file MonteCarloEnum.cc.
|
mutableprivate |
Map for faster? access of PrimClex's supercells.
Definition at line 140 of file MonteCarloEnum.hh.
|
private |
Definition at line 122 of file MonteCarloEnum.hh.
|
private |
If true, only keep configurations that are not enumerated already.
Definition at line 132 of file MonteCarloEnum.hh.
|
private |
holds 'is_new, score' data
Definition at line 146 of file MonteCarloEnum.hh.
|
private |
Definition at line 120 of file MonteCarloEnum.hh.
|
private |
Used for various purposes.
Definition at line 143 of file MonteCarloEnum.hh.
|
private |
Use for enumerating configurations via Monte Carlo.
Definition at line 129 of file MonteCarloEnum.hh.
|
mutableprivate |
Use for enumerating configurations via Monte Carlo.
Definition at line 126 of file MonteCarloEnum.hh.
|
private |
If true, insert configurations in canonical form.
If m_check_existence == true, this must be true
Definition at line 137 of file MonteCarloEnum.hh.
|
private |
Target for messages.
Definition at line 114 of file MonteCarloEnum.hh.
|
private |
Definition at line 123 of file MonteCarloEnum.hh.
|
private |
PrimClex for this system.
Definition at line 111 of file MonteCarloEnum.hh.
|
private |
when to attempt to insert configurations in the hall of fame
Definition at line 117 of file MonteCarloEnum.hh.