From c5296b38547c337f1454bef30c50b44ebca3da11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Se=C3=A1n=20Kavanagh?= <51478689+kavanase@users.noreply.github.com> Date: Sat, 31 Aug 2024 01:45:46 -0400 Subject: [PATCH] Update `FermiDos.get_doping()` to be more robust (#3879) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update `FermiDos.get_doping()` to be more robust. * Update `tol` defaults for DOS methods, and add small notes to `Vasprun` DOS parsing docstrings * pre-commit auto-fixes * Use `scipy.special.expit` function for Fermi-Dirac distribution, slightly faster, cleaner and no masking required to avoid overflow warnings * Update `FermiDos.get_doping()` to be more robust. * Update `tol` defaults for DOS methods, and add small notes to `Vasprun` DOS parsing docstrings * pre-commit auto-fixes * Use `scipy.special.expit` function for Fermi-Dirac distribution, slightly faster, cleaner and no masking required to avoid overflow warnings * Merge pymatgen master (pt 2) * pre-commit auto-fixes * pre-commit auto-fixes * Fix default `tol` update * Remove yaml files to force re-eval * Ensure LF line endings for yamls --------- Signed-off-by: Seán Kavanagh <51478689+kavanase@users.noreply.github.com> --- src/pymatgen/electronic_structure/dos.py | 63 ++- .../lobster_basis/BASIS_PBE_54_max.yaml | 378 +++++++++--------- .../lobster_basis/BASIS_PBE_54_min.yaml | 378 +++++++++--------- .../lobster_basis/BASIS_PBE_54_standard.yaml | 378 +++++++++--------- src/pymatgen/io/vasp/outputs.py | 7 +- 5 files changed, 603 insertions(+), 601 deletions(-) diff --git a/src/pymatgen/electronic_structure/dos.py b/src/pymatgen/electronic_structure/dos.py index 6504ccbd2f0..08aa86a7eed 100644 --- a/src/pymatgen/electronic_structure/dos.py +++ b/src/pymatgen/electronic_structure/dos.py @@ -12,6 +12,7 @@ from scipy.constants import value as _constant from scipy.ndimage import gaussian_filter1d from scipy.signal import hilbert +from scipy.special import expit from scipy.stats import wasserstein_distance from pymatgen.core import Structure, get_el_sp @@ -75,7 +76,7 @@ def __str__(self) -> str: def get_interpolated_gap( self, - tol: float = 0.001, + tol: float = 1e-4, abs_tol: bool = False, spin: Spin | None = None, ) -> tuple[float, float, float]: @@ -120,13 +121,11 @@ def get_interpolated_gap( end = get_linear_interpolated_value(terminal_dens, terminal_energies, tol) return end - start, end, start - def get_cbm_vbm( - self, - tol: float = 0.001, - abs_tol: bool = False, - spin: Spin | None = None, - ) -> tuple[float, float]: - """Find the CBM and VBM. + def get_cbm_vbm(self, tol: float = 1e-4, abs_tol: bool = False, spin: Spin | None = None) -> tuple[float, float]: + """ + Expects a DOS object and finds the CBM and VBM eigenvalues. + + `tol` may need to be increased for systems with noise/disorder. Args: tol (float): Tolerance in occupations for determining the gap. @@ -168,13 +167,12 @@ def get_cbm_vbm( return self.x[i_gap_end], self.x[i_gap_start] - def get_gap( - self, - tol: float = 0.001, - abs_tol: bool = False, - spin: Spin | None = None, - ) -> float: - """Find the band gap. + def get_gap(self, tol: float = 1e-4, abs_tol: bool = False, spin: Spin | None = None) -> float: + """ + Expects a DOS object and finds the band gap, using the determined + VBM and CBM eigenvalues. + + `tol` may need to be increased for systems with noise/disorder. Args: tol (float): Tolerance in occupations for determining the gap. @@ -306,7 +304,7 @@ def get_interpolated_value(self, energy: float) -> dict[Spin, float]: def get_interpolated_gap( self, - tol: float = 0.001, + tol: float = 1e-4, abs_tol: bool = False, spin: Spin | None = None, ) -> Tuple3Floats: @@ -348,13 +346,11 @@ def get_interpolated_gap( return end - start, end, start - def get_cbm_vbm( - self, - tol: float = 0.001, - abs_tol: bool = False, - spin: Spin | None = None, - ) -> tuple[float, float]: - """Find the conduction band minimum (CBM) and valence band maximum (VBM). + def get_cbm_vbm(self, tol: float = 1e-4, abs_tol: bool = False, spin: Spin | None = None) -> tuple[float, float]: + """ + Expects a DOS object and finds the CBM and VBM eigenvalues. + + `tol` may need to be increased for systems with noise/disorder. Args: tol (float): Tolerance in occupations for determining the gap. @@ -393,7 +389,7 @@ def get_cbm_vbm( def get_gap( self, - tol: float = 0.001, + tol: float = 1e-4, abs_tol: bool = False, spin: Spin | None = None, ) -> float: @@ -487,6 +483,7 @@ def __init__( ecbm, evbm = self.get_cbm_vbm() self.idx_vbm = int(np.argmin(abs(self.energies - evbm))) self.idx_cbm = int(np.argmin(abs(self.energies - ecbm))) + self.idx_mid_gap = int(self.idx_vbm + (self.idx_cbm - self.idx_vbm) / 2) self.A_to_cm = 1e-8 if bandgap: @@ -502,7 +499,8 @@ def __init__( self.energies[idx_fermi:] += (bandgap - (ecbm - evbm)) / 2.0 def get_doping(self, fermi_level: float, temperature: float) -> float: - """Calculate the doping (majority carrier concentration) at a given + """ + Calculate the doping (majority carrier concentration) at a given Fermi level and temperature. A simple Left Riemann sum is used for integrating the density of states over energy & equilibrium Fermi-Dirac distribution. @@ -518,15 +516,15 @@ def get_doping(self, fermi_level: float, temperature: float) -> float: (P-type). """ cb_integral = np.sum( - self.tdos[self.idx_cbm :] - * f0(self.energies[self.idx_cbm :], fermi_level, temperature) - * self.de[self.idx_cbm :], + self.tdos[self.idx_mid_gap :] + * f0(self.energies[self.idx_mid_gap :], fermi_level, temperature) + * self.de[self.idx_mid_gap :], axis=0, ) vb_integral = np.sum( - self.tdos[: self.idx_vbm + 1] - * f0(-self.energies[: self.idx_vbm + 1], -fermi_level, temperature) - * self.de[: self.idx_vbm + 1], + self.tdos[: self.idx_mid_gap + 1] + * f0(-self.energies[: self.idx_mid_gap + 1], -fermi_level, temperature) + * self.de[: self.idx_mid_gap + 1], axis=0, ) return (vb_integral - cb_integral) / (self.volume * self.A_to_cm**3) @@ -1568,7 +1566,8 @@ def f0(E: float, fermi: float, T: float) -> float: Returns: float: The Fermi-Dirac occupation probability at energy E. """ - return 1.0 / (1.0 + np.exp((E - fermi) / (_constant("Boltzmann constant in eV/K") * T))) + exponent = (E - fermi) / (_constant("Boltzmann constant in eV/K") * T) + return expit(-exponent) # scipy logistic sigmoid function; expit(x) = 1/(1+exp(-x)) def _get_orb_type_lobster(orb: str) -> OrbitalType | None: diff --git a/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_max.yaml b/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_max.yaml index 17a0bd7af5c..e4ed957f2a6 100644 --- a/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_max.yaml +++ b/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_max.yaml @@ -1,189 +1,189 @@ -BASIS: - Ac: '5f 6d 6p 6s 7s ' - Ag: '4d 5p 5s ' - Ag_pv: '4d 4p 5p 5s ' - Al: '3p 3s ' - Am: '5f 6d 6p 6s 7s ' - Ar: '3p 3s ' - As: '4p 4s ' - As_d: '3d 4p 4s ' - At: '6p 6s ' - Au: '5d 6p 6s ' - B: '2p 2s ' - B_h: '2p 2s ' - B_s: '2p 2s ' - Ba_sv: '5p 5s 6s ' - Be: '2p 2s ' - Be_sv: '1s 2p 2s ' - Bi: '6p 6s ' - Bi_d: '5d 6p 6s ' - Br: '4p 4s ' - C: '2p 2s ' - C_h: '2p 2s ' - C_s: '2p 2s ' - Ca_pv: '3p 4s ' - Ca_sv: '3p 3s 4s ' - Cd: '4d 5p 5s ' - Ce: '4f 5d 5p 5s 6s ' - Ce_3: '5d 5p 5s 6s ' - Ce_h: '4f 5d 5p 5s 6s ' - Cf: '5f 6p 6s 7s ' - Cl: '3p 3s ' - Cl_h: '3p 3s ' - Cm: '5f 6d 6p 6s 7s ' - Co: '3d 4p 4s ' - Co_pv: '3d 3p 4s ' - Co_sv: '3d 3p 3s 4p 4s ' - Cr: '3d 4p 4s ' - Cr_pv: '3d 3p 4s ' - Cr_sv: '3d 3p 3s 4s ' - Cs_sv: '5p 5s 6s ' - Cu: '3d 4p 4s ' - Cu_pv: '3d 3p 4s ' - Dy: '4f 5d 5p 5s 6s ' - Dy_3: '5d 5p 6s ' - Er: '4f 5d 5p 5s 6s ' - Er_2: '5d 5p 6s ' - Er_3: '5d 5p 6s ' - Eu: '4f 5d 5p 5s 6s ' - Eu_2: '5d 5p 6s ' - Eu_3: '5d 5p 6s ' - F: '2p 2s ' - F_h: '2p 2s ' - F_s: '2p 2s ' - Fe: '3d 4p 4s ' - Fe_pv: '3d 3p 4s ' - Fe_sv: '3d 3p 3s 4s ' - Fr_sv: '6p 6s 7s ' - Ga: '4p 4s ' - Ga_d: '3d 4p 4s ' - Ga_h: '3d 4p 4s ' - Gd: '4f 5d 5p 5s 6s ' - Gd_3: '5d 5p 6s ' - Ge: '4p 4s ' - Ge_d: '3d 4p 4s ' - Ge_h: '3d 4p 4s ' - H: '1s ' - H_h: '1s ' - H_s: '1s ' - He: '1s ' - Hf: '5d 6p 6s ' - Hf_pv: '5d 5p 6s ' - Hf_sv: '5d 5p 5s 6s ' - Hg: '5d 6p 6s ' - Ho: '4f 5d 5p 5s 6s ' - Ho_3: '5d 5p 6s ' - I: '5p 5s ' - In: '5p 5s ' - In_d: '4d 5p 5s ' - Ir: '5d 6p 6s ' - K_pv: '3p 4s ' - K_sv: '3p 3s 4s ' - Kr: '4p 4s ' - La: '4f 5d 5p 5s 6s ' - La_s: '4f 5d 5p 6s ' - Li: '2p 2s ' - Li_sv: '1s 2p 2s ' - Lu: '4f 5d 5p 5s 6s ' - Lu_3: '5d 5p 6s ' - Mg: '3p 3s ' - Mg_pv: '2p 3s ' - Mg_sv: '2p 2s 3s ' - Mn: '3d 4p 4s ' - Mn_pv: '3d 3p 4s ' - Mn_sv: '3d 3p 3s 4s ' - Mo: '4d 5p 5s ' - Mo_pv: '4d 4p 5s ' - Mo_sv: '4d 4p 4s 5s ' - N: '2p 2s ' - N_h: '2p 2s ' - N_s: '2p 2s ' - Na: '3p 3s ' - Na_pv: '2p 3s ' - Na_sv: '2p 2s 3s ' - Nb_pv: '4d 4p 5s ' - Nb_sv: '4d 4p 4s 5s ' - Nd: '4f 5d 5p 5s 6s ' - Nd_3: '5d 5p 5s 6s ' - Ne: '2p 2s ' - Ni: '3d 4p 4s ' - Ni_pv: '3d 3p 4s ' - Np: '5f 6d 6p 6s 7s ' - Np_s: '5f 6d 6p 6s 7s ' - O: '2p 2s ' - O_h: '2p 2s ' - O_s: '2p 2s ' - Os: '5d 6p 6s ' - Os_pv: '5d 5p 6s ' - P: '3p 3s ' - P_h: '3p 3s ' - Pa: '5f 6d 6p 6s 7s ' - Pa_s: '5f 6d 6p 7s ' - Pb: '6p 6s ' - Pb_d: '5d 6p 6s ' - Pd: '4d 5p 5s ' - Pd_pv: '4d 4p 5s ' - Pm: '4f 5d 5p 5s 6s ' - Pm_3: '5d 5p 5s 6s ' - Po: '6p 6s ' - Po_d: '5d 6p 6s ' - Pr: '4f 5d 5p 5s 6s ' - Pr_3: '5d 5p 5s 6s ' - Pt: '5d 6p 6s ' - Pt_pv: '5d 5p 6p 6s ' - Pu: '5f 6d 6p 6s 7s ' - Pu_s: '5f 6d 6p 6s 7s ' - Ra_sv: '6p 6s 7s ' - Rb_pv: '4p 5s ' - Rb_sv: '4p 4s 5s ' - Re: '5d 6s ' - Re_pv: '5d 5p 6s ' - Rh: '4d 5p 5s ' - Rh_pv: '4d 4p 5s ' - Rn: '6p 6s ' - Ru: '4d 5p 5s ' - Ru_pv: '4d 4p 5s ' - Ru_sv: '4d 4p 4s 5s ' - S: '3p 3s ' - S_h: '3p 3s ' - Sb: '5p 5s ' - Sc: '3d 4p 4s ' - Sc_sv: '3d 3p 3s 4s ' - Se: '4p 4s ' - Si: '3p 3s ' - Sm: '4f 5d 5p 5s 6s ' - Sm_3: '5d 5p 5s 6s ' - Sn: '5p 5s ' - Sn_d: '4d 5p 5s ' - Sr_sv: '4p 4s 5s ' - Ta: '5d 6p 6s ' - Ta_pv: '5d 5p 6s ' - Tb: '4f 5d 5p 5s 6s ' - Tb_3: '5d 5p 6s ' - Tc: '4d 5p 5s ' - Tc_pv: '4d 4p 5s ' - Tc_sv: '4d 4p 4s 5s ' - Te: '5p 5s ' - Th: '5f 6d 6p 6s 7s ' - Th_s: '5f 6d 6p 7s ' - Ti: '3d 4p 4s ' - Ti_pv: '3d 3p 4s ' - Ti_sv: '3d 3p 3s 4s ' - Tl: '6p 6s ' - Tl_d: '5d 6p 6s ' - Tm: '4f 5d 5p 5s 6s ' - Tm_3: '5d 5p 6s ' - U: '5f 6d 6p 6s 7s ' - U_s: '5f 6d 6p 6s 7s ' - V: '3d 4p 4s ' - V_pv: '3d 3p 4s ' - V_sv: '3d 3p 3s 4s ' - W: '5d 6p 6s ' - W_sv: '5d 5p 5s 6s ' - Xe: '5p 5s ' - Y_sv: '4d 4p 4s 5s ' - Yb: '4f 5d 5p 5s 6s ' - Yb_2: '5d 5p 6s ' - Yb_3: '5d 5p 6s ' - Zn: '3d 4p 4s ' - Zr_sv: '4d 4p 4s 5s ' +BASIS: + Ac: '5f 6d 6p 6s 7s ' + Ag: '4d 5p 5s ' + Ag_pv: '4d 4p 5p 5s ' + Al: '3p 3s ' + Am: '5f 6d 6p 6s 7s ' + Ar: '3p 3s ' + As: '4p 4s ' + As_d: '3d 4p 4s ' + At: '6p 6s ' + Au: '5d 6p 6s ' + B: '2p 2s ' + B_h: '2p 2s ' + B_s: '2p 2s ' + Ba_sv: '5p 5s 6s ' + Be: '2p 2s ' + Be_sv: '1s 2p 2s ' + Bi: '6p 6s ' + Bi_d: '5d 6p 6s ' + Br: '4p 4s ' + C: '2p 2s ' + C_h: '2p 2s ' + C_s: '2p 2s ' + Ca_pv: '3p 4s ' + Ca_sv: '3p 3s 4s ' + Cd: '4d 5p 5s ' + Ce: '4f 5d 5p 5s 6s ' + Ce_3: '5d 5p 5s 6s ' + Ce_h: '4f 5d 5p 5s 6s ' + Cf: '5f 6p 6s 7s ' + Cl: '3p 3s ' + Cl_h: '3p 3s ' + Cm: '5f 6d 6p 6s 7s ' + Co: '3d 4p 4s ' + Co_pv: '3d 3p 4s ' + Co_sv: '3d 3p 3s 4p 4s ' + Cr: '3d 4p 4s ' + Cr_pv: '3d 3p 4s ' + Cr_sv: '3d 3p 3s 4s ' + Cs_sv: '5p 5s 6s ' + Cu: '3d 4p 4s ' + Cu_pv: '3d 3p 4s ' + Dy: '4f 5d 5p 5s 6s ' + Dy_3: '5d 5p 6s ' + Er: '4f 5d 5p 5s 6s ' + Er_2: '5d 5p 6s ' + Er_3: '5d 5p 6s ' + Eu: '4f 5d 5p 5s 6s ' + Eu_2: '5d 5p 6s ' + Eu_3: '5d 5p 6s ' + F: '2p 2s ' + F_h: '2p 2s ' + F_s: '2p 2s ' + Fe: '3d 4p 4s ' + Fe_pv: '3d 3p 4s ' + Fe_sv: '3d 3p 3s 4s ' + Fr_sv: '6p 6s 7s ' + Ga: '4p 4s ' + Ga_d: '3d 4p 4s ' + Ga_h: '3d 4p 4s ' + Gd: '4f 5d 5p 5s 6s ' + Gd_3: '5d 5p 6s ' + Ge: '4p 4s ' + Ge_d: '3d 4p 4s ' + Ge_h: '3d 4p 4s ' + H: '1s ' + H_h: '1s ' + H_s: '1s ' + He: '1s ' + Hf: '5d 6p 6s ' + Hf_pv: '5d 5p 6s ' + Hf_sv: '5d 5p 5s 6s ' + Hg: '5d 6p 6s ' + Ho: '4f 5d 5p 5s 6s ' + Ho_3: '5d 5p 6s ' + I: '5p 5s ' + In: '5p 5s ' + In_d: '4d 5p 5s ' + Ir: '5d 6p 6s ' + K_pv: '3p 4s ' + K_sv: '3p 3s 4s ' + Kr: '4p 4s ' + La: '4f 5d 5p 5s 6s ' + La_s: '4f 5d 5p 6s ' + Li: '2p 2s ' + Li_sv: '1s 2p 2s ' + Lu: '4f 5d 5p 5s 6s ' + Lu_3: '5d 5p 6s ' + Mg: '3p 3s ' + Mg_pv: '2p 3s ' + Mg_sv: '2p 2s 3s ' + Mn: '3d 4p 4s ' + Mn_pv: '3d 3p 4s ' + Mn_sv: '3d 3p 3s 4s ' + Mo: '4d 5p 5s ' + Mo_pv: '4d 4p 5s ' + Mo_sv: '4d 4p 4s 5s ' + N: '2p 2s ' + N_h: '2p 2s ' + N_s: '2p 2s ' + Na: '3p 3s ' + Na_pv: '2p 3s ' + Na_sv: '2p 2s 3s ' + Nb_pv: '4d 4p 5s ' + Nb_sv: '4d 4p 4s 5s ' + Nd: '4f 5d 5p 5s 6s ' + Nd_3: '5d 5p 5s 6s ' + Ne: '2p 2s ' + Ni: '3d 4p 4s ' + Ni_pv: '3d 3p 4s ' + Np: '5f 6d 6p 6s 7s ' + Np_s: '5f 6d 6p 6s 7s ' + O: '2p 2s ' + O_h: '2p 2s ' + O_s: '2p 2s ' + Os: '5d 6p 6s ' + Os_pv: '5d 5p 6s ' + P: '3p 3s ' + P_h: '3p 3s ' + Pa: '5f 6d 6p 6s 7s ' + Pa_s: '5f 6d 6p 7s ' + Pb: '6p 6s ' + Pb_d: '5d 6p 6s ' + Pd: '4d 5p 5s ' + Pd_pv: '4d 4p 5s ' + Pm: '4f 5d 5p 5s 6s ' + Pm_3: '5d 5p 5s 6s ' + Po: '6p 6s ' + Po_d: '5d 6p 6s ' + Pr: '4f 5d 5p 5s 6s ' + Pr_3: '5d 5p 5s 6s ' + Pt: '5d 6p 6s ' + Pt_pv: '5d 5p 6p 6s ' + Pu: '5f 6d 6p 6s 7s ' + Pu_s: '5f 6d 6p 6s 7s ' + Ra_sv: '6p 6s 7s ' + Rb_pv: '4p 5s ' + Rb_sv: '4p 4s 5s ' + Re: '5d 6s ' + Re_pv: '5d 5p 6s ' + Rh: '4d 5p 5s ' + Rh_pv: '4d 4p 5s ' + Rn: '6p 6s ' + Ru: '4d 5p 5s ' + Ru_pv: '4d 4p 5s ' + Ru_sv: '4d 4p 4s 5s ' + S: '3p 3s ' + S_h: '3p 3s ' + Sb: '5p 5s ' + Sc: '3d 4p 4s ' + Sc_sv: '3d 3p 3s 4s ' + Se: '4p 4s ' + Si: '3p 3s ' + Sm: '4f 5d 5p 5s 6s ' + Sm_3: '5d 5p 5s 6s ' + Sn: '5p 5s ' + Sn_d: '4d 5p 5s ' + Sr_sv: '4p 4s 5s ' + Ta: '5d 6p 6s ' + Ta_pv: '5d 5p 6s ' + Tb: '4f 5d 5p 5s 6s ' + Tb_3: '5d 5p 6s ' + Tc: '4d 5p 5s ' + Tc_pv: '4d 4p 5s ' + Tc_sv: '4d 4p 4s 5s ' + Te: '5p 5s ' + Th: '5f 6d 6p 6s 7s ' + Th_s: '5f 6d 6p 7s ' + Ti: '3d 4p 4s ' + Ti_pv: '3d 3p 4s ' + Ti_sv: '3d 3p 3s 4s ' + Tl: '6p 6s ' + Tl_d: '5d 6p 6s ' + Tm: '4f 5d 5p 5s 6s ' + Tm_3: '5d 5p 6s ' + U: '5f 6d 6p 6s 7s ' + U_s: '5f 6d 6p 6s 7s ' + V: '3d 4p 4s ' + V_pv: '3d 3p 4s ' + V_sv: '3d 3p 3s 4s ' + W: '5d 6p 6s ' + W_sv: '5d 5p 5s 6s ' + Xe: '5p 5s ' + Y_sv: '4d 4p 4s 5s ' + Yb: '4f 5d 5p 5s 6s ' + Yb_2: '5d 5p 6s ' + Yb_3: '5d 5p 6s ' + Zn: '3d 4p 4s ' + Zr_sv: '4d 4p 4s 5s ' diff --git a/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_min.yaml b/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_min.yaml index fd16339c5ef..99fa68ba995 100644 --- a/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_min.yaml +++ b/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_min.yaml @@ -1,189 +1,189 @@ -BASIS: - Ac: '6d 6p 6s 7s ' - Ag: '4d 5s ' - Ag_pv: '4d 4p 5s ' - Al: '3p 3s ' - Am: '5f 6d 6p 6s 7s ' - Ar: '3p 3s ' - As: '4p 4s ' - As_d: '3d 4p 4s ' - At: '6p 6s ' - Au: '5d 6s ' - B: '2p 2s ' - B_h: '2p 2s ' - B_s: '2p 2s ' - Ba_sv: '5p 5s 6s ' - Be: '2s ' - Be_sv: '1s 2s ' - Bi: '6p 6s ' - Bi_d: '5d 6p 6s ' - Br: '4p 4s ' - C: '2p 2s ' - C_h: '2p 2s ' - C_s: '2p 2s ' - Ca_pv: '3p 4s ' - Ca_sv: '3p 3s 4s ' - Cd: '4d 5s ' - Ce: '4f 5d 5p 5s 6s ' - Ce_3: '5d 5p 5s 6s ' - Ce_h: '4f 5d 5p 5s 6s ' - Cf: '5f 6p 6s 7s ' - Cl: '3p 3s ' - Cl_h: '3p 3s ' - Cm: '5f 6d 6p 6s 7s ' - Co: '3d 4s ' - Co_pv: '3d 3p 4s ' - Co_sv: '3d 3p 3s 4s ' - Cr: '3d 4s ' - Cr_pv: '3d 3p 4s ' - Cr_sv: '3d 3p 3s 4s ' - Cs_sv: '5p 5s 6s ' - Cu: '3d 4s ' - Cu_pv: '3d 3p 4s ' - Dy: '4f 5d 5p 5s 6s ' - Dy_3: '5d 5p 6s ' - Er: '4f 5d 5p 5s 6s ' - Er_2: '5p 6s ' - Er_3: '5d 5p 6s ' - Eu: '4f 5p 5s 6s ' - Eu_2: '5p 6s ' - Eu_3: '5d 5p 6s ' - F: '2p 2s ' - F_h: '2p 2s ' - F_s: '2p 2s ' - Fe: '3d 4s ' - Fe_pv: '3d 3p 4s ' - Fe_sv: '3d 3p 3s 4s ' - Fr_sv: '6p 6s 7s ' - Ga: '4p 4s ' - Ga_d: '3d 4p 4s ' - Ga_h: '3d 4p 4s ' - Gd: '4f 5d 5p 5s 6s ' - Gd_3: '5d 5p 6s ' - Ge: '4p 4s ' - Ge_d: '3d 4p 4s ' - Ge_h: '3d 4p 4s ' - H: '1s ' - H_h: '1s ' - H_s: '1s ' - He: '1s ' - Hf: '5d 6s ' - Hf_pv: '5d 5p 6s ' - Hf_sv: '5d 5p 5s ' - Hg: '5d 6s ' - Ho: '4f 5d 5p 5s 6s ' - Ho_3: '5d 5p 6s ' - I: '5p 5s ' - In: '5p 5s ' - In_d: '4d 5p 5s ' - Ir: '5d 6s ' - K_pv: '3p 4s ' - K_sv: '3p 3s 4s ' - Kr: '4p 4s ' - La: '5d 5p 5s 6s ' - La_s: '5d 5p 6s ' - Li: '2s ' - Li_sv: '1s 2s ' - Lu: '4f 5d 5p 5s 6s ' - Lu_3: '5d 5p 6s ' - Mg: '3s ' - Mg_pv: '2p 3s ' - Mg_sv: '2p 2s 3s ' - Mn: '3d 4s ' - Mn_pv: '3d 3p 4s ' - Mn_sv: '3d 3p 3s 4s ' - Mo: '4d 5s ' - Mo_pv: '4d 4p 5s ' - Mo_sv: '4d 4p 4s 5s ' - N: '2p 2s ' - N_h: '2p 2s ' - N_s: '2p 2s ' - Na: '3s ' - Na_pv: '2p 3s ' - Na_sv: '2p 2s 3s ' - Nb_pv: '4d 4p 5s ' - Nb_sv: '4d 4p 4s 5s ' - Nd: '4f 5d 5p 5s 6s ' - Nd_3: '5d 5p 5s 6s ' - Ne: '2p 2s ' - Ni: '3d 4s ' - Ni_pv: '3d 3p 4s ' - Np: '5f 6d 6p 6s 7s ' - Np_s: '5f 6d 6p 6s 7s ' - O: '2p 2s ' - O_h: '2p 2s ' - O_s: '2p 2s ' - Os: '5d 6s ' - Os_pv: '5d 5p 6s ' - P: '3p 3s ' - P_h: '3p 3s ' - Pa: '5f 6d 6p 6s 7s ' - Pa_s: '5f 6d 6p 7s ' - Pb: '6p 6s ' - Pb_d: '5d 6p 6s ' - Pd: '4d 5s ' - Pd_pv: '4d 4p 5s ' - Pm: '4f 5d 5p 5s 6s ' - Pm_3: '5d 5p 5s 6s ' - Po: '6p 6s ' - Po_d: '5d 6p 6s ' - Pr: '4f 5d 5p 5s 6s ' - Pr_3: '5d 5p 5s 6s ' - Pt: '5d 6s ' - Pt_pv: '5d 5p 6s ' - Pu: '5f 6d 6p 6s 7s ' - Pu_s: '5f 6d 6p 6s 7s ' - Ra_sv: '6p 6s 7s ' - Rb_pv: '4p 5s ' - Rb_sv: '4p 4s 5s ' - Re: '5d 6s ' - Re_pv: '5d 5p 6s ' - Rh: '4d 5s ' - Rh_pv: '4d 4p 5s ' - Rn: '6p 6s ' - Ru: '4d 5s ' - Ru_pv: '4d 4p 5s ' - Ru_sv: '4d 4p 4s 5s ' - S: '3p 3s ' - S_h: '3p 3s ' - Sb: '5p 5s ' - Sc: '3d 4s ' - Sc_sv: '3d 3p 3s 4s ' - Se: '4p 4s ' - Si: '3p 3s ' - Sm: '4f 5d 5p 5s 6s ' - Sm_3: '5d 5p 5s 6s ' - Sn: '5p 5s ' - Sn_d: '4d 5p 5s ' - Sr_sv: '4p 4s 5s ' - Ta: '5d 6s ' - Ta_pv: '5d 5p 6s ' - Tb: '4f 5d 5p 5s 6s ' - Tb_3: '5d 5p 6s ' - Tc: '4d 5s ' - Tc_pv: '4d 4p 5s ' - Tc_sv: '4d 4p 4s 5s ' - Te: '5p 5s ' - Th: '5f 6d 6p 6s 7s ' - Th_s: '5f 6d 6p 7s ' - Ti: '3d 4s ' - Ti_pv: '3d 3p 4s ' - Ti_sv: '3d 3p 3s 4s ' - Tl: '6p 6s ' - Tl_d: '5d 6p 6s ' - Tm: '4f 5d 5p 5s 6s ' - Tm_3: '5d 5p 6s ' - U: '5f 6d 6p 6s 7s ' - U_s: '5f 6d 6p 6s 7s ' - V: '3d 4s ' - V_pv: '3d 3p 4s ' - V_sv: '3d 3p 3s 4s ' - W: '5d 6s ' - W_sv: '5d 5p 5s 6s ' - Xe: '5p 5s ' - Y_sv: '4d 4p 4s 5s ' - Yb: '4f 5p 5s 6s ' - Yb_2: '5p 6s ' - Yb_3: '5d 5p 6s ' - Zn: '3d 4s ' - Zr_sv: '4d 4p 4s 5s ' +BASIS: + Ac: '6d 6p 6s 7s ' + Ag: '4d 5s ' + Ag_pv: '4d 4p 5s ' + Al: '3p 3s ' + Am: '5f 6d 6p 6s 7s ' + Ar: '3p 3s ' + As: '4p 4s ' + As_d: '3d 4p 4s ' + At: '6p 6s ' + Au: '5d 6s ' + B: '2p 2s ' + B_h: '2p 2s ' + B_s: '2p 2s ' + Ba_sv: '5p 5s 6s ' + Be: '2s ' + Be_sv: '1s 2s ' + Bi: '6p 6s ' + Bi_d: '5d 6p 6s ' + Br: '4p 4s ' + C: '2p 2s ' + C_h: '2p 2s ' + C_s: '2p 2s ' + Ca_pv: '3p 4s ' + Ca_sv: '3p 3s 4s ' + Cd: '4d 5s ' + Ce: '4f 5d 5p 5s 6s ' + Ce_3: '5d 5p 5s 6s ' + Ce_h: '4f 5d 5p 5s 6s ' + Cf: '5f 6p 6s 7s ' + Cl: '3p 3s ' + Cl_h: '3p 3s ' + Cm: '5f 6d 6p 6s 7s ' + Co: '3d 4s ' + Co_pv: '3d 3p 4s ' + Co_sv: '3d 3p 3s 4s ' + Cr: '3d 4s ' + Cr_pv: '3d 3p 4s ' + Cr_sv: '3d 3p 3s 4s ' + Cs_sv: '5p 5s 6s ' + Cu: '3d 4s ' + Cu_pv: '3d 3p 4s ' + Dy: '4f 5d 5p 5s 6s ' + Dy_3: '5d 5p 6s ' + Er: '4f 5d 5p 5s 6s ' + Er_2: '5p 6s ' + Er_3: '5d 5p 6s ' + Eu: '4f 5p 5s 6s ' + Eu_2: '5p 6s ' + Eu_3: '5d 5p 6s ' + F: '2p 2s ' + F_h: '2p 2s ' + F_s: '2p 2s ' + Fe: '3d 4s ' + Fe_pv: '3d 3p 4s ' + Fe_sv: '3d 3p 3s 4s ' + Fr_sv: '6p 6s 7s ' + Ga: '4p 4s ' + Ga_d: '3d 4p 4s ' + Ga_h: '3d 4p 4s ' + Gd: '4f 5d 5p 5s 6s ' + Gd_3: '5d 5p 6s ' + Ge: '4p 4s ' + Ge_d: '3d 4p 4s ' + Ge_h: '3d 4p 4s ' + H: '1s ' + H_h: '1s ' + H_s: '1s ' + He: '1s ' + Hf: '5d 6s ' + Hf_pv: '5d 5p 6s ' + Hf_sv: '5d 5p 5s ' + Hg: '5d 6s ' + Ho: '4f 5d 5p 5s 6s ' + Ho_3: '5d 5p 6s ' + I: '5p 5s ' + In: '5p 5s ' + In_d: '4d 5p 5s ' + Ir: '5d 6s ' + K_pv: '3p 4s ' + K_sv: '3p 3s 4s ' + Kr: '4p 4s ' + La: '5d 5p 5s 6s ' + La_s: '5d 5p 6s ' + Li: '2s ' + Li_sv: '1s 2s ' + Lu: '4f 5d 5p 5s 6s ' + Lu_3: '5d 5p 6s ' + Mg: '3s ' + Mg_pv: '2p 3s ' + Mg_sv: '2p 2s 3s ' + Mn: '3d 4s ' + Mn_pv: '3d 3p 4s ' + Mn_sv: '3d 3p 3s 4s ' + Mo: '4d 5s ' + Mo_pv: '4d 4p 5s ' + Mo_sv: '4d 4p 4s 5s ' + N: '2p 2s ' + N_h: '2p 2s ' + N_s: '2p 2s ' + Na: '3s ' + Na_pv: '2p 3s ' + Na_sv: '2p 2s 3s ' + Nb_pv: '4d 4p 5s ' + Nb_sv: '4d 4p 4s 5s ' + Nd: '4f 5d 5p 5s 6s ' + Nd_3: '5d 5p 5s 6s ' + Ne: '2p 2s ' + Ni: '3d 4s ' + Ni_pv: '3d 3p 4s ' + Np: '5f 6d 6p 6s 7s ' + Np_s: '5f 6d 6p 6s 7s ' + O: '2p 2s ' + O_h: '2p 2s ' + O_s: '2p 2s ' + Os: '5d 6s ' + Os_pv: '5d 5p 6s ' + P: '3p 3s ' + P_h: '3p 3s ' + Pa: '5f 6d 6p 6s 7s ' + Pa_s: '5f 6d 6p 7s ' + Pb: '6p 6s ' + Pb_d: '5d 6p 6s ' + Pd: '4d 5s ' + Pd_pv: '4d 4p 5s ' + Pm: '4f 5d 5p 5s 6s ' + Pm_3: '5d 5p 5s 6s ' + Po: '6p 6s ' + Po_d: '5d 6p 6s ' + Pr: '4f 5d 5p 5s 6s ' + Pr_3: '5d 5p 5s 6s ' + Pt: '5d 6s ' + Pt_pv: '5d 5p 6s ' + Pu: '5f 6d 6p 6s 7s ' + Pu_s: '5f 6d 6p 6s 7s ' + Ra_sv: '6p 6s 7s ' + Rb_pv: '4p 5s ' + Rb_sv: '4p 4s 5s ' + Re: '5d 6s ' + Re_pv: '5d 5p 6s ' + Rh: '4d 5s ' + Rh_pv: '4d 4p 5s ' + Rn: '6p 6s ' + Ru: '4d 5s ' + Ru_pv: '4d 4p 5s ' + Ru_sv: '4d 4p 4s 5s ' + S: '3p 3s ' + S_h: '3p 3s ' + Sb: '5p 5s ' + Sc: '3d 4s ' + Sc_sv: '3d 3p 3s 4s ' + Se: '4p 4s ' + Si: '3p 3s ' + Sm: '4f 5d 5p 5s 6s ' + Sm_3: '5d 5p 5s 6s ' + Sn: '5p 5s ' + Sn_d: '4d 5p 5s ' + Sr_sv: '4p 4s 5s ' + Ta: '5d 6s ' + Ta_pv: '5d 5p 6s ' + Tb: '4f 5d 5p 5s 6s ' + Tb_3: '5d 5p 6s ' + Tc: '4d 5s ' + Tc_pv: '4d 4p 5s ' + Tc_sv: '4d 4p 4s 5s ' + Te: '5p 5s ' + Th: '5f 6d 6p 6s 7s ' + Th_s: '5f 6d 6p 7s ' + Ti: '3d 4s ' + Ti_pv: '3d 3p 4s ' + Ti_sv: '3d 3p 3s 4s ' + Tl: '6p 6s ' + Tl_d: '5d 6p 6s ' + Tm: '4f 5d 5p 5s 6s ' + Tm_3: '5d 5p 6s ' + U: '5f 6d 6p 6s 7s ' + U_s: '5f 6d 6p 6s 7s ' + V: '3d 4s ' + V_pv: '3d 3p 4s ' + V_sv: '3d 3p 3s 4s ' + W: '5d 6s ' + W_sv: '5d 5p 5s 6s ' + Xe: '5p 5s ' + Y_sv: '4d 4p 4s 5s ' + Yb: '4f 5p 5s 6s ' + Yb_2: '5p 6s ' + Yb_3: '5d 5p 6s ' + Zn: '3d 4s ' + Zr_sv: '4d 4p 4s 5s ' diff --git a/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_standard.yaml b/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_standard.yaml index 8583c830fec..b65b59dfac5 100644 --- a/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_standard.yaml +++ b/src/pymatgen/io/lobster/lobster_basis/BASIS_PBE_54_standard.yaml @@ -1,189 +1,189 @@ -BASIS: - Ac: '5f 6d 6p 6s 7s ' - Ag: '4d 5p 5s ' - Ag_pv: '4d 4p 5p 5s ' - Al: '3p 3s ' - Am: '5f 6d 6p 6s 7s ' - Ar: '3p 3s ' - As: '4p 4s ' - As_d: '3d 4p 4s ' - At: '6p 6s ' - Au: '5d 6p 6s ' - B: '2p 2s ' - B_h: '2p 2s ' - B_s: '2p 2s ' - Ba_sv: '5p 5s 6s ' - Be: '2p 2s ' - Be_sv: '1s 2p 2s ' - Bi: '6p 6s ' - Bi_d: '5d 6p 6s ' - Br: '4p 4s ' - C: '2p 2s ' - C_h: '2p 2s ' - C_s: '2p 2s ' - Ca_pv: '3p 4s ' - Ca_sv: '3p 3s 4s ' - Cd: '4d 5p 5s ' - Ce: '4f 5d 5p 5s 6s ' - Ce_3: '5d 5p 5s 6s ' - Ce_h: '4f 5d 5p 5s 6s ' - Cf: '5f 6p 6s 7s ' - Cl: '3p 3s ' - Cl_h: '3p 3s ' - Cm: '5f 6d 6p 6s 7s ' - Co: '3d 4p 4s ' - Co_pv: '3d 3p 4s ' - Co_sv: '3d 3p 3s 4p 4s ' - Cr: '3d 4p 4s ' - Cr_pv: '3d 3p 4s ' - Cr_sv: '3d 3p 3s 4s ' - Cs_sv: '5p 5s 6s ' - Cu: '3d 4p 4s ' - Cu_pv: '3d 3p 4s ' - Dy: '4f 5d 5p 5s 6s ' - Dy_3: '5d 5p 6s ' - Er: '4f 5d 5p 5s 6s ' - Er_2: '5d 5p 6s ' - Er_3: '5d 5p 6s ' - Eu: '4f 5d 5p 5s 6s ' - Eu_2: '5d 5p 6s ' - Eu_3: '5d 5p 6s ' - F: '2p 2s ' - F_h: '2p 2s ' - F_s: '2p 2s ' - Fe: '3d 4p 4s ' - Fe_pv: '3d 3p 4s ' - Fe_sv: '3d 3p 3s 4s ' - Fr_sv: '6p 6s 7s ' - Ga: '4p 4s ' - Ga_d: '3d 4p 4s ' - Ga_h: '3d 4p 4s ' - Gd: '4f 5d 5p 5s 6s ' - Gd_3: '5d 5p 6s ' - Ge: '4p 4s ' - Ge_d: '3d 4p 4s ' - Ge_h: '3d 4p 4s ' - H: '1s ' - H_h: '1s ' - H_s: '1s ' - He: '1s ' - Hf: '5d 6p 6s ' - Hf_pv: '5d 5p 6s ' - Hf_sv: '5d 5p 5s 6s ' - Hg: '5d 6p 6s ' - Ho: '4f 5d 5p 5s 6s ' - Ho_3: '5d 5p 6s ' - I: '5p 5s ' - In: '5p 5s ' - In_d: '4d 5p 5s ' - Ir: '5d 6p 6s ' - K_pv: '3p 4s ' - K_sv: '3p 3s 4s ' - Kr: '4p 4s ' - La: '4f 5d 5p 5s 6s ' - La_s: '4f 5d 5p 6s ' - Li: '2p 2s ' - Li_sv: '1s 2s 2p ' - Lu: '4f 5d 5p 5s 6s ' - Lu_3: '5d 5p 6s ' - Mg: '3p 3s ' - Mg_pv: '2p 3s ' - Mg_sv: '2p 2s 3s ' - Mn: '3d 4p 4s ' - Mn_pv: '3d 3p 4s ' - Mn_sv: '3d 3p 3s 4s ' - Mo: '4d 5p 5s ' - Mo_pv: '4d 4p 5s ' - Mo_sv: '4d 4p 4s 5s ' - N: '2p 2s ' - N_h: '2p 2s ' - N_s: '2p 2s ' - Na: '3p 3s ' - Na_pv: '2p 3s ' - Na_sv: '2p 2s 3s ' - Nb_pv: '4d 4p 5s ' - Nb_sv: '4d 4p 4s 5s ' - Nd: '4f 5d 5p 5s 6s ' - Nd_3: '5d 5p 5s 6s ' - Ne: '2p 2s ' - Ni: '3d 4p 4s ' - Ni_pv: '3d 3p 4s ' - Np: '5f 6d 6p 6s 7s ' - Np_s: '5f 6d 6p 6s 7s ' - O: '2p 2s ' - O_h: '2p 2s ' - O_s: '2p 2s ' - Os: '5d 6p 6s ' - Os_pv: '5d 5p 6s ' - P: '3p 3s ' - P_h: '3p 3s ' - Pa: '5f 6d 6p 6s 7s ' - Pa_s: '5f 6d 6p 7s ' - Pb: '6p 6s ' - Pb_d: '5d 6p 6s ' - Pd: '4d 5p 5s ' - Pd_pv: '4d 4p 5s ' - Pm: '4f 5d 5p 5s 6s ' - Pm_3: '5d 5p 5s 6s ' - Po: '6p 6s ' - Po_d: '5d 6p 6s ' - Pr: '4f 5d 5p 5s 6s ' - Pr_3: '5d 5p 5s 6s ' - Pt: '5d 6p 6s ' - Pt_pv: '5d 5p 6p 6s ' - Pu: '5f 6d 6p 6s 7s ' - Pu_s: '5f 6d 6p 6s 7s ' - Ra_sv: '6p 6s 7s ' - Rb_pv: '4p 5s ' - Rb_sv: '4p 4s 5s ' - Re: '5d 6s ' - Re_pv: '5d 5p 6s ' - Rh: '4d 5p 5s ' - Rh_pv: '4d 4p 5s ' - Rn: '6p 6s ' - Ru: '4d 5p 5s ' - Ru_pv: '4d 4p 5s ' - Ru_sv: '4d 4p 4s 5s ' - S: '3p 3s ' - S_h: '3p 3s ' - Sb: '5p 5s ' - Sc: '3d 4p 4s ' - Sc_sv: '3d 3p 3s 4s ' - Se: '4p 4s ' - Si: '3p 3s ' - Sm: '4f 5d 5p 5s 6s ' - Sm_3: '5d 5p 5s 6s ' - Sn: '5p 5s ' - Sn_d: '4d 5p 5s ' - Sr_sv: '4p 4s 5s ' - Ta: '5d 6p 6s ' - Ta_pv: '5d 5p 6s ' - Tb: '4f 5d 5p 5s 6s ' - Tb_3: '5d 5p 6s ' - Tc: '4d 5p 5s ' - Tc_pv: '4d 4p 5s ' - Tc_sv: '4d 4p 4s 5s ' - Te: '5p 5s ' - Th: '5f 6d 6p 6s 7s ' - Th_s: '5f 6d 6p 7s ' - Ti: '3d 4p 4s ' - Ti_pv: '3d 3p 4s ' - Ti_sv: '3d 3p 3s 4s ' - Tl: '6p 6s ' - Tl_d: '5d 6p 6s ' - Tm: '4f 5d 5p 5s 6s ' - Tm_3: '5d 5p 6s ' - U: '5f 6d 6p 6s 7s ' - U_s: '5f 6d 6p 6s 7s ' - V: '3d 4p 4s ' - V_pv: '3d 3p 4s ' - V_sv: '3d 3p 3s 4s ' - W: '5d 6p 6s ' - W_sv: '5d 5p 5s 6s ' - Xe: '5p 5s ' - Y_sv: '4d 4p 4s 5s ' - Yb: '4f 5d 5p 5s 6s ' - Yb_2: '5d 5p 6s ' - Yb_3: '5d 5p 6s ' - Zn: '3d 4p 4s ' - Zr_sv: '4d 4p 4s 5s ' +BASIS: + Ac: '5f 6d 6p 6s 7s ' + Ag: '4d 5p 5s ' + Ag_pv: '4d 4p 5p 5s ' + Al: '3p 3s ' + Am: '5f 6d 6p 6s 7s ' + Ar: '3p 3s ' + As: '4p 4s ' + As_d: '3d 4p 4s ' + At: '6p 6s ' + Au: '5d 6p 6s ' + B: '2p 2s ' + B_h: '2p 2s ' + B_s: '2p 2s ' + Ba_sv: '5p 5s 6s ' + Be: '2p 2s ' + Be_sv: '1s 2p 2s ' + Bi: '6p 6s ' + Bi_d: '5d 6p 6s ' + Br: '4p 4s ' + C: '2p 2s ' + C_h: '2p 2s ' + C_s: '2p 2s ' + Ca_pv: '3p 4s ' + Ca_sv: '3p 3s 4s ' + Cd: '4d 5p 5s ' + Ce: '4f 5d 5p 5s 6s ' + Ce_3: '5d 5p 5s 6s ' + Ce_h: '4f 5d 5p 5s 6s ' + Cf: '5f 6p 6s 7s ' + Cl: '3p 3s ' + Cl_h: '3p 3s ' + Cm: '5f 6d 6p 6s 7s ' + Co: '3d 4p 4s ' + Co_pv: '3d 3p 4s ' + Co_sv: '3d 3p 3s 4p 4s ' + Cr: '3d 4p 4s ' + Cr_pv: '3d 3p 4s ' + Cr_sv: '3d 3p 3s 4s ' + Cs_sv: '5p 5s 6s ' + Cu: '3d 4p 4s ' + Cu_pv: '3d 3p 4s ' + Dy: '4f 5d 5p 5s 6s ' + Dy_3: '5d 5p 6s ' + Er: '4f 5d 5p 5s 6s ' + Er_2: '5d 5p 6s ' + Er_3: '5d 5p 6s ' + Eu: '4f 5d 5p 5s 6s ' + Eu_2: '5d 5p 6s ' + Eu_3: '5d 5p 6s ' + F: '2p 2s ' + F_h: '2p 2s ' + F_s: '2p 2s ' + Fe: '3d 4p 4s ' + Fe_pv: '3d 3p 4s ' + Fe_sv: '3d 3p 3s 4s ' + Fr_sv: '6p 6s 7s ' + Ga: '4p 4s ' + Ga_d: '3d 4p 4s ' + Ga_h: '3d 4p 4s ' + Gd: '4f 5d 5p 5s 6s ' + Gd_3: '5d 5p 6s ' + Ge: '4p 4s ' + Ge_d: '3d 4p 4s ' + Ge_h: '3d 4p 4s ' + H: '1s ' + H_h: '1s ' + H_s: '1s ' + He: '1s ' + Hf: '5d 6p 6s ' + Hf_pv: '5d 5p 6s ' + Hf_sv: '5d 5p 5s 6s ' + Hg: '5d 6p 6s ' + Ho: '4f 5d 5p 5s 6s ' + Ho_3: '5d 5p 6s ' + I: '5p 5s ' + In: '5p 5s ' + In_d: '4d 5p 5s ' + Ir: '5d 6p 6s ' + K_pv: '3p 4s ' + K_sv: '3p 3s 4s ' + Kr: '4p 4s ' + La: '4f 5d 5p 5s 6s ' + La_s: '4f 5d 5p 6s ' + Li: '2p 2s ' + Li_sv: '1s 2s 2p ' + Lu: '4f 5d 5p 5s 6s ' + Lu_3: '5d 5p 6s ' + Mg: '3p 3s ' + Mg_pv: '2p 3s ' + Mg_sv: '2p 2s 3s ' + Mn: '3d 4p 4s ' + Mn_pv: '3d 3p 4s ' + Mn_sv: '3d 3p 3s 4s ' + Mo: '4d 5p 5s ' + Mo_pv: '4d 4p 5s ' + Mo_sv: '4d 4p 4s 5s ' + N: '2p 2s ' + N_h: '2p 2s ' + N_s: '2p 2s ' + Na: '3p 3s ' + Na_pv: '2p 3s ' + Na_sv: '2p 2s 3s ' + Nb_pv: '4d 4p 5s ' + Nb_sv: '4d 4p 4s 5s ' + Nd: '4f 5d 5p 5s 6s ' + Nd_3: '5d 5p 5s 6s ' + Ne: '2p 2s ' + Ni: '3d 4p 4s ' + Ni_pv: '3d 3p 4s ' + Np: '5f 6d 6p 6s 7s ' + Np_s: '5f 6d 6p 6s 7s ' + O: '2p 2s ' + O_h: '2p 2s ' + O_s: '2p 2s ' + Os: '5d 6p 6s ' + Os_pv: '5d 5p 6s ' + P: '3p 3s ' + P_h: '3p 3s ' + Pa: '5f 6d 6p 6s 7s ' + Pa_s: '5f 6d 6p 7s ' + Pb: '6p 6s ' + Pb_d: '5d 6p 6s ' + Pd: '4d 5p 5s ' + Pd_pv: '4d 4p 5s ' + Pm: '4f 5d 5p 5s 6s ' + Pm_3: '5d 5p 5s 6s ' + Po: '6p 6s ' + Po_d: '5d 6p 6s ' + Pr: '4f 5d 5p 5s 6s ' + Pr_3: '5d 5p 5s 6s ' + Pt: '5d 6p 6s ' + Pt_pv: '5d 5p 6p 6s ' + Pu: '5f 6d 6p 6s 7s ' + Pu_s: '5f 6d 6p 6s 7s ' + Ra_sv: '6p 6s 7s ' + Rb_pv: '4p 5s ' + Rb_sv: '4p 4s 5s ' + Re: '5d 6s ' + Re_pv: '5d 5p 6s ' + Rh: '4d 5p 5s ' + Rh_pv: '4d 4p 5s ' + Rn: '6p 6s ' + Ru: '4d 5p 5s ' + Ru_pv: '4d 4p 5s ' + Ru_sv: '4d 4p 4s 5s ' + S: '3p 3s ' + S_h: '3p 3s ' + Sb: '5p 5s ' + Sc: '3d 4p 4s ' + Sc_sv: '3d 3p 3s 4s ' + Se: '4p 4s ' + Si: '3p 3s ' + Sm: '4f 5d 5p 5s 6s ' + Sm_3: '5d 5p 5s 6s ' + Sn: '5p 5s ' + Sn_d: '4d 5p 5s ' + Sr_sv: '4p 4s 5s ' + Ta: '5d 6p 6s ' + Ta_pv: '5d 5p 6s ' + Tb: '4f 5d 5p 5s 6s ' + Tb_3: '5d 5p 6s ' + Tc: '4d 5p 5s ' + Tc_pv: '4d 4p 5s ' + Tc_sv: '4d 4p 4s 5s ' + Te: '5p 5s ' + Th: '5f 6d 6p 6s 7s ' + Th_s: '5f 6d 6p 7s ' + Ti: '3d 4p 4s ' + Ti_pv: '3d 3p 4s ' + Ti_sv: '3d 3p 3s 4s ' + Tl: '6p 6s ' + Tl_d: '5d 6p 6s ' + Tm: '4f 5d 5p 5s 6s ' + Tm_3: '5d 5p 6s ' + U: '5f 6d 6p 6s 7s ' + U_s: '5f 6d 6p 6s 7s ' + V: '3d 4p 4s ' + V_pv: '3d 3p 4s ' + V_sv: '3d 3p 3s 4s ' + W: '5d 6p 6s ' + W_sv: '5d 5p 5s 6s ' + Xe: '5p 5s ' + Y_sv: '4d 4p 4s 5s ' + Yb: '4f 5d 5p 5s 6s ' + Yb_2: '5d 5p 6s ' + Yb_3: '5d 5p 6s ' + Zn: '3d 4p 4s ' + Zr_sv: '4d 4p 4s 5s ' diff --git a/src/pymatgen/io/vasp/outputs.py b/src/pymatgen/io/vasp/outputs.py index 948fb9c6454..53f2e255744 100644 --- a/src/pymatgen/io/vasp/outputs.py +++ b/src/pymatgen/io/vasp/outputs.py @@ -192,8 +192,9 @@ class Vasprun(MSONable): Attributes: ionic_steps (list): All ionic steps in the run as a list of {"structure": structure at end of run, "electronic_steps": {All electronic step data in vasprun file}, "stresses": stress matrix}. - tdos (Dos): Total dos calculated at the end of run. - idos (Dos): Integrated dos calculated at the end of run. + tdos (Dos): Total dos calculated at the end of run. Note that this is rounded to 4 decimal + places by VASP. + idos (Dos): Integrated dos calculated at the end of run. Rounded to 4 decimal places by VASP. pdos (list): List of list of PDos objects. Access as pdos[atomindex][orbitalindex]. efermi (float): Fermi energy. eigenvalues (dict): Final eigenvalues as a dict of {(spin, kpoint index):[[eigenvalue, occu]]}. @@ -273,6 +274,8 @@ def __init__( parse_dos (bool): Whether to parse the dos. Defaults to True. Set to False to shave off significant time from the parsing if you are not interested in getting those data. + Note that the DOS output from VASP is rounded to 4 decimal places, + which can give some slight inaccuracies. parse_eigen (bool): Whether to parse the eigenvalues. Defaults to True. Set to False to shave off significant time from the parsing if you are not interested in getting those data.