CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <BasicStructure.hh>
BasicStructure specifies the lattice and atomic basis of a crystal.
Definition at line 32 of file BasicStructure.hh.
Public Member Functions | |
BasicStructure (const Lattice &init_lat) | |
BasicStructure () | |
BasicStructure (const BasicStructure &RHS) | |
~BasicStructure () | |
const Lattice & | lattice () const |
const std::vector< Site > & | basis () const |
std::vector< Site > & | set_basis () |
const std::string & | title () const |
DoFSet const & | global_dof (std::string const &dof_type) const |
std::map< DoFKey, DoFSet > const & | global_dofs () const |
BasicStructure & | operator= (const BasicStructure &RHS) |
void | within () |
Translate all basis sites so that they are inside the unit cell. More... | |
void | set_lattice (const Lattice &lattice, COORD_TYPE mode) |
void | set_title (std::string const &_title) |
Set the title of the structure. More... | |
void | set_global_dofs (std::map< DoFKey, DoFSet > const &new_dof_map) |
Manually set the global DoFs. More... | |
void | set_global_dofs (std::vector< DoFSet > const &new_dof_vec) |
Manually set the global DoFs. More... | |
void | set_basis (std::vector< Site > const &_basis, COORD_TYPE mode=CART) |
Manually set the basis sites. More... | |
void | push_back (Site const &_site, COORD_TYPE mode=CART) |
Manually set the basis sites. More... | |
bool | is_time_reversal_active () const |
Returns true if structure has attributes affected by time reversal. More... | |
BasicStructure & | operator+= (const Coordinate &shift) |
Translates all atoms in cell. More... | |
BasicStructure & | operator-= (const Coordinate &shift) |
Index | max_possible_vacancies () const |
Counts sites that allow vacancies. More... | |
void | print_xyz (std::ostream &stream, bool frac=false) const |
Output other formats. More... | |
Static Public Member Functions | |
static BasicStructure | from_poscar_stream (std::istream &poscar_stream, double tol=TOL) |
Protected Attributes | |
Lattice | m_lattice |
std::string | m_title |
User-specified name of this Structure. More... | |
std::vector< Site > | m_basis |
Lattice vectors that specifies periodicity of the crystal. More... | |
std::map< DoFKey, DoFSet > | m_global_dof_map |
continuous global degrees of freedom More... | |
Private Member Functions | |
void | main_print (std::ostream &stream, COORD_TYPE mode, bool version5, int option) const |
void | read (std::istream &stream, double tol=TOL) |
|
inline |
Definition at line 55 of file BasicStructure.hh.
|
inline |
Definition at line 56 of file BasicStructure.hh.
CASM::xtal::BasicStructure::BasicStructure | ( | const BasicStructure & | RHS | ) |
Have to explicitly define the copy constructor so that sites in the new structure do not depend on the lattice of 'RHS'
Definition at line 27 of file BasicStructure.cc.
|
inline |
Definition at line 65 of file BasicStructure.hh.
|
inline |
Definition at line 71 of file BasicStructure.hh.
|
static |
Definition at line 18 of file BasicStructure.cc.
DoFSet const & CASM::xtal::BasicStructure::global_dof | ( | std::string const & | dof_type | ) | const |
Definition at line 53 of file BasicStructure.cc.
Definition at line 79 of file BasicStructure.hh.
bool CASM::xtal::BasicStructure::is_time_reversal_active | ( | ) | const |
Returns true if structure has attributes affected by time reversal.
Definition at line 323 of file BasicStructure.cc.
|
inline |
Definition at line 69 of file BasicStructure.hh.
|
private |
Index CASM::xtal::BasicStructure::max_possible_vacancies | ( | ) | const |
Counts sites that allow vacancies.
Definition at line 108 of file BasicStructure.cc.
BasicStructure & CASM::xtal::BasicStructure::operator+= | ( | const Coordinate & | shift | ) |
Translates all atoms in cell.
Definition at line 292 of file BasicStructure.cc.
BasicStructure & CASM::xtal::BasicStructure::operator-= | ( | const Coordinate & | shift | ) |
Definition at line 302 of file BasicStructure.cc.
BasicStructure & CASM::xtal::BasicStructure::operator= | ( | const BasicStructure & | RHS | ) |
Have to explicitly define the assignment operator so that sites in this structure do not depend on the lattice of 'RHS'
Definition at line 39 of file BasicStructure.cc.
void CASM::xtal::BasicStructure::print_xyz | ( | std::ostream & | stream, |
bool | frac = false |
||
) | const |
Output other formats.
Definition at line 269 of file BasicStructure.cc.
void CASM::xtal::BasicStructure::push_back | ( | Site const & | _site, |
COORD_TYPE | mode = CART |
||
) |
Manually set the basis sites.
Definition at line 101 of file BasicStructure.cc.
|
private |
Definition at line 121 of file BasicStructure.cc.
|
inline |
Definition at line 73 of file BasicStructure.hh.
void CASM::xtal::BasicStructure::set_basis | ( | std::vector< Site > const & | _basis, |
COORD_TYPE | mode = CART |
||
) |
Manually set the basis sites.
Allows for the basis elements of a basic structure to be manually set, e.g. as in jsonParser.cc.
Definition at line 94 of file BasicStructure.cc.
|
inline |
Manually set the global DoFs.
Definition at line 101 of file BasicStructure.hh.
|
inline |
Manually set the global DoFs.
Definition at line 106 of file BasicStructure.hh.
void CASM::xtal::BasicStructure::set_lattice | ( | const Lattice & | lattice, |
COORD_TYPE | mode | ||
) |
change the lattice and update site coordinates. Argument 'mode' specifies which mode is preserved e.g.: struc.set_lattice(new_lat, CART) calculates all Cartesian coordinates, invalidates the FRAC coordinates, and changes the lattice
Definition at line 74 of file BasicStructure.cc.
void CASM::xtal::BasicStructure::set_title | ( | std::string const & | _title | ) |
Set the title of the structure.
Definition at line 84 of file BasicStructure.cc.
|
inline |
Definition at line 75 of file BasicStructure.hh.
void CASM::xtal::BasicStructure::within | ( | ) |
Translate all basis sites so that they are inside the unit cell.
Definition at line 65 of file BasicStructure.cc.
|
protected |
Lattice vectors that specifies periodicity of the crystal.
Definition at line 40 of file BasicStructure.hh.
continuous global degrees of freedom
Definition at line 43 of file BasicStructure.hh.
|
protected |
Definition at line 34 of file BasicStructure.hh.
|
protected |
User-specified name of this Structure.
Definition at line 37 of file BasicStructure.hh.