CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CASM::xtal::UnitCellCoord Class Reference

#include <UnitCellCoord.hh>

+ Inheritance diagram for CASM::xtal::UnitCellCoord:

Detailed Description

Unit Cell Coordinates.

  • Represent a crystal site using UnitCell indices and sublattice index

Definition at line 120 of file UnitCellCoord.hh.

Public Types

typedef BasicStructure PrimType
 
typedef Base::MostDerived MostDerived
 

Public Member Functions

 UnitCellCoord (Index _sublat, const UnitCell &_unitcell)
 
 UnitCellCoord (Index _sublat, Index i, Index j, Index k)
 
 UnitCellCoord ()
 
 UnitCellCoord (const UnitCellCoord &B)=default
 
UnitCellCoordoperator= (const UnitCellCoord &B)=default
 
 UnitCellCoord (UnitCellCoord &&B)=default
 
UnitCellCoordoperator= (UnitCellCoord &&B)=default
 
const UnitCellunitcell () const
 
Index sublattice () const
 
Coordinate coordinate (const PrimType &prim) const
 Get corresponding coordinate. More...
 
Site site (const PrimType &prim) const
 Get a copy of corresponding site. More...
 
const Sitesublattice_site (const PrimType &prim) const
 Get reference to corresponding sublattice site in the unit structure. More...
 
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
 

Static Public Member Functions

static UnitCellCoord from_coordinate (const PrimType &, const Coordinate &coord, double tol)
 

Protected Member Functions

bool eq_impl (const MostDerived &B) const
 
bool ne_impl (const MostDerived &B) const
 

Private Member Functions

UnitCell_unitcell ()
 
Index_sublattice ()
 
bool _is_compatible_with_prim (const PrimType &prim) const
 

Static Private Member Functions

static void _throw_incompatible_primitive_cell ()
 

Private Attributes

UnitCell m_unitcell
 
Index m_sublat
 

Friends

struct Comparisons< Translatable< CRTPBase< UnitCellCoord > > >
 make _eq accessible More...
 
Index operator[] (Index i) const
 
UnitCellCoordoperator+= (UnitCell frac)
 
bool operator< (const UnitCellCoord &B) const
 Compare UnitCellCoord. More...
 
bool eq_impl (const UnitCellCoord &B) const
 

Member Typedef Documentation

◆ MostDerived

template<typename Base >
typedef Base::MostDerived notstd::Comparisons< Base >::MostDerived
inherited

Definition at line 27 of file Comparisons.hh.

◆ PrimType

Constructor & Destructor Documentation

◆ UnitCellCoord() [1/5]

CASM::xtal::UnitCellCoord::UnitCellCoord ( Index  _sublat,
const UnitCell _unitcell 
)
inline

Definition at line 125 of file UnitCellCoord.hh.

◆ UnitCellCoord() [2/5]

CASM::xtal::UnitCellCoord::UnitCellCoord ( Index  _sublat,
Index  i,
Index  j,
Index  k 
)
inline

Definition at line 134 of file UnitCellCoord.hh.

◆ UnitCellCoord() [3/5]

CASM::xtal::UnitCellCoord::UnitCellCoord ( )
inlineexplicit

Definition at line 137 of file UnitCellCoord.hh.

◆ UnitCellCoord() [4/5]

CASM::xtal::UnitCellCoord::UnitCellCoord ( const UnitCellCoord B)
default

◆ UnitCellCoord() [5/5]

CASM::xtal::UnitCellCoord::UnitCellCoord ( UnitCellCoord &&  B)
default

Member Function Documentation

◆ _is_compatible_with_prim()

bool CASM::xtal::UnitCellCoord::_is_compatible_with_prim ( const PrimType prim) const
private

Returns false if the sublattice of *this is greater than the number of sites in the given prmitive structure

Definition at line 78 of file UnitCellCoord.cc.

◆ _sublattice()

Index& CASM::xtal::UnitCellCoord::_sublattice ( )
inlineprivate

Definition at line 176 of file UnitCellCoord.hh.

◆ _throw_incompatible_primitive_cell()

void CASM::xtal::UnitCellCoord::_throw_incompatible_primitive_cell ( )
staticprivate

Definition at line 82 of file UnitCellCoord.cc.

◆ _unitcell()

UnitCell& CASM::xtal::UnitCellCoord::_unitcell ( )
inlineprivate

Definition at line 174 of file UnitCellCoord.hh.

◆ coordinate()

Coordinate CASM::xtal::UnitCellCoord::coordinate ( const PrimType prim) const

Get corresponding coordinate.

Definition at line 74 of file UnitCellCoord.cc.

◆ eq_impl() [1/2]

template<typename Base >
bool notstd::Comparisons< Base >::eq_impl ( const MostDerived B) const
inlineprotectedinherited

Definition at line 40 of file Comparisons.hh.

◆ eq_impl() [2/2]

bool CASM::xtal::UnitCellCoord::eq_impl ( const UnitCellCoord B) const
inlineprivate

Definition at line 225 of file UnitCellCoord.hh.

◆ from_coordinate()

UnitCellCoord CASM::xtal::UnitCellCoord::from_coordinate ( const PrimType prim,
const Coordinate coord,
double  tol 
)
static

Definition at line 54 of file UnitCellCoord.cc.

◆ ne_impl()

template<typename Base >
bool notstd::Comparisons< Base >::ne_impl ( const MostDerived B) const
inlineprotectedinherited

Definition at line 44 of file Comparisons.hh.

◆ operator!=()

template<typename Base >
bool notstd::Comparisons< Base >::operator!= ( const MostDerived B) const
inlineinherited

Definition at line 37 of file Comparisons.hh.

◆ operator+=()

UnitCellCoord & CASM::xtal::UnitCellCoord::operator+= ( UnitCell  frac)
inline

Definition at line 202 of file UnitCellCoord.hh.

◆ operator<()

bool CASM::xtal::UnitCellCoord::operator< ( const UnitCellCoord B) const
inline

Compare UnitCellCoord.

Definition at line 208 of file UnitCellCoord.hh.

◆ operator<=()

template<typename Base >
bool notstd::Comparisons< Base >::operator<= ( const MostDerived B) const
inlineinherited

Definition at line 31 of file Comparisons.hh.

◆ operator=() [1/2]

UnitCellCoord& CASM::xtal::UnitCellCoord::operator= ( const UnitCellCoord B)
default

◆ operator=() [2/2]

UnitCellCoord& CASM::xtal::UnitCellCoord::operator= ( UnitCellCoord &&  B)
default

◆ operator==()

template<typename Base >
bool notstd::Comparisons< Base >::operator== ( const MostDerived B) const
inlineinherited

Definition at line 35 of file Comparisons.hh.

◆ operator>()

template<typename Base >
bool notstd::Comparisons< Base >::operator> ( const MostDerived B) const
inlineinherited

Definition at line 29 of file Comparisons.hh.

◆ operator>=()

template<typename Base >
bool notstd::Comparisons< Base >::operator>= ( const MostDerived B) const
inlineinherited

Definition at line 33 of file Comparisons.hh.

◆ operator[]()

Index CASM::xtal::UnitCellCoord::operator[] ( Index  i) const
inline

Definition at line 195 of file UnitCellCoord.hh.

◆ site()

Site CASM::xtal::UnitCellCoord::site ( const PrimType prim) const

Get a copy of corresponding site.

Get corresponding site.

Definition at line 88 of file UnitCellCoord.cc.

◆ sublattice()

Index CASM::xtal::UnitCellCoord::sublattice ( ) const
inline

Definition at line 152 of file UnitCellCoord.hh.

◆ sublattice_site()

const Site & CASM::xtal::UnitCellCoord::sublattice_site ( const PrimType prim) const

Get reference to corresponding sublattice site in the unit structure.

Definition at line 97 of file UnitCellCoord.cc.

◆ unitcell()

const UnitCell& CASM::xtal::UnitCellCoord::unitcell ( ) const
inline

Definition at line 150 of file UnitCellCoord.hh.

Friends And Related Function Documentation

◆ Comparisons< Translatable< CRTPBase< UnitCellCoord > > >

friend struct Comparisons< Translatable< CRTPBase< UnitCellCoord > > >
friend

make _eq accessible

Definition at line 168 of file UnitCellCoord.hh.

Member Data Documentation

◆ m_sublat

Index CASM::xtal::UnitCellCoord::m_sublat
private

Definition at line 188 of file UnitCellCoord.hh.

◆ m_unitcell

UnitCell CASM::xtal::UnitCellCoord::m_unitcell
private

Definition at line 187 of file UnitCellCoord.hh.


The documentation for this class was generated from the following files: