mod_normcoeff_so Module

Calculates the norm of the wavefunctions with full potential and spin orbit coupling. This is needed for the normalization of the coefficients c_Lks.

Note

Added mode (can be 0/1) to determine if operator is written out using host/impurity wavefunctions. In case of mode==1 the index array t_imp%atomimp is used to determine which position in the host corresponds to each impurity poisition (i.e. layer index)

Warning

The gaunt coeffients are stored in index array (see subroutine gaunt)


Subroutines

public subroutine normcoeff_so(natom, ircut, lmmax0d, pns, thetas, ntcell, ifunm, ipan, lmsp, ksra, cleb, icleb, iend, drdi, irws, nspoh, mode)

License
Creative Commons License
Category
spin-orbit-coupling, KKRhost

C a l c u l a t e s

t h e

n o r m

o f

t h e

w a v e f u n c t i o n s

w i t h

f u l l

p o t e n t i a l

a n d

s p i n

o r b i t

c o u p l i n g .

Read more…

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: natom
integer, intent(in), dimension(0:ipand, natypd) :: ircut

R points of panel borders

integer, intent(in) :: lmmax0d

(LMAX+1)^2

complex(kind=dp), intent(in), dimension(nspind*lmmax0d, nspind*lmmax0d, irmd, 2, natom) :: pns
real(kind=dp), intent(in), dimension(irid, nfund, *) :: thetas
integer, intent(in), dimension(*) :: ntcell

Index for WS cell

integer, intent(in), dimension(natypd, lmpotd) :: ifunm
integer, intent(in), dimension(natypd) :: ipan

Number of panels in non-MT-region

integer, intent(in), dimension(natypd, *) :: lmsp

0,1 : non/-vanishing lm=(l,m) component of non-spherical potential

integer, intent(in) :: ksra
real(kind=dp), intent(in), dimension(*) :: cleb

GAUNT coefficients (GAUNT)

integer, intent(in), dimension(ncleb, 4) :: icleb

Pointer array

integer, intent(in) :: iend
real(kind=dp), intent(in), dimension(irmd, natypd) :: drdi

Derivative dr/di

integer, intent(in), dimension(*) :: irws

R point at WS radius

integer :: nspoh
integer, intent(in) :: mode