smact.builder module

smact.builder module#

A collection of functions for building certain lattice types. Currently, there are examples here for the perovskite and wurtzite structure types, which rely on the Atomic Simulation Environment (ASE) spacegroup.crystal() function.

A collection of functions for building certain lattice types.

smact.builder.cubic_perovskite(species: list[str], cell_par: list[float] | None = None, repetitions: list[int] | None = None, oxidation_states: list[list[int]] | None = None) tuple[Lattice, Atoms][source]#

Build a perovskite cell using the crystal function in ASE.

Args:#

species (list[str]): Element symbols cell_par (list): Six floats/ints specifying 3 unit cell lengths and 3 unit cell angles. repetitions (list): Three integers specifying the expansion of the cell in x,y,z directions. oxidation_states (list): Oxidation states per site in the unit cell basis.

Defaults to [[2], [4], [-2], [-2], [-2]] for the standard ABX3 perovskite.

Returns:#

SMACT Lattice object of the unit cell, ASE crystal system of the unit cell.

smact.builder.wurtzite(species: list[str], cell_par: list[float] | None = None, repetitions: list[int] | None = None, oxidation_states: list[list[int]] | None = None) tuple[Lattice, Atoms][source]#

Build a wurtzite cell using the crystal function in ASE.

Args:#

species (list[str]): Element symbols cell_par (list): Six floats/ints specifying 3 unit cell lengths and 3 unit cell angles. repetitions (list): Three integers specifying the expansion of the cell in x,y,z directions. oxidation_states (list): Oxidation states per site in the unit cell basis.

Defaults to [[2], [2], [-2], [-2]] for the standard AX wurtzite.

Returns:#

SMACT Lattice object of the unit cell, ASE crystal system of the unit cell.