pymatgen.core.molecular_orbitals module¶
This module implements a MolecularOrbital class to represent band character in solids. Usefull for predicting PDOS character from structural information.
-
class
MolecularOrbitals
(formula)[source]¶ Bases:
object
Represents the character of bands in a solid. The input is a chemical formula, since no structural characteristics are taken into account.
The band character of a crystal emerges from the atomic orbitals of the constituant ions, hybridization/covalent bonds, and the spin-orbit interaction (ex: Fe2O3). Right now the orbitals are only built from the uncharged atomic species. Functionality can be improved by: 1) calculate charged ion orbital energies 2) incorportate the coordination enviornment to account for covalant bonds
The atomic orbital energies are stored in pymatgen.core.periodic_table.JSON
>>> MOs = MolecularOrbitals('SrTiO3') >>> MOs.band_edges {'HOMO':['O','2p',-0.338381], 'LUMO':['Ti','3d',-0.17001], 'metal':False}
- Parameters
formula as a string. formula must have integer subscripts (chemical) –
Ex – ‘SrTiO3’
-
band_edges
[source]¶ dictionary containing the highest occupied molecular orbital (HOMO), lowest unocupied molecular orbital (LUMO), and whether the material is predicted to be a metal
-
aos_as_list
()[source]¶ - Returns
A list of atomic orbitals, sorted from lowest to highest energy.
- The orbitals energies in eV are represented as
[[‘O’, ‘1s’, -18.758245], [‘O’, ‘2s’, -0.871362], [‘O’, ‘2p’, -0.338381]]
Data is obtained from https://www.nist.gov/pml/data/atomic-reference-data-electronic-structure-calculations