Cluster space

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

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
  • verbosity (int) – verbosity level
chemical_symbols

list of str – list of elements considered

cutoffs

list – cutoffs used for initializing the cluster space

get_allowed_occupations()
get_atomic_numbers()
get_cluster_product()
get_cluster_space_info()
get_cluster_space_size()
get_cluster_vector(atoms)

Returns the cluster vector for a structure.

Parameters:atoms (ASE Atoms object / icet Structure object (bi-optional)) – atomic configuration
Returns:the cluster vector
Return type:NumPy array
get_cutoffs()
get_mc_vector_permutations()
get_native_clusters()
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()
get_orbit_list()
get_orbit_list_info()

Return list of orbits that provides information concerning their order, radius, multiplicity etc).

Returns:information about the orbits that constitute the cluster space.
Return type:list of dictionaries
primitive_structure

ASE Atoms object – primitive structure on which the cluster space is based

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 (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()

Read cluster space from filename.

Parameters:
  • filename (str with filename to saved) –
  • space. (cluster) –
structure

icet Structure object – structure used for initializing the cluster space

write(filename)

Save cluster space to a file.

Parameters:
  • filename (str) –
  • for file (filename) –

Supplementary functions

cluster_space.get_singlet_info(return_cluster_space=False)

Retrieve information concerning the singlets in the input structure.

Parameters:
  • atoms (ASE Stoms object / icet Structure object (bi-optional)) – atomic configuration
  • return_cluster_space (boolean) – 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 (ASE Atoms object / icet Structure object (bi-optional)) – atomic configuration
  • to_primitive (boolean) – if True the input structure will be reduced to its primitive unit cell before processing