CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CASM::PrimClex Class Reference

#include <PrimClex.hh>

Detailed Description

PrimClex is the top-level data structure for a CASM project.

The PrimClex provides access to:

  • the parent crystal structure, the prim
  • project files & settings
  • composition axes & references
  • supercells & configurations
  • clusters, basis sets, neighbor lists, & ECI

Definition at line 55 of file PrimClex.hh.

Classes

struct  PrimClexData
 

Public Types

typedef Structure PrimType
 

Public Member Functions

 PrimClex (ProjectSettings const &_project_settings, std::shared_ptr< PrimType const > _shared_prim)
 Initial construction of a PrimClex, from ProjectSettings and shared prim. More...
 
 PrimClex (const fs::path &_root)
 
 PrimClex (const PrimClex &)=delete
 
 ~PrimClex ()
 Necessary for "pointer to implementation". More...
 
void refresh (bool read_settings=false, bool read_composition=false, bool read_chem_ref=false, bool read_configs=false, bool clear_clex=false)
 Reload PrimClex data from settings. More...
 
ProjectSettingssettings ()
 
const ProjectSettingssettings () const
 
bool has_dir () const
 Check if DirectoryStructure exists. More...
 
const DirectoryStructuredir () const
 Access DirectoryStructure object. Throw if not set. More...
 
double crystallography_tol () const
 Get the crystallography_tol. More...
 
bool has_composition_axes () const
 check if CompositionConverter object initialized More...
 
const CompositionConvertercomposition_axes () const
 const Access CompositionConverter object More...
 
bool has_chemical_reference () const
 check if ChemicalReference object initialized More...
 
const ChemicalReferencechemical_reference () const
 const Access ChemicalReference object More...
 
const PrimTypeprim () const
 const Access to primitive Structure More...
 
std::shared_ptr< PrimType const > const & shared_prim () const
 Access to the primitive Structure as a shared resource. More...
 
Index n_basis () const
 const Access to number of basis atoms More...
 
std::shared_ptr< PrimNeighborList > const & shared_nlist () const
 Access to the primitive neighbor list as a shared resource. More...
 
PrimNeighborListnlist () const
 Access to the primitive neighbor list. More...
 
bool vacancy_allowed () const
 returns true if vacancy are an allowed species More...
 
Index vacancy_index () const
 returns the index of vacancies in composition vectors More...
 
template<typename T >
DB::ValDatabase< T > & generic_db () const
 
template<typename T >
const DB::ValDatabase< T > & const_generic_db () const
 
template<typename T >
DB::Database< T > & db () const
 
template<typename T >
const DB::Database< T > & const_db () const
 
template<typename T >
DB::PropertiesDatabasedb_props (std::string calc_type) const
 
template<typename T >
const DB::PropertiesDatabaseconst_db_props (std::string calc_type) const
 
DB::DatabaseHandlerdb_handler () const
 
const DB::DatabaseHandlerconst_db_handler () const
 
bool has_basis_set_specs (std::string const &basis_set_name) const
 
ClexBasisSpecs const & basis_set_specs (std::string const &basis_set_name) const
 
Clexulator clexulator (std::string const &basis_set_name) const
 
bool has_eci (const ClexDescription &key) const
 
ECIContainer const & eci (const ClexDescription &key) const
 

Private Member Functions

void _init ()
 Initialization routines. More...
 

Private Attributes

std::unique_ptr< PrimClexDatam_data
 

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