w90_get_oper Module

module~~w90_get_oper~~UsesGraph module~w90_get_oper w90_get_oper module~w90_constants w90_constants module~w90_constants->module~w90_get_oper
Help

Finds the Wannier matrix elements of various operators, starting from k-space matrices generated by an interface (e.g., pw2wannier90) to an ab initio package (e.g., quantum-espresso)

Used By

module~~w90_get_oper~~UsedByGraph module~w90_get_oper w90_get_oper proc~spin_get_moment spin_get_moment module~w90_get_oper->proc~spin_get_moment proc~calctdfanddos calcTDFandDOS module~w90_get_oper->proc~calctdfanddos proc~berry_main berry_main module~w90_get_oper->proc~berry_main module~w90_geninterp w90_geninterp module~w90_get_oper->module~w90_geninterp proc~k_path k_path module~w90_get_oper->proc~k_path proc~dos_main dos_main module~w90_get_oper->proc~dos_main proc~k_slice k_slice module~w90_get_oper->proc~k_slice proc~berry_get_kubo_k berry_get_kubo_k module~w90_get_oper->proc~berry_get_kubo_k proc~wham_get_eig_deleig wham_get_eig_deleig module~w90_get_oper->proc~wham_get_eig_deleig proc~spin_get_moment_k spin_get_moment_k module~w90_get_oper->proc~spin_get_moment_k proc~wham_get_eig_uu_hh_jjlist wham_get_eig_UU_HH_JJlist module~w90_get_oper->proc~wham_get_eig_uu_hh_jjlist proc~spin_get_nk spin_get_nk module~w90_get_oper->proc~spin_get_nk proc~berry_get_imf_klist berry_get_imf_klist module~w90_get_oper->proc~berry_get_imf_klist proc~berry_get_imfgh_klist berry_get_imfgh_klist module~w90_get_oper->proc~berry_get_imfgh_klist program~postw90 postw90 module~w90_geninterp->program~postw90
Help


Variables

TypeVisibility AttributesNameInitial
complex(kind=dp), public, allocatable, save:: HH_R(:,:,:)

$$\langle 0n | H | Rm \rangle$$

complex(kind=dp), public, allocatable, save:: AA_R(:,:,:,:)

$$\langle 0n | \hat{r} | Rm \rangle$$

complex(kind=dp), public, allocatable, save:: BB_R(:,:,:,:)

$$\langle 0n | H(\hat{r}-R) | Rm \rangle$$

complex(kind=dp), public, allocatable, save:: CC_R(:,:,:,:,:)

$$\langle 0n | \hat{r}_{\alpha}.H.(\hat{r}- R)_{\beta} | Rm \rangle$$

complex(kind=dp), public, allocatable, save:: FF_R(:,:,:,:,:)

$$\langle 0n | \hat{r}_{\alpha}.(\hat{r}-R)_{\beta} | Rm \rangle$$

complex(kind=dp), public, allocatable, save:: SS_R(:,:,:,:)

$$\langle 0n | \sigma_{x,y,z} | Rm \rangle$$


Subroutines

public subroutine get_HH_R()

computes <0n|H|Rm>, in eV (pwscf uses Ry, but pw2wannier90 converts to eV)

Arguments

None

public subroutine get_AA_R()

AA_a(R) = <0|r_a|R> is the Fourier transform of the Berrry connection AA_a(k) = i (a=x,y,z)

Arguments

None

public subroutine get_BB_R()

BB_a(R)=<0n|H(r-R)|Rm> is the Fourier transform of BB_a(k) = i (a=x,y,z)

Arguments

None

public subroutine get_CC_R()

CC_ab(R) = <0|r_a.H.(r-R)_b|R> is the Fourier transform of CC_ab(k) = (a,b=x,y,z)

Arguments

None

public subroutine get_FF_R()

FF_ab(R) = <0|r_a.(r-R)_b|R> is the Fourier transform of FF_ab(k) = (a=alpha,b=beta)

Arguments

None

public subroutine get_SS_R()

Wannier representation of the Pauli matrices: <0n|sigma_a|Rm> (a=x,y,z)

Arguments

None

private subroutine fourier_q_to_R(op_q, op_R)

Fourier transforms Wannier-gauge representation of a given operator O from q-space to R-space:

Arguments

Type IntentOptional AttributesName
complex(kind=dp), intent(in), dimension(:,:,:):: op_q

Operator in q-space

complex(kind=dp), intent(out), dimension(:,:,:):: op_R

Operator in R-space

private subroutine get_win_min(ik, win_min)

Find the lower bound (band index) of the outer energy window at the specified k-point

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ik

Index of the required k-point

integer, intent(out) :: win_min

Index of the lower band of the outer energy window