CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
Represents a supercell of the primitive parent crystal structure.
Modules | |
Supercell Enumerators | |
Enumerates Supercell. | |
Classes | |
class | CASM::Supercell |
Represents a supercell of the primitive parent crystal structure. More... | |
Functions | |
std::string | CASM::make_supercell_name (Structure const &prim, xtal::Superlattice const &superlattice) |
Make the supercell name from a Superlattice. More... | |
std::string | CASM::make_canonical_supercell_name (Structure const &prim, xtal::Superlattice const &superlattice) |
Make the canonical supercell name from a Superlattice. More... | |
xtal::Superlattice | CASM::make_superlattice_from_supercell_name (Structure const &prim, std::string supercell_name) |
Construct a Superlattice from the supercell name. More... | |
Supercell & | CASM::apply (const SymOp &op, Supercell &scel) |
Apply symmetry operation to Supercell. More... | |
Supercell | CASM::copy_apply (const SymOp &op, const Supercell &scel) |
Copy and apply symmetry operation to Supercell. More... | |
const Supercell & | CASM::make_supercell (const PrimClex &primclex, std::string name) |
std::shared_ptr< Supercell > | CASM::make_shared_supercell (const PrimClex &primclex, std::string name) |
Eigen::Matrix3l | CASM::transf_mat (const Lattice &prim_lat, const Lattice &super_lat) |
std::string | CASM::generate_name (const Eigen::Matrix3l &transf_mat) |
Make hermite normal form name [deprecated]. More... | |
std::string | CASM::scelname (const Structure &prim, const Lattice &superlat) |
Make supercell name name [deprecated]. More... | |
std::string | CASM::canonical_scelname (const Structure &prim, const Lattice &superlat) |
Make canonical supercell name name [deprecated]. More... | |
Apply symmetry operation to Supercell.
Definition at line 357 of file Supercell.cc.
Make canonical supercell name name [deprecated].
Definition at line 510 of file Supercell.cc.
std::string CASM::generate_name | ( | const Eigen::Matrix3l & | transf_mat | ) |
Make hermite normal form name [deprecated].
Definition at line 482 of file Supercell.cc.
std::string CASM::make_canonical_supercell_name | ( | Structure const & | prim, |
xtal::Superlattice const & | superlattice | ||
) |
Make the canonical supercell name from a Superlattice.
Definition at line 343 of file Supercell.cc.
std::shared_ptr< Supercell > CASM::make_shared_supercell | ( | const PrimClex & | primclex, |
std::string | name | ||
) |
Construct non-canonical supercell from name. Uses equivalent niggli lattice. [deprecated]
Definition at line 433 of file Supercell.cc.
Get canonical supercell from name. If not yet in database, construct and insert. [deprecated]
Note: does not commit the change in the database
Definition at line 378 of file Supercell.cc.
std::string CASM::make_supercell_name | ( | Structure const & | prim, |
xtal::Superlattice const & | superlattice | ||
) |
Make the supercell name from a Superlattice.
Make the supercell name from a Superlattice
For supercells that are equivalent to the canonical supercell:
SCELV_A_B_C_D_E_F
, where 'V' is supercell volume (number of unit cells), and 'A-F' are the six non-zero elements of the hermite normal form of the supercell transformation matrix (T00, T11, T22, T12, T02, T01)For supercells that are not equivalent to the canonical supercell:
$CANON_SCELNAME.$FG_INDEX
where CANON_SCELNAME is the supercell name for the canonical equivalent supercell and FG_INDEX is the index of the prim factor group operation which is applied to the canonical supercell to construct the non-canonical supercell. Definition at line 336 of file Supercell.cc.
xtal::Superlattice CASM::make_superlattice_from_supercell_name | ( | Structure const & | prim, |
std::string | supercell_name | ||
) |
Construct a Superlattice from the supercell name.
Definition at line 350 of file Supercell.cc.
Make supercell name name [deprecated].
Definition at line 497 of file Supercell.cc.
Eigen::Matrix3l CASM::transf_mat | ( | const Lattice & | prim_lat, |
const Lattice & | super_lat | ||
) |