CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <IntegralCluster.hh>
Definition at line 37 of file IntegralCluster.hh.
Public Types | |
typedef Structure | PrimType |
typedef xtal::Translatable< GenericCluster< CRTPBase< IntegralCluster > > > | Base |
typedef Base::MostDerived | MostDerived |
typedef traits< MostDerived >::Element | Element |
typedef Index | size_type |
typedef std::vector< Element >::value_type | value_type |
typedef std::vector< Element >::iterator | iterator |
typedef std::vector< Element >::const_iterator | const_iterator |
Public Member Functions | |
IntegralCluster (PrimType const &prim) | |
template<typename Iterator > | |
IntegralCluster (PrimType const &prim, Iterator begin, Iterator end) | |
const PrimType & | prim () const |
std::vector< Element > & | elements () |
Access vector of elements. More... | |
const std::vector< Element > & | elements () const |
const Access vector of elements More... | |
xtal::Coordinate | coordinate (size_type i) const |
Return the coordinate corresponding to element(i) More... | |
IntegralCluster & | operator+= (xtal::UnitCell trans) |
Translate the cluster by a UnitCell translation. More... | |
MostDerived & | operator-= (UnitCell frac) |
MostDerived | operator+ (UnitCell frac) const |
MostDerived | operator- (UnitCell frac) const |
iterator | begin () |
Iterator to first element in the cluster. More... | |
const_iterator | begin () const |
Iterator to first element in the cluster. More... | |
iterator | end () |
Iterator to the past-the-last element in the cluster. More... | |
const_iterator | end () const |
Iterator to the past-the-last element in the cluster. More... | |
const_iterator | cbegin () const |
Iterator to first element in the cluster. More... | |
const_iterator | cend () const |
Iterator to the past-the-last element in the cluster. More... | |
size_type | size () const |
Number of elements in the cluster. More... | |
value_type & | operator[] (size_type index) |
Access an element in the cluster by index. More... | |
value_type const & | operator[] (size_type index) const |
Access an element in the cluster by index. More... | |
value_type & | element (size_type index) |
Access an element in the cluster by index. More... | |
value_type const & | element (size_type index) const |
Access a UnitCellCoord in the cluster by index. More... | |
MostDerived & | sort () |
MostDerived | sorted () const |
bool | is_sorted () const |
Permutation | sort_permutation () const |
bool | operator< (MostDerived const &B) const |
bool | operator> (const MostDerived &B) const |
bool | operator<= (const MostDerived &B) const |
bool | operator>= (const MostDerived &B) const |
bool | operator== (const MostDerived &B) const |
bool | operator!= (const MostDerived &B) const |
Protected Member Functions | |
MostDerived & | sort_impl () |
bool | is_sorted_impl () const |
Permutation | sort_permutation_impl () const |
bool | compare_impl (MostDerived const &B) const |
bool | eq_impl (const MostDerived &B) const |
bool | ne_impl (const MostDerived &B) const |
Protected Attributes | |
friend | GenericCluster< CRTPBase< IntegralCluster > > |
Private Attributes | |
std::vector< xtal::UnitCellCoord > | m_element |
const PrimType * | m_prim_ptr |
Related Functions | |
(Note that these are not member functions.) | |
template<typename OrbitOutputIterator > | |
OrbitOutputIterator | make_prim_periodic_asymmetric_unit (std::shared_ptr< Structure const > prim_ptr, SiteFilterFunction const &site_filter, double xtal_tol, OrbitOutputIterator result, std::ostream &status) |
Generate the prim periodic asymmetric unit. More... | |
template<typename OrbitOutputIterator > | |
OrbitOutputIterator | make_prim_periodic_orbits (std::shared_ptr< Structure const > prim_ptr, std::vector< double > const &max_length, std::vector< IntegralClusterOrbitGenerator > const &custom_generators, SiteFilterFunction const &site_filter, double xtal_tol, OrbitOutputIterator result, std::ostream &status) |
Generate Orbit<IntegralCluster> by specifying max cluster length for each branch. More... | |
template<typename OrbitType , typename OrbitOutputIterator > | |
OrbitOutputIterator | make_asymmetric_unit (const OrbitBranchSpecs< OrbitType > &specs, OrbitOutputIterator result, std::ostream &status) |
Generate the asymmetric unit, using OrbitBranchSpecs. More... | |
template<typename OrbitOutputIterator > | |
OrbitOutputIterator | make_prim_periodic_asymmetric_unit (std::shared_ptr< Structure const > prim_ptr, SiteFilterFunction const &site_filter, double xtal_tol, OrbitOutputIterator result, std::ostream &status) |
Generate the prim periodic asymmetric unit. More... | |
template<typename OrbitOutputIterator > | |
OrbitOutputIterator | make_prim_periodic_orbits (std::shared_ptr< Structure const > prim_ptr, std::vector< double > const &max_length, std::vector< IntegralClusterOrbitGenerator > const &custom_generators, SiteFilterFunction const &site_filter, double xtal_tol, OrbitOutputIterator result, std::ostream &status) |
Generate Orbit<IntegralCluster> by specifying max cluster length for each branch. More... | |
Definition at line 41 of file IntegralCluster.hh.
|
inherited |
Definition at line 57 of file GenericCluster.hh.
|
inherited |
Definition at line 52 of file GenericCluster.hh.
|
inherited |
Definition at line 56 of file GenericCluster.hh.
|
inherited |
Definition at line 98 of file UnitCellCoord.hh.
Definition at line 40 of file IntegralCluster.hh.
|
inherited |
Definition at line 53 of file GenericCluster.hh.
|
inherited |
Definition at line 55 of file GenericCluster.hh.
CASM::IntegralCluster::IntegralCluster | ( | PrimType const & | prim | ) |
Definition at line 8 of file IntegralCluster.cc.
CASM::IntegralCluster::IntegralCluster | ( | PrimType const & | prim, |
Iterator | begin, | ||
Iterator | end | ||
) |
Definition at line 73 of file IntegralCluster.hh.
|
inlineinherited |
Iterator to first element in the cluster.
Definition at line 60 of file GenericCluster.hh.
|
inlineinherited |
Iterator to first element in the cluster.
Definition at line 63 of file GenericCluster.hh.
|
inlineinherited |
Iterator to first element in the cluster.
Definition at line 72 of file GenericCluster.hh.
|
inlineinherited |
Iterator to the past-the-last element in the cluster.
Definition at line 75 of file GenericCluster.hh.
|
inlineprotectedinherited |
Definition at line 135 of file GenericCluster.hh.
xtal::Coordinate CASM::IntegralCluster::coordinate | ( | size_type | i | ) | const |
Return the coordinate corresponding to element(i)
Definition at line 25 of file IntegralCluster.cc.
|
inlineinherited |
Access an element in the cluster by index.
Definition at line 89 of file GenericCluster.hh.
|
inlineinherited |
Access a UnitCellCoord in the cluster by index.
Definition at line 92 of file GenericCluster.hh.
std::vector< xtal::UnitCellCoord > & CASM::IntegralCluster::elements | ( | ) |
Access vector of elements.
Definition at line 15 of file IntegralCluster.cc.
const std::vector< xtal::UnitCellCoord > & CASM::IntegralCluster::elements | ( | ) | const |
const Access vector of elements
Definition at line 20 of file IntegralCluster.cc.
|
inlineinherited |
Iterator to the past-the-last element in the cluster.
Definition at line 66 of file GenericCluster.hh.
|
inlineinherited |
Iterator to the past-the-last element in the cluster.
Definition at line 69 of file GenericCluster.hh.
|
inlineprotectedinherited |
Definition at line 40 of file Comparisons.hh.
|
inlineinherited |
Definition at line 103 of file GenericCluster.hh.
|
inlineprotectedinherited |
Definition at line 122 of file GenericCluster.hh.
|
inlineprotectedinherited |
Definition at line 44 of file Comparisons.hh.
|
inlineinherited |
Definition at line 37 of file Comparisons.hh.
|
inlineinherited |
Definition at line 103 of file UnitCellCoord.hh.
IntegralCluster & CASM::IntegralCluster::operator+= | ( | xtal::UnitCell | trans | ) |
Translate the cluster by a UnitCell translation.
Definition at line 30 of file IntegralCluster.cc.
|
inlineinherited |
Definition at line 108 of file UnitCellCoord.hh.
|
inlineinherited |
Definition at line 101 of file UnitCellCoord.hh.
|
inlineinherited |
Definition at line 109 of file GenericCluster.hh.
|
inlineinherited |
Definition at line 31 of file Comparisons.hh.
|
inlineinherited |
Definition at line 35 of file Comparisons.hh.
|
inlineinherited |
Definition at line 29 of file Comparisons.hh.
|
inlineinherited |
Definition at line 33 of file Comparisons.hh.
|
inlineinherited |
Access an element in the cluster by index.
Definition at line 81 of file GenericCluster.hh.
|
inlineinherited |
Access an element in the cluster by index.
Definition at line 84 of file GenericCluster.hh.
IntegralCluster::PrimType const & CASM::IntegralCluster::prim | ( | ) | const |
Definition at line 10 of file IntegralCluster.cc.
|
inlineinherited |
Number of elements in the cluster.
Definition at line 78 of file GenericCluster.hh.
|
inlineinherited |
Definition at line 96 of file GenericCluster.hh.
|
inlineprotectedinherited |
Definition at line 117 of file GenericCluster.hh.
|
inlineinherited |
Definition at line 105 of file GenericCluster.hh.
|
inlineprotectedinherited |
Definition at line 124 of file GenericCluster.hh.
|
inlineinherited |
Definition at line 98 of file GenericCluster.hh.
|
related |
Generate the asymmetric unit, using OrbitBranchSpecs.
specs | OrbitBranchSpecs for the asymmetric unit |
result | An output iterator for orbits of IntegralCluster |
Definition at line 427 of file ClusterOrbits_impl.hh.
|
related |
Generate the prim periodic asymmetric unit.
prim | A PrimType |
site_filter | A filter function that returns true for Site that should be considered for the neighborhood (i.e. to check the number of components) |
xtal_tol | Crystallography tolerance |
result | An output iterator for orbits of IntegralCluster |
status | Stream for status messages |
|
related |
Generate the prim periodic asymmetric unit.
prim | A PrimType |
site_filter | A filter function that returns true for Site that should be considered for the neighborhood (i.e. to check the number of components) |
xtal_tol | Crystallography tolerance |
result | An output iterator for orbits of IntegralCluster |
status | Stream for status messages |
Definition at line 584 of file ClusterOrbits_impl.hh.
|
related |
Generate Orbit<IntegralCluster> by specifying max cluster length for each branch.
prim | Primitive structure |
max_length | vector of max_length of pairs of cluster sites. Expects that max_length[b] is the max_length for orbit branch b. The values for the null cluster and point clusters are ignored. |
custom_generators | A vector of custom orbit generating clusters |
site_filter | A filter function that returns true for Site that should be considered for the neighborhood (i.e. to check the number of components) |
xtal_tol | Crystallography tolerance |
result | An output iterator for Orbit |
status | Stream for status messages |
|
related |
Generate Orbit<IntegralCluster> by specifying max cluster length for each branch.
prim | Primitive structure |
max_length | vector of max_length of pairs of cluster sites. Expects that max_length[b] is the max_length for orbit branch b. The values for the null cluster and point clusters are ignored. |
custom_generators | A vector of custom orbit generating clusters |
site_filter | A filter function that returns true for Site that should be considered for the neighborhood (i.e. to check the number of components) |
xtal_tol | Crystallography tolerance |
result | An output iterator for Orbit |
status | Stream for status messages |
Definition at line 633 of file ClusterOrbits_impl.hh.
|
protected |
Definition at line 65 of file IntegralCluster.hh.
|
private |
Definition at line 68 of file IntegralCluster.hh.
|
private |
Definition at line 69 of file IntegralCluster.hh.