pymatgen.analysis.interface_reactions module

class InterfacialReactivity(c1, c2, pd, norm=1, include_no_mixing_energy=0, pd_non_grand=None)[source]

Bases: object

A class for analyzing interfacial reactions and plotting reaction energy vs. mixing ratio between two reactants.

Initiates the class.

Parameters:
  • c2 (c1,) – Composition objects for reactants.
  • pd – PhaseDiagram object or GrandPotentialPhaseDiagram object built from elements in c1 and c2.
  • norm – Whether or not the total number of atoms in each reactant will be normalized to 1 for reaction energy calculations.
  • include_no_mixing_energy – No_mixing_energy for a reactant is the opposite number of its energy above grand potential convex hull. In cases where reactions involve elements reservoir, this param determines whether no_mixing_energy of reactants will be included in the final reaction energy calculation. By definition, if pd is not a GrandPotentialPhaseDiagram object, this param is 0.
  • pd_non_grand – PhaseDiagram object but not GrandPotentialPhaseDiagram object, built from elements in c1 and c2.
get_kinks()[source]

Finds all the kinks in mixing ratio where reaction products changes along the tie line of composition self.c1 and composition self.c2. :return: Zip object of tuples (index, mixing ratio, reaction energy, reaction).

get_no_mixing_energy()[source]

Returns the opposite number of energy above grand potential convex hull for both reactants. :return: [(reactant1, no_mixing_energy1),(reactant2,no_mixing_energy2)].

get_products()[source]

Returns all potential products in interfacial reactions. :return: List of product formulas. E.g., [‘Li’, ‘O2’,’Mn’].

labels()[source]

Returns a dictionary containing kink information: {index: ‘x= mixing_ratio energy= reaction_energy reaction_equation’}. :return: Dictionary object. E.g., {1: ‘x= 0.0 energy = 0.0 Mn -> Mn’, 2: ‘x= 0.5 energy = -15.0 O2 + Mn -> MnO2’, 3: ‘x= 1.0 energy = 0.0 O2 -> O2’}.

minimum()[source]

Returns the minimum reaction energy E_min and corresponding mixing ratio x_min. :return: Tuple (x_min, E_min).

plot()[source]

Plots reaction energy as a function of mixing ratio x in self.c1 - self.c2 tie line using pylab. :return: Plot of reaction energy as a function of mixing ratio x.