mod_vmadelblk Module

It uses the structure dependent matrices AVMAD and BVMAD which are calculated once in the subroutine MADELUNG3D() and saved in the DA-file abvmad.unformatted (May 2004) The charge-moments are calculated in the subroutine vintras, therefore vintras has to be called first. The madelung-potential is expanded into spherical harmonics. The lm-term of the potential of the atom is given by where is the number of atoms

Note

  • V. Popescu Feb. 2002: Adopted for the case of more atoms on the same site, summation is done over the occupants of that site, the charge is weighted with the appropriate concentration of the occupant

  • Impurity-program adopted feb. 2004 (according to N. Papanikalou)


Subroutines

public subroutine vmadelblk(cmom, cminst, lmax, nspin, naez, v, zat, r, irws, ircut, ipan, kshape, noq, kaoez, conc, catom, icc, hostimp, vinters, nemb, lmpot, natyp)

Author
B. Drittler
License
Creative Commons License
Category
electrostatics, potential, KKRhost

C a l c u l a t e

t h e

m a d e l u n g

p o t e n t i a l s

a n d

a d d

t h e s e

t o

t h e

p o t e n t i a l

\ ( V \ )

( i n

h e

s p i n - p o l a r i z e d

c a s e

f o r

e a c h

s p i n - d i r e c t i o n

t h i s

i s

t h e

s a m e )

Read more…

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in), dimension (lmpot, natyp) :: cmom

LM moment of total charge

real(kind=dp), intent(in), dimension (lmpot, natyp) :: cminst

charge moment of interstitial

integer, intent(in) :: lmax

Maximum l component in wave function expansion

integer, intent(in) :: nspin

Counter for spin directions

integer, intent(in) :: naez

Number of atoms in unit cell

real(kind=dp), intent(inout), dimension (irmd, lmpot, npotd) :: v
real(kind=dp), intent(in), dimension (natyp) :: zat

Nuclear charge

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

Radial mesh ( in units a Bohr)

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

Position of atoms in the unit cell in units of bravais vectors

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

R points of panel borders

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

Number of panels in non-MT-region

integer, intent(in) :: kshape

Exact treatment of WS cell

integer, intent(in), dimension (naez) :: noq

Number of diff. atom types located

integer, intent(in), dimension (natyp, naez+nemb) :: kaoez

Kind of atom at site in elem. cell

real(kind=dp), intent(in), dimension (natyp) :: conc

Concentration of a given atom

real(kind=dp), intent(in), dimension (natyp) :: catom
integer, intent(in) :: icc

Enables the calculation of off-diagonal elements of the GF.(0=SCF/DOS; 1=cluster; -1=custom)

integer, intent(in), dimension (0:natyp) :: hostimp
real(kind=dp), intent(out), dimension (lmpot, naez) :: vinters
integer, intent(in) :: nemb

Number of 'embedding' positions

integer, intent(in) :: lmpot

(LPOT+1)**2

integer, intent(in) :: natyp

Number of kinds of atoms in unit cell