CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <ClusterSpecs.hh>
Parameters most commonly used for periodic orbit generation
See member variables for descriptions
Definition at line 101 of file ClusterSpecs.hh.
Public Types | |
typedef std::vector< IntegralCluster > | IntegralClusterVec |
typedef std::vector< PrimPeriodicOrbit< IntegralCluster > > | PeriodicOrbitVec |
typedef std::vector< LocalOrbit< IntegralCluster > > | LocalOrbitVec |
Public Member Functions | |
PeriodicMaxLengthClusterSpecs (std::shared_ptr< Structure const > _shared_prim, SymGroup const &_generating_group, SiteFilterFunction const &_site_filter, std::vector< double > const &_max_length, std::vector< IntegralClusterOrbitGenerator > const &_custom_generators={}) | |
Constructor. More... | |
std::string | name () const |
This is the orbit generation method name. More... | |
CLUSTER_PERIODICITY_TYPE | periodicity_type () const |
PeriodicOrbitVec | make_periodic_orbits (IntegralClusterVec const &generating_elements) const |
PeriodicOrbitVec | make_periodic_orbits (std::ostream &status) const |
LocalOrbitVec | make_local_orbits (IntegralClusterVec const &generating_elements) const |
LocalOrbitVec | make_local_orbits (std::ostream &status) const |
std::unique_ptr< Cloneable > | clone () const |
std::unique_ptr< Cloneable > | move () |
Public Attributes | |
std::shared_ptr< Structure const > | shared_prim |
The prim. More... | |
SymGroup | generating_group |
PrimPeriodicSymCompare< IntegralCluster > | sym_compare |
The comparisons used for orbit generation. More... | |
SiteFilterFunction | site_filter |
std::vector< double > | max_length |
std::vector< IntegralClusterOrbitGenerator > | custom_generators |
Specifies particular clusters that should be used to generate orbits. More... | |
Static Public Attributes | |
static std::string const | method_name |
Private Member Functions | |
std::string | _name () const override |
CLUSTER_PERIODICITY_TYPE | _periodicity_type () const override |
PeriodicOrbitVec | _make_periodic_orbits (IntegralClusterVec const &generating_elements) const override |
PeriodicOrbitVec | _make_periodic_orbits (std::ostream &status) const override |
virtual LocalOrbitVec | _make_local_orbits (IntegralClusterVec const &generating_elements) const |
virtual LocalOrbitVec | _make_local_orbits (std::ostream &status) const |
virtual Cloneable * | _clone () const =0 |
virtual Cloneable * | _move ()=0 |
|
inherited |
Definition at line 37 of file ClusterSpecs.hh.
|
inherited |
Definition at line 39 of file ClusterSpecs.hh.
|
inherited |
Definition at line 38 of file ClusterSpecs.hh.
CASM::PeriodicMaxLengthClusterSpecs::PeriodicMaxLengthClusterSpecs | ( | std::shared_ptr< Structure const > | _shared_prim, |
SymGroup const & | _generating_group, | ||
SiteFilterFunction const & | _site_filter, | ||
std::vector< double > const & | _max_length, | ||
std::vector< IntegralClusterOrbitGenerator > const & | _custom_generators = {} |
||
) |
Constructor.
Definition at line 71 of file ClusterSpecs.cc.
|
privatepure virtualinherited |
|
privatevirtualinherited |
Reimplemented in CASM::GenericLocalClusterSpecs, and CASM::LocalMaxLengthClusterSpecs.
Definition at line 54 of file ClusterSpecs.cc.
|
privatevirtualinherited |
Reimplemented in CASM::GenericLocalClusterSpecs, and CASM::LocalMaxLengthClusterSpecs.
Definition at line 62 of file ClusterSpecs.cc.
|
overrideprivatevirtual |
Reimplemented from CASM::ClusterSpecs.
Definition at line 97 of file ClusterSpecs.cc.
|
overrideprivatevirtual |
Reimplemented from CASM::ClusterSpecs.
Definition at line 103 of file ClusterSpecs.cc.
|
privatepure virtualinherited |
|
overrideprivatevirtual |
Implements CASM::ClusterSpecs.
Definition at line 89 of file ClusterSpecs.cc.
|
overrideprivatevirtual |
Implements CASM::ClusterSpecs.
Definition at line 91 of file ClusterSpecs.cc.
|
inlineinherited |
Definition at line 92 of file cloneable_ptr.hh.
|
inherited |
Definition at line 30 of file ClusterSpecs.cc.
|
inherited |
Definition at line 35 of file ClusterSpecs.cc.
|
inherited |
Definition at line 20 of file ClusterSpecs.cc.
|
inherited |
Definition at line 25 of file ClusterSpecs.cc.
|
inlineinherited |
Definition at line 95 of file cloneable_ptr.hh.
|
inherited |
This is the orbit generation method name.
Definition at line 14 of file ClusterSpecs.cc.
|
inherited |
Definition at line 16 of file ClusterSpecs.cc.
std::vector<IntegralClusterOrbitGenerator> CASM::PeriodicMaxLengthClusterSpecs::custom_generators |
Specifies particular clusters that should be used to generate orbits.
Definition at line 142 of file ClusterSpecs.hh.
SymGroup CASM::PeriodicMaxLengthClusterSpecs::generating_group |
The group used to generate orbits, most commonly shared_prim->factor_group()
Definition at line 119 of file ClusterSpecs.hh.
std::vector<double> CASM::PeriodicMaxLengthClusterSpecs::max_length |
Specifies filter for truncating orbits, by orbit branch. The value max_length[b], is the max site-to-site distance for clusters to be included in branch b.
Notes:
Definition at line 139 of file ClusterSpecs.hh.
|
static |
Definition at line 104 of file ClusterSpecs.hh.
std::shared_ptr<Structure const> CASM::PeriodicMaxLengthClusterSpecs::shared_prim |
The prim.
Definition at line 115 of file ClusterSpecs.hh.
SiteFilterFunction CASM::PeriodicMaxLengthClusterSpecs::site_filter |
A filter which excludes sites that are part of the unit cell neighborhood from being included in orbits. If site_filter(site)==true
, then the site is included, else excluded.
Definition at line 127 of file ClusterSpecs.hh.
PrimPeriodicSymCompare<IntegralCluster> CASM::PeriodicMaxLengthClusterSpecs::sym_compare |
The comparisons used for orbit generation.
Definition at line 122 of file ClusterSpecs.hh.