SplitInterstitial

class SplitInterstitial(interstitial_element, site_element, site_index, unit_cell_index=None, cartesian_coordinates=None, fractional_coordinates=None)

Data structure for a split interstitial (dumbbell) defect. This class only holds information and does not check for physical validity, which is imposed by SplitInterstitialList during dumbbell generation. The two sets of cartesian_coordinates (or fractional_coordinates) are symmetric with respect to site_index.

Parameters:
  • interstitial_element (PeriodicTableElement) – The element to add at the given positions.

  • site_element (PeriodicTableElement) – The lattice site displaced by the an interstitial element.

  • site_index (int) – The index of the atom in the bulk unit cell configuration to be substituted with a split interstitial defect.
    Default: 0

  • unit_cell_index (sequence on int (size 3)) – The index of the unit cell in the infinite crystal which the reference site belongs to. substituted with a split interstitial defect.
    Default: (0, 0, 0)

  • cartesian_coordinates (PhysicalQuantity of type length (size 2x3) | None) – Positions at which to insert two atoms of the split interstitial defect, given in absolute coordinates. This option is mutually exclusive to fractional_coordinates.
    Default: None

  • fractional_coordinates (numpy.array (size 2x3) | None) – Positions at which to insert two atoms of the split interstitial defect, given in fractional coordinates of the bulk unit cell. This option is mutually exclusive to cartesian_coordinates.
    Default: None

cartesianCoordinates()
Returns:

The coordinates of the split interstitial defect as Cartesian coordinates if they have been specified, otherwise returns None.

Return type:

PhysicalQuantity of type length (size 2x3) | None

defectList()
Returns:

The list of constituent defects.

Return type:

list of [Vacancy | Substitutional | Interstitial]

element()
Returns:

The interstitial element used in the split-interstitial defect.

Return type:

int

fractionalCoordinates()
Returns:

The coordinates of the split interstitial defect as fractional coordinates if they have been specified, otherwise returns None.

Return type:

numpy.array (size 2x3) | None

generateDefectConfiguration(reference_bulk_configuration, supercell_repetitions, use_ghost=None)

Generate the supercell with the embedded defect.

Parameters:
  • reference_bulk_configuration (BulkConfiguration) – The bulk unit cell configuration.

  • supercell_repetitions (sequence (size 3) of int) – The number of repetitions of the bulk unit cell along the (a, b, c) directions.

  • use_ghost (bool) – Whether to use a ghost atom at the vacancy defect site (not referenced for other types of defects).

Returns:

The supercell configuration with the embedded defect.

Return type:

BulkConfiguration

siteIndex()
Returns:

Index of the site being replaced by a split interstitial defect

Return type:

int

uniqueString()

Return a unique string representing the state of the object.

Notes

A split interstitial is a type of defect occurring in solids. It is created by introducing an impurity interstitial_element that displaces an atom of the lattice. The pair of impurity and displaced atom is commonly referred to as a dumbbell for its resemblance to the weight-lifting device, as seen in Fig. 172.

../../../_images/arsenic_dumbbell.png

Fig. 172 Split-interstitial on GaAs. One As atom of the crystal is replaced with two atoms of the same species. This dumbbell defect is centered at the site of the original atom.

A SplitInterstitial can be added to a NamedPointDefect to define a defect for use in a ChargedPointDefectConfiguration calculation.