sisl.geom.Saturate

class sisl.geom.Saturate

Bases: object

Add an atom for each missing bond of an atom

The missing bonds get the directions of the ideal geometry: linear (2 bonds), trigonal planar (3 bonds) or tetrahedral (4 bonds). When an atom has only one bond, the plane of the new bonds follows a bond of the neighbor (planar for 3 bonds, staggered for 4 bonds).

Parameters:
  • atom – the atom to add for each missing bond

  • bond – the bond length between the saturated atom and the added atom [Ang]. Defaults to the sum of the radii (PeriodicTable.radius). This is an approximate value (e.g. 1.20 Ang for C-H), relax the structure or specify the bond length.

  • coordination – number of bonds of a saturated atom. Defaults to the most frequent number of bonds of the atoms with the same atomic number in the geometry.

  • R – the bond range, see AtomNeighbors. Defaults to (0.01, atom.maxR()) of the saturated atom.

See also

saturate

apply saturations to a geometry

Methods

__call__(geometry, atoms, cache)[source]

Atoms and coordinates to add for the saturation of atoms

Returns:

  • list of Atom

  • numpy.ndarray – coordinates of the added atoms, shape (len(list), 3)

Parameters: