(git:374b731)
Loading...
Searching...
No Matches
soc_pseudopotential_methods.F File Reference

Go to the source code of this file.

Modules

module  soc_pseudopotential_methods
 

Functions/Subroutines

subroutine, public soc_pseudopotential_methods::v_soc_xyz_from_pseudopotential (qs_env, mat_v_soc_xyz)
 Compute V^SOC_µν^(α) = ħ/2 < ϕ_µ | sum_ℓ ΔV_ℓ^SO(r,r') L^(α) | ϕ_ν >, α = x, y, z, see Hartwigsen, Goedecker, Hutter, Eq.(18), (19) (doi.org/10.1103/PhysRevB.58.3641) Caution: V^SOC_µν^(α) is purely imaginary and Hermitian; V^SOC_µν^(α) is stored as real dbcsr matrix mat_V_SOC_xyz without symmetry; V^SOC_µν^(α) is stored without the imaginary unit, i.e. mat_V_SOC_xyz is real and antisymmetric.
 
subroutine, public soc_pseudopotential_methods::h_ks_spinor (cfm_ks_spinor_ao, fm_ks, n_spin, mat_v_soc_xyz, cfm_s_double, fm_s, cfm_soc_spinor_ao)
 Spinor KS-matrix H_µν,σσ' = h_µν,σ*δ_σσ' + sum_α V^SOC_µν^(α)*Pauli-matrix^(α)_σσ', see Hartwigsen, Goedecker, Hutter, Eq.(18) (doi.org/10.1103/PhysRevB.58.3641)
 
subroutine, public soc_pseudopotential_methods::remove_soc_outside_energy_window_ao (mat_v_soc_xyz, e_win, fm_mo_coeff, homo, eigenval, fm_s)
 Remove SOC outside of energy window (otherwise, numerical problems arise because energetically low semicore states and energetically very high unbound states couple to the states around the Fermi level). This routine is for mat_V_SOC_xyz being in the atomic-orbital (ao) basis.
 
subroutine, public soc_pseudopotential_methods::remove_soc_outside_energy_window_mo (cfm_ks_spinor, e_win, eigenval, e_homo, e_lumo)
 ...