pymatgen.analysis.defects.generators module

class DefectGenerator[source]

Bases: monty.json.MSONable

Abstract class for point defects Implements generator pattern

class InterstitialGenerator(structure, element)[source]

Bases: pymatgen.analysis.defects.generators.DefectGenerator

Generator for interstitials at positions where the interstitialcy is coordinated by nearest neighbors in a way that resembles basic structure motifs (e.g., tetrahedra, octahedra). The algorithm is called InFiT (Interstitialcy Finding Tool), it was introducted by Nils E. R. Zimmermann, Matthew K. Horton, Anubhav Jain, and Maciej Haranczyk (Front. Mater., 4, 34, 2017), and it is used by the Python Charged Defect Toolkit (PyCDT: D. Broberg et al., Comput. Phys. Commun., in press, 2018).

Initializes an Interstitial generator using structure motifs :param structure: pymatgen structure object :type structure: Structure :param element: element for the interstitial :type element: str or Element or Specie

class SimpleChargeGenerator(defect)[source]

Bases: pymatgen.analysis.defects.generators.DefectGenerator

Does an extremely simple/limited charge generation scheme (only one charge generated)

for vacancies: use bond valence method to assign oxidation states and consider
negative of the vacant site’s oxidation state as single charge to try
for antisites and subs: use bond valence method to assign oxidation states and consider
negative of the vacant site’s oxidation state as single charge to try + added to likely charge of substitutional site (closest to zero)

for interstitial: charge zero

Parameters:defect (Defect) – pymatgen Defect object
class SubstitutionGenerator(structure, element)[source]

Bases: pymatgen.analysis.defects.generators.DefectGenerator

Simple generator for substitution based on periodically equivalent sites

Initializes a Substitution Generator note: an Antisite is considered a type of substitution :param structure: pymatgen structure object :type structure: Structure :param element: element for the substitution :type element: str or Element or Specie

class VacancyGenerator(structure, include_bv_charge=False)[source]

Bases: pymatgen.analysis.defects.generators.DefectGenerator

Simple generator for vacancies based on periodically equivalent sites

Initializes a Vacancy Generator :param structure: pymatgen structure object :type structure: Structure

class VoronoiInterstitialGenerator(structure, element)[source]

Bases: pymatgen.analysis.defects.generators.DefectGenerator

Generator for interstitials based on a simple Voronoi analysis

Initializes an Interstitial generator using Voronoi sites :param structure: pymatgen structure object :type structure: Structure :param element: element for the interstitial :type element: str or Element or Specie