pyiron.atomistics.structure.generator module¶
-
pyiron.atomistics.structure.generator.
create_ase_bulk
(name, crystalstructure=None, a=None, c=None, covera=None, u=None, orthorhombic=False, cubic=False)[source]¶ Creating bulk systems using ASE bulk module. Crystal structure and lattice constant(s) will be guessed if not provided.
name (str): Chemical symbol or symbols as in ‘MgO’ or ‘NaCl’. crystalstructure (str): Must be one of sc, fcc, bcc, hcp, diamond, zincblende,
rocksalt, cesiumchloride, fluorite or wurtzite.
a (float): Lattice constant. c (float): Lattice constant. c_over_a (float): c/a ratio used for hcp. Default is ideal ratio: sqrt(8/3). u (float): Internal coordinate for Wurtzite structure. orthorhombic (bool): Construct orthorhombic unit cell instead of primitive cell which is the default. cubic (bool): Construct cubic unit cell if possible.
- Returns
Required bulk structure
- Return type
-
pyiron.atomistics.structure.generator.
create_hkl_surface
(lattice, hkl, layers, vacuum=1.0, center=False)[source]¶ Use ase.build.surface to build a surface with surface normal (hkl).
- Parameters
lattice (pyiron.atomistics.structure.atoms.Atoms/str) – bulk Atoms instance or str, e.g. “Fe”, from which to build the surface
hkl (list) – miller indices of surface to be created
layers (int) – # of atomic layers in the surface
vacuum (float) – vacuum spacing
center (bool) – shift all positions to center the surface in the cell
- Returns
Required surface
- Return type
pyiron.atomistics.structure.atoms.Atoms instance
-
pyiron.atomistics.structure.generator.
create_structure
(element, bravais_basis, lattice_constant)[source]¶ Create a crystal structure using pyiron’s native crystal structure generator
- Parameters
element (str) – Element name
bravais_basis (str) – Basis type
lattice_constant (float/list) – Lattice constants
- Returns
The required crystal structure
- Return type
-
pyiron.atomistics.structure.generator.
create_surface
(element, surface_type, size=1, 1, 1, vacuum=1.0, center=False, pbc=None, **kwargs)[source]¶ Generate a surface based on the ase.build.surface module.
- Parameters
element (str) – Element name
surface_type (str) – The string specifying the surface type generators available through ase (fcc111,
etc.) (hcp0001) –
size (tuple) – Size of the surface
vacuum (float) – Length of vacuum layer added to the surface along the z direction
center (bool) – Tells if the surface layers have to be at the center or at one end along the z-direction
pbc (list/numpy.ndarray) – List of booleans specifying the periodic boundary conditions along all three directions. If None, it is set to [True, True, True]
**kwargs – Additional, arguments you would normally pass to the structure generator like ‘a’, ‘b’,
etc. ('orthogonal') –
- Returns
Required surface
- Return type
pyiron.atomistics.structure.atoms.Atoms instance