mod_vxcdrv Module

Driver for the exchange-correlation potential and energy calculation. It wraps all the different exchange-correlation potentials and make sure to call the appropriate subroutines depending on the type of exchange correlation potential indicated in the inputcard


Subroutines

public subroutine vxcdrv(exc, kte, kxc, lpot, nspin, nstart, nend, rho2ns, vons, r, drdi, a, irws, ircut, ipan, ntcell, kshape, gsh, ilm, imaxsh, ifunm, thetas, lmsp)

License
Creative Commons License
Category
xc-potential, KKRhost

D r i v e r

f o r

t h e

e x c h a n g e - c o r r e l a t i o n

p o t e n t i a l

a n d

e n e r g y

c a l c u l a t i o n

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout), dimension(0:lpotd, *) :: exc

xc-energy

integer, intent(in) :: kte

Calculation of the total energy On/Off (1/0)

integer, intent(in) :: kxc

Type of xc-potential 0=vBH 1=MJW 2=VWN 3=PW91

integer, intent(in) :: lpot

Maximum l component in potential expansion

integer, intent(in) :: nspin

Counter for spin directions

integer, intent(in) :: nstart
integer, intent(in) :: nend
real(kind=dp), intent(in), dimension(irmd, lmpotd, natypd, *) :: rho2ns

radial density

real(kind=dp), intent(inout), dimension(irmd, lmpotd, *) :: vons

output potential (nonspherical VONS)

real(kind=dp), intent(in), dimension(irmd, *) :: r

Set of real space vectors (in a.u.)

real(kind=dp), intent(in), dimension(irmd, *) :: drdi

Derivative dr/di

real(kind=dp), intent(in), dimension(natypd) :: a
integer, intent(in), dimension(*) :: irws

R point at WS radius

integer, intent(in), dimension(0:ipand, *) :: ircut

R points of panel borders

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

Number of panels in non-MT-region

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

Index for WS cell

integer, intent(in) :: kshape

Exact treatment of WS cell

real(kind=dp), intent(in), dimension(*) :: gsh
integer, intent(in), dimension(ngshd, 3) :: ilm
integer, intent(in), dimension(0:lmpotd) :: imaxsh
integer, intent(in), dimension(natypd, *) :: ifunm
real(kind=dp), intent(in), dimension(irid, nfund, *) :: thetas

shape function THETA=0 outer space THETA =1 inside WS cell in spherical harmonics expansion

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

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