Cluster space

class icet.ClusterSpace(atoms, cutoffs, chemical_symbols)[source]

This class provides functionality for generating and maintaining cluster spaces.

Parameters:
  • atoms (ase.Atoms) – atomic configuration
  • cutoffs (list(float)) – cutoff radii per order that define the cluster space
  • chemical_symbols (list(str) or list(list(str))) –

    list of chemical symbols, each of which must map to an element of the periodic table

    If a list of chemical symbols is provided, all sites on the lattice will have the same allowed occupations as the input list.

    If a list of list of chemical symbols is provided then the outer list must be the same length as the atoms object and chemical_symbols[i] will correspond to the allowed species on lattice site i.

chemical_symbols

Chemical species considered

Return type:List[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)[source]

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()[source]

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 orbits ith information regarding order, radius, multiplicity etc

Type:list of dicts
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)[source]

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)[source]

Reads cluster space from filename.

Parameters:filename (str) – name of file from which to read cluster space
species_maps
write(filename)[source]

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