pymatgen.analysis.magnetism.jahnteller module¶
-
class
JahnTellerAnalyzer[source]¶ Will attempt to classify if structure may be Jahn-Teller active.
Class currently uses datafile of hard-coded common Jahn-Teller active ions.
If structure is annotated with magnetic moments, will estimate if structure may be high-spin or low-spin.
Class aims for more false-positives than false-negatives.
-
get_analysis_and_structure(structure, calculate_valences=True, guesstimate_spin=False, op_threshold=0.1)[source]¶ Obtain an analysis of a given structure and if it may be Jahn-Teller active or not. This is a heuristic, and may give false positives and false negatives (false positives are preferred).
Parameters: - structure – input structure
- (bool) (calculate_valences) – whether to attempt to calculate valences or not, structure
should have oxidation states to perform analysis :param guesstimate_spin (bool): whether to guesstimate spin state from magnetic moments or not, use with caution :param op_threshold (float): threshold for order parameter above which to consider site to match an octahedral or tetrahedral motif, since Jahn-Teller structures can often be quite distorted, this threshold is smaller than one might expect :return (dict): analysis of structure, with key ‘strength’ which may be ‘none’, ‘strong’, ‘weak’, or ‘unknown’
-
get_magnitude_of_effect_from_species(species, spin_state, motif)[source]¶ Get magnitude of Jahn-Teller effect from provided species, spin state and motife.
Parameters: - species – e.g. Fe2+
- (str) (motif) – “high” or “low”
- (str) – “oct” or “tet”
Return (str):
-
static
get_magnitude_of_effect_from_spin_config(motif, spin_config)[source]¶ Roughly, the magnitude of Jahn-Teller distortion will be: * in octahedral environments, strong if e_g orbitals unevenly occupied but weak if t_2g orbitals unevenly occupied * in tetrahedral environments always weaker :param motif (str): “oct” or “tet” :param spin_config (dict): dict of ‘e’ (e_g) and ‘t’ (t2_g) with number of electrons in each state
-