smact.oxidation_states module#
smact.oxidation_states: Module for predicting the likelihood of species coexisting in a compound.
Based on statistical analysis of oxidation states. It is possible to use the values obtained in the publication Materials Discovery by Chemical Analogy: Role of Oxidation States in Structure Prediction - DOI: 10.1039/C8FD00032H.
- class smact.oxidation_states.OxidationStateProbabilityFinder(probability_table: dict[tuple[str, str], float] | None = None)[source]#
Bases:
objectUses the model developed in the Faraday Discussions Paper (DOI:10.1039/C8FD00032H).
Computes the likelihood of metal species existing in solids in the presence of certain anions.
- compound_probability(structure: Structure | list, ignore_stoichiometry: bool = True) float[source]#
Calculate overall probability for structure or composition.
Args:#
- structure (pymatgen.Structure): Compound for which the probability score will be generated.
Can also be a list of pymatgen or SMACT Species.
- ignore_stoichiometry (bool): Whether to weight probabilities by stoichiometry.
Defaults to True (i.e. stoichiometry is ignored).
Returns:#
compound_prob (float): Compound probability
- get_included_species() set[str][source]#
Returns a set of species for which there exists data in the probability table used.
- pair_probability(species1: Species, species2: Species) float[source]#
Get the anion-cation oxidation state probability for a provided pair of smact Species.
i.e. \(P_{SA}=\\frac{N_{SX}}{N_{MX}}\) in the original paper (DOI:10.1039/C8FD00032H).
Args:#
species1 (smact.Species): Cation or anion species species2 (smact.Species): Cation or anion species
Returns:#
prob (float): Species-anion probability