InterfaceDefectAnalysis¶
- class InterfaceDefectAnalysis(defects, projected_dos=None)¶
Create the interface defects analysis object.
- Parameters:
defects (List or
Table
ofChargedPointDefectConfiguration
) – A sequence of defects at an interface,projected_dos (
ProjectedDensityOfStates
) – AProjectedDensityOfStates
analysis object that can be used to plot the local density along the interface direction.
- availableStableTransitions(defect_filter=None, finite_size_correction=True, include_vibrations=True, temperature=PhysicalQuantity(300.0, K))¶
Get the stable charge state transitions in the collection of defects.
- Parameters:
defect_filter (Defect class or tuple of defect classes.) – Filter the results to only include certain types of defects.
finite_size_correction (bool) – Whether to include the finite size correction..
include_vibrations (bool) – Include vibrations, if available, in the report output.
temperature (PhysicalQuantity of type temperature) – Temperature to calculate the formation energy at.
- Returns:
The total stable transitions that are in the defects
- Return type:
List of 2-tuple
- availableTotalTransitions()¶
- Returns:
The total stable and unstable transitions that are in the defects
- Return type:
List of 2-tuple
- availableUnstableTransitions(defect_filter=None, finite_size_correction=True, include_vibrations=True, temperature=PhysicalQuantity(300.0, K))¶
Get the unstable charge state transitions in the collection of defects.
- Parameters:
defect_filter (Defect class or tuple of defect classes.) – Filter the results to only include certain types of defects.
finite_size_correction (bool) – Whether to include the finite size correction.
include_vibrations (bool) – Include vibrations, if available, in the report output.
temperature (PhysicalQuantity of type temperature) – Temperature to calculate the formation energy at.
- Returns:
The total unstable transitions that are in the defects
- Return type:
List of 2-tuple
- bandGap()¶
- Returns:
The band gap in the pristine material
- Return type:
PhysicalQuantity of type energy
- charges()¶
- Returns:
The calculated charge states for the defects.
- Return type:
List of int
- defectConfiguration(index, charge)¶
Return the defect configuration for the given index and charge state
- Parameters:
index (int) – The index of the defect in the collection.
charge (int) – The charge state of the defect
- Returns:
The configuration of the defect
- Return type:
- defectPositions(defect_filter)¶
Get a list of the defect positions in the C coordinate.
- Parameters:
defect_filter (Defect class or tuple of defect classes) – Filter the results to only include certain types of defects.
- Returns:
The list of the defect positions of the given types
- Return type:
PhysicalQuantity of type length
- defectTypes()¶
- Returns:
A list of the types of defects that are contained within the data set
- Return type:
list of defect class types
- fermiLevel()¶
- Returns:
The position of the fermi level in reference to the valence band.
- Return type:
PhysicalQuantity of type energy
- formationEnergies(charge, defect_filter=None, element_in_pristine=None, finite_size_correction=True, electron_chemical_potential=PhysicalQuantity(0.0, eV), include_vibrations=True, temperature=PhysicalQuantity(300.0, K))¶
Calculate the formation energies for a range of defects at a specific charge state. If vibrations are included this energy corresponds to the Helmholtz free energy of formation. If vibrations are not included this energy is the internal electronic energy of formation.
- Parameters:
charge (int) – The charge state of the defect.
defect_filter (Defect class or tuple of defect classes.) – Filter the results to only include certain types of defects.
element_in_pristine (PeriodicTableElement |
All
|None
) – The element whose chemical potential value is taken from the pristine material. Can be None (elemental reference) All (thermodynamic reference) or an element in the pristine material (element poor reference).finite_size_correction (bool) – Whether to include the finite size correction.
electron_chemical_potential (PhysicalQuantity of type energy) – The chemical potential at the defect.
include_vibrations (bool) – Include vibrations, if available, in the report output.
temperature (PhysicalQuantity of type temperature) – Temperature to calculate the formation energy at.
- Returns:
Tuple of the C-axis position and the formation free energy of the defects
- Return type:
Tuple of PhysicalQuantity of type length and PhysicalQuantity of type energy
- numberOfDefects()¶
- Returns:
The number of defects stored in the object.
- Return type:
int
- positions(defect_filter=None)¶
Return the positions of the defects along the C axis, averaged over charge states.
- Parameters:
defect_filter (Defect class or tuple of defect classes.) – Filter the results to only include certain types of defects.
- Returns:
The defect interface position
- Return type:
PhysicalQuantity
of type length
- pristine()¶
- Returns:
The pristine configuration common to the defects.
- Return type:
BulkdConfiguration
- projectedDos()¶
- Returns:
The projected density of states for the pristine material, if given.
- Return type:
ProjectedDensityOfState
| None
- repetitions()¶
- Returns:
The repetition of the pristine in the defect structure
- Return type:
3-tuple of int.
- stableTransitions(transition, defect_filter=None, finite_size_correction=True, include_vibrations=True, temperature=PhysicalQuantity(300.0, K))¶
Calculate the energies of a charge state transitions across the defects.
- Parameters:
transition (2-tuple of integer charge states) – The transition to get the energy of
defect_filter (Defect class or tuple of defect classes.) – Filter the results to only include certain types of defects.
finite_size_correction (bool) – Whether to include the finite size correction.
include_vibrations (bool) – Include vibrations, if available, in the report output.
temperature (PhysicalQuantity of type temperature) – Temperature to calculate the formation energy at.
- Returns:
Tuple of the C-axis position and the trap level of the defects
- Return type:
Tuple of PhysicalQuantity of type length and PhysicalQuantity of type energy
- totalTransitions(transition, defect_filter=None, finite_size_correction=True, include_vibrations=True, temperature=PhysicalQuantity(300.0, K))¶
Calculate the energies of a charge state transitions across the defects, both stable and unstable.
- Parameters:
transition (2-tuple of integer charge states) – The transition to get the energy of
defect_filter (Defect class or tuple of defect classes.) – Filter the results to only include certain types of defects.
finite_size_correction (bool) – Whether to include the finite size correction.
include_vibrations (bool) – Include vibrations, if available, in the report output.
temperature (PhysicalQuantity of type temperature) – Temperature to calculate the formation energy at.
- Returns:
Tuple of the C-axis position and the trap level of the defects
- Return type:
Tuple of PhysicalQuantity of type length and PhysicalQuantity of type energy
- uniqueString()¶
Return a unique string representing the state of the object.
- unstableTransitions(transition, defect_filter=None, finite_size_correction=True, include_vibrations=True, temperature=PhysicalQuantity(300.0, K))¶
Calculate the energies of an unstable charge state transitions across the defects.
- Parameters:
transition (2-tuple of integer charge states) – The transition to get the energy of
defect_filter (Defect class or tuple of defect classes.) – Filter the results to only include certain types of defects.
finite_size_correction (bool) – Whether to include the finite size correction.
include_vibrations (bool) – Include vibrations, if available, in the report output.
temperature (PhysicalQuantity of type temperature) – Temperature to calculate the formation energy at.
- Returns:
Tuple of the C-axis position and the trap level of the defects
- Return type:
Tuple of PhysicalQuantity of type length and PhysicalQuantity of type energy
Notes¶
The InterfaceDefectAnalysis object enables simpler analysis of defects across an interface. Using this class the defect positions along the interface, formation energies and electron trap levels can be calculated. This object can also be opened in the Interface Defect Analyzer to show these properties.
Defects are given as ChargedPointDefectConfiguration objects in either a list or a Table. The interface in these calculations must be along the C direction of the unit cell. Defects must all be compatible, meaning they have the same pristine configuration, supercell repetitions, charge states, and whether vibrations or finite size corrections were calculated for the defect. Optionally a ProjectedDensityOfStates with site projections of the pristine material can also be given. This can be combined with the defect information to show the electron trap levels in reference to the local density of states.