mod_wrldaupot Module

Writes out LDA+U arrays into formatted file ldaupot

Note

Jonathan Chico: The routine is using both natypd and natyp which are actually the same variable, this is a holdover of the inc.p and one should remove one of them.


Uses

    • mod_datatypes

Subroutines

public subroutine wrldaupot(itrunldau, lopt, ueff, jeff, erefldau, natyp, wldau, uldau, phildau, irmd, natypd, nspind, mmaxd, irws)

License
Creative Commons License
Category
input-output, lda+u, potential, KKRhost

W r i t e s

o u t

L D A + U

a r r a y s

i n t o

f o r m a t t e d

f i l e

l d a u p o t

Read more…

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: itrunldau

iteration index

integer, intent(in), dimension(natypd) :: lopt

angular momentum QNUM for the atoms on which LDA+U should be applied (-1 to switch it OFF)

real(kind=dp), intent(in), dimension(natypd) :: ueff

input U parameter for each atom

real(kind=dp), intent(in), dimension(natypd) :: jeff

input J parameter for each atom

real(kind=dp), intent(in), dimension(natypd) :: erefldau

the energies of the projector's wave functions (REAL)

integer, intent(in) :: natyp

Number of kinds of atoms in unit cell

real(kind=dp), intent(in), dimension(mmaxd, mmaxd, nspind, natypd) :: wldau

potential matrix

real(kind=dp), intent(in), dimension(mmaxd, mmaxd, mmaxd, mmaxd, natypd) :: uldau

calculated Coulomb matrix elements (EREFLDAU)

complex(kind=dp), intent(in), dimension(irmd, natypd) :: phildau
integer, intent(in) :: irmd

Number of radial mesh points in (0,...,RWS)

integer, intent(in) :: natypd

Number of kinds of atoms in unit cell

integer, intent(in) :: nspind

KREL+(1-KREL)*(NSPIN+1)

integer, intent(in) :: mmaxd
integer, intent(in), dimension(natypd) :: irws

R point at WS radius