Calculators
- class wannierberri.calculators.Calculator(degen_thresh=0.0001, degen_Kramers=False, save_mode='bin+txt', print_comment=True)[source]
Static (dependent only on Fermi level)
- class wannierberri.calculators.static.StaticCalculator(Efermi, tetra=False, smoother=None, constant_factor=1.0, use_factor=True, kwargs_formula={}, Emin=-inf, Emax=inf, hole_like=False, **kwargs)[source]
In the following **kwargs refer to the arguments of StaticCalculator
- class wannierberri.calculators.static.AHC(constant_factor=-2434134.805787947, **kwargs)[source]
Bases:
StaticCalculator
Anomalous Hall conductivity (\(s^3 \cdot A^2 / (kg \cdot m^3) = S/m\))
With Fermi sea integral Eq(11) in RefOutput: \(O = -e^2/\hbar \int [dk] \Omega f\)Instruction: \(j_\alpha = \sigma_{\alpha\beta} E_\beta = \epsilon_{\alpha\beta\delta} O_\delta E_\beta\)
- class wannierberri.calculators.static.AHC_Zeeman_orb(constant_factor=-18.49050887090995, **kwargs)[source]
Bases:
StaticCalculator
AHC conductivity Zeeman correction term orbital part (\(S/m/T\))
With Fermi surface integral.Output: \(ZAHC^{orb}_{\alpha\beta :\mu} = e^2/\hbar \int [dk] \Omega_\delta * m_\mu f'\)Where \(m = H + G - 2Ef*\Omega\)Instruction: \(j_\alpha = \sigma_{\alpha\beta :\mu} E_\beta B_\mu = e \epsilon_{\alpha\beta\delta} ZAHC^{orb}_{\alpha\beta:\mu} E_\beta B_\mu\)
- class wannierberri.calculators.static.AHC_Zeeman_spin(constant_factor=-140.89701623353938, **kwargs)[source]
Bases:
StaticCalculator
AHC conductivity Zeeman correcton term spin part (\(S/m/T\))
With Fermi surface integral.Output: \(ZAHC^{spin}_{\alpha\beta :\mu} = e^2/\hbar \int [dk] \Omega_\delta * s_\mu f'\)Instruction: \(j_\alpha = \sigma_{\alpha\beta :\mu} E_\beta B_\mu = \epsilon_{\alpha\beta\delta} ZAHC^{spin}_{\alpha\beta:\mu} E_\beta B_\mu\)
- class wannierberri.calculators.static.AHC_test(constant_factor=-2434134.805787947, **kwargs)[source]
Bases:
StaticCalculator
Anomalous Hall conductivity for testing (\(s^3 \cdot A^2 / (kg \cdot m^3) = S/m\))
Output: \(O = - e^2/\hbar \int [dk] \Omega f\)Instruction: \(j_\alpha = \sigma_{\alpha\beta} E_\beta = \epsilon_{\alpha\beta\delta} O_\delta E_\beta\)
- class wannierberri.calculators.static.BerryDipole_FermiSea(**kwargs)[source]
Bases:
StaticCalculator
Berry curvature dipole (dimensionless)
With Fermi sea integral. Eq(29) in RefOutput: \(D_{\beta\delta} = \int [dk] \partial_\beta \Omega_\delta f\)
- class wannierberri.calculators.static.BerryDipole_FermiSea_test(**kwargs)[source]
Bases:
StaticCalculator
Berry curvature dipole for testing (dimensionless)
With Fermi sea integral.Output: \(D_{\beta\delta} = \tau \int [dk] \partial_beta \Omega_\delta f\)
- class wannierberri.calculators.static.BerryDipole_FermiSurf(**kwargs)[source]
Bases:
StaticCalculator
Berry curvature dipole (dimensionless)
With Fermi surface integral. Eq(8) in RefOutput: \(D_{\beta\delta} = -\int [dk] v_\beta \Omega_\delta f'\)
- class wannierberri.calculators.static.CumDOS(**kwargs)[source]
Bases:
_DOS
Cumulative density of states
- class wannierberri.calculators.static.GME_orb_FermiSea(constant_factor=-0.00012170674028939735, **kwargs)[source]
Bases:
StaticCalculator
Gyrotropic tensor orbital part (\(A\)) | With Fermi sea integral. Eq(30) in Ref | Output: \(K^{orb}_{\alpha :\mu} = -\int [dk] \partial_\alpha m_\mu f\) | Where \(m = H + G - 2E_f \cdot \Omega\)
- class wannierberri.calculators.static.GME_orb_FermiSea_test(constant_factor=-0.00012170674028939735, **kwargs)[source]
Bases:
StaticCalculator
Gyrotropic tensor orbital part for testing (\(A\)) | With Fermi sea integral. | Output: \(K^{orb}_{\alpha :\mu} = -\int [dk] \partial_\alpha m_\mu f\) | Where :math: m = H + G - 2E_f cdot Omega
- class wannierberri.calculators.static.GME_orb_FermiSurf(constant_factor=-0.00012170674028939735, **kwargs)[source]
Bases:
StaticCalculator
Gyrotropic tensor orbital part (\(A\)) | With Fermi surface integral. Eq(9) Ref | Output: \(K^{orb}_{\alpha :\mu} = \int [dk] v_\alpha m^{orb}_\mu f'\) | Where \(m^{orb} = H + G - 2E_f \cdot \Omega\)
- class wannierberri.calculators.static.GME_spin_FermiSea(constant_factor=-0.0009274010078362162, **kwargs)[source]
Bases:
StaticCalculator
Gyrotropic tensor spin part (\(A\))
With Fermi sea integral. Eq(30) in RefOutput: \(K^{spin}_{\alpha :\mu} = -\int [dk] \partial_\alpha s_\mu f\)
- class wannierberri.calculators.static.GME_spin_FermiSurf(constant_factor=-0.0009274010078362162, **kwargs)[source]
Bases:
StaticCalculator
Gyrotropic tensor spin part (\(A\))
With Fermi surface integral. Eq(9) RefOutput: \(K^{spin}_{\alpha :\mu} = \tau \int [dk] v_\alpha s_\mu f'\)
- class wannierberri.calculators.static.Hall_classic_FermiSea(constant_factor=-85.35860804600885, **kwargs)[source]
Bases:
StaticCalculator
Classic Hall conductivity (\(S/m/T\))
With Fermi sea integral.Output: \(\sigma_{\alpha\beta :\mu} = -e^3/\hbar^2 \tau^2 \epsilon_{\gamma\mu\rho} \int [dk] \partial_\gamma v_\alpha \partial_\rho v_\beta f\)Instruction: \(j_\alpha = \sigma_{\alpha\beta :\mu} E_\beta B_\mu\)
- class wannierberri.calculators.static.Hall_classic_FermiSurf(constant_factor=-85.35860804600885, **kwargs)[source]
Bases:
StaticCalculator
Classic Hall conductivity (\(S/m/T\))
With Fermi surface integral.Output: \(\sigma_{\alpha\beta :\mu} = e^3/\hbar^2 \tau^2 \epsilon_{\gamma\mu\rho} \int [dk] v_\alpha \partial_\rho v_\beta v_\gamma f'\)Instruction: \(j_\alpha = \sigma_{\alpha\beta :\mu} E_\beta B_\mu\)
- class wannierberri.calculators.static.Morb(constant_factor=-0.13123421180424588, **kwargs)[source]
Bases:
StaticCalculator
Orbital magnetic moment per unit cell (\(\mu_B\))
Eq(1) in RefOutput: \(M = -\int [dk] (H + G - 2E_f \cdot \Omega) f\)
- class wannierberri.calculators.static.Morb_test(constant_factor=-0.13123421180424588, **kwargs)[source]
Bases:
StaticCalculator
- class wannierberri.calculators.static.NLAHC_FermiSea(constant_factor=0.000369810177418199, **kwargs)[source]
Bases:
BerryDipole_FermiSea
Nonlinear anomalous Hall conductivity (\(S^2/A\))
With Fermi sea integral. Eq(29) in RefOutput: \(D_{\beta\delta} = e^3/\hbar^2 \tau \int [dk] \partial_\beta \Omega_\delta f\)Instruction: \(j_\alpha = \epsilon_{\alpha\delta\gamma} D_{\beta\delta} E_\beta E\gamma\)
- class wannierberri.calculators.static.NLAHC_FermiSurf(constant_factor=0.000369810177418199, **kwargs)[source]
Bases:
BerryDipole_FermiSurf
Nonlinear anomalous Hall conductivity (\(S^2/A\))
With Fermi surface integral. Eq(8) in RefOutput: \(D_{\beta\delta} = -e^3/\hbar^2 \tau \int [dk] v_\beta \Omega_\delta f'\)Instruction: \(j_\alpha = \epsilon_{\alpha\delta\gamma} D_{\beta\delta} E_\beta E\gamma\)
- class wannierberri.calculators.static.NLDrude_FermiSea(constant_factor=-0.0005618405644456891, **kwargs)[source]
Bases:
StaticCalculator
Drude conductivity (\(S^2/A\))
With Fermi sea integral. Eq(3) in RefOutput: \(\sigma_{\alpha\beta\gamma} = -e^3/\hbar^2 \tau^2 \int [dk] \partial_{\beta\gamma} v_\alpha f\)Instruction: \(j_\alpha = \sigma_{\alpha\beta\gamma} E_\beta E\gamma\)
- class wannierberri.calculators.static.NLDrude_FermiSurf(constant_factor=-0.0005618405644456891, **kwargs)[source]
Bases:
StaticCalculator
Drude conductivity (\(S^2/A\))
With Fermi surface integral.Output: \(\sigma_{\alpha\beta\gamma} = e^3/\hbar^2 \tau^2 \int [dk] \partial_\beta v_\alpha v_\gamma f'\)Instruction: \(j_\alpha = \sigma_{\alpha\beta\gamma} E_\beta E\gamma\)
- class wannierberri.calculators.static.NLDrude_Fermider2(constant_factor=-0.00028092028222284453, **kwargs)[source]
Bases:
StaticCalculator
Drude conductivity (\(S^2/A\))
With second derivative of distribution function. Eq(A28) in RefOutput: \(\sigma_{\alpha\beta\gamma} = -e^3/\hbar^2 \tau^2 \int [dk] v_\beta v_\alpha v_\gamma f'\)Instruction: \(j_\alpha = \sigma_{\alpha\beta\gamma} E_\beta E\gamma\)
- class wannierberri.calculators.static.Ohmic_FermiSea(constant_factor=3698101.77418199, **kwargs)[source]
Bases:
StaticCalculator
Ohmic conductivity (\(S/m\))
With Fermi sea integral. Eq(31) in RefOutput: \(\sigma_{\alpha\beta} = e^2/\hbar \tau \int [dk] \partial_\beta v_\alpha f`for \tau=1fs| Instruction: :math:`j_\alpha = \sigma_{\alpha\beta} E_\beta\)
- class wannierberri.calculators.static.Ohmic_FermiSurf(constant_factor=3698101.77418199, **kwargs)[source]
Bases:
StaticCalculator
Ohmic conductivity (\(S/m\))
With Fermi surface integral.Output: \(\sigma_{\alpha\beta} = -e^2/\hbar \tau \int [dk] v_\alpha v_\beta f'\)Instruction: \(j_\alpha = \sigma_{\alpha\beta} E_\beta\)
- class wannierberri.calculators.static.OmegaOmega(**kwargs)[source]
Bases:
StaticCalculator
- class wannierberri.calculators.static.SHC(constant_factor=1217067.4028939735, **kwargs)[source]
Bases:
StaticCalculator
Spin Hall conductivity with dc (\(S/m\))
With Fermi sea integral. Eq(1) in RefQiao type : with kwargs_formula={‘spin_current_type’:’qiao’}. Eq(49,50) in RefRyoo type : with kwargs_formula={‘spin_current_type’:’ryoo’}. Eq(17,26-29) in RefOutput: \(\sigma_{\alpha\beta} = -e^2/\hbar \int [dk] Im(j_{nm,\alpha} v_{mn,\beta})/(\epsilon_n - \epsilon_m)^2 f\)Instruction: \(j_\alpha = \sigma_{\alpha\beta} E_\beta\)
- class wannierberri.calculators.static.Spin(**kwargs)[source]
Bases:
StaticCalculator
Spin per unit cell (dimensionless)
Output: \(\int [dk] s f\)
Dynamic (dependent on Fermi level and frequency)
- class wannierberri.calculators.dynamic.DynamicCalculator(Efermi=None, omega=None, kBT=0, smr_fixed_width=0.1, smr_type='Lorentzian', kwargs_formula={}, **kwargs)[source]
- class wannierberri.calculators.dynamic.Formula_OptCond(data_K, external_terms=True)[source]
Bases:
object
- class wannierberri.calculators.dynamic.Formula_SHC(data_K, SHC_type='ryoo', shc_abc=None, external_terms=True)[source]
Bases:
object
- class wannierberri.calculators.dynamic.InjectionCurrent(**kwargs)[source]
Bases:
DynamicCalculator
- class wannierberri.calculators.dynamic.InjectionCurrentFormula(data_K, external_terms=True)[source]
Bases:
object
Eq. (10) of Lihm and Park, PRB 105, 045201 (2022) Use v_mn = i * r_mn * (e_m - e_n) / hbar to replace v with r.
- class wannierberri.calculators.dynamic.JDOS(**kwargs)[source]
Bases:
DynamicCalculator
- class wannierberri.calculators.dynamic.OpticalConductivity(**kwargs)[source]
Bases:
DynamicCalculator
- class wannierberri.calculators.dynamic.SHC(SHC_type='ryoo', shc_abc=None, **kwargs)[source]
Bases:
DynamicCalculator
- class wannierberri.calculators.dynamic.ShiftCurrent(sc_eta, **kwargs)[source]
Bases:
DynamicCalculator
Tabulating
- class wannierberri.calculators.TabulatorAll(tabulators, ibands=None, mode='grid', save_mode='frmsf')[source]
Bases:
Calculator
- class wannierberri.calculators.tabulate.Tabulator(Formula, kwargs_formula={}, **kwargs)[source]
Bases:
Calculator
- class wannierberri.calculators.tabulate.DerBerryCurvature(**kwargs)[source]
Bases:
Tabulator
Derivative of Berry curvature \(X_{ab}\partial_b\Omega_a\)