Cluster space

class icet.ClusterSpace(atoms, cutoffs, chemical_symbols, Mi=None)

This class provides functionality for generating and maintaining cluster spaces.

Parameters:
  • atoms (ASE Atoms object / icet Structure object (bi-optional)) – atomic configuration
  • cutoffs (list of floats) – cutoff radii per order that define the cluster space
  • chemical_symbols (list of strings) – list of chemical symbols, each of which must map to an element of the periodic table
  • Mi (list / dictionary / int) –
    • if a list is provided, it must contain as many elements as there are sites and each element represents the number of allowed components on the respective site
    • if a dictionary is provided the key represent the site index and the value the number of allowed components
    • if a single int is provided each site the number of allowed components will be set to Mi for sites in the structure
chemical_symbols

Chemical species considered

Return type:List[str]
cutoffs

Cutoffs for the different n-body clusters. Each cutoff radii (in Angstroms) defines the largest inter-atomic distance in each cluster

Return type:List[float]
get_chemical_symbols()

Returns list of species associated with cluster space as chemical symbols.

get_cluster_space_info()
get_cluster_space_size()
get_cluster_vector(atoms)

Returns the cluster vector for a structure.

Parameters:atoms (Atoms) – atomic configuration
Returns:
Return type:the cluster vector
get_cutoffs()
get_multi_component_vector_permutations()
get_number_of_allowed_species_by_site()
get_number_of_orbits_by_order()

Return the number of orbits by order.

Returns:the key represents the order, the value represents the number of orbits
Return type:dictionary (ordered)
get_orbit()
orbit_data

list of dicts – list of orbits ith information regarding order, radius, multiplicity etc

orbit_list

Orbit list that defines the cluster in the cluster space

primitive_structure

Primitive structure on which the cluster space is based

Return type:Atoms
print_overview(print_threshold=None, print_minimum=10)

Print an overview of the cluster space in terms of the orbits (order, radius, multiplicity etc).

Parameters:
  • print_threshold (Optional[int]) – if the number of orbits exceeds this number print dots
  • print_minimum (int) – number of lines printed from the top and the bottom of the orbit list if print_threshold is exceeded
static read(filename)

Reads cluster space from filename.

Parameters:filename (str) – name of file from which to read cluster space
species_map
write(filename)

Saves cluster space to a file.

Parameters:filename (str) – name of file to which to write

Supplementary functions

cluster_space.get_singlet_info(return_cluster_space=False)

Retrieves information concerning the singlets in the input structure.

Parameters:
  • atoms (Atoms) – atomic configuration
  • return_cluster_space (bool) – if True return the cluster space created during the process
Returns:

  • list of dicts – each dictionary in the list represents one orbit
  • ClusterSpace object (optional) – cluster space created during the process

cluster_space.view_singlets(to_primitive=False)

Visualize singlets in a structure using the ASE graphical user interface.

Parameters:
  • atoms (Atoms) – atomic configuration
  • to_primitive (bool) – if True the input structure will be reduced to its primitive unit cell before processing