allocate_ldau_potential Subroutine

public subroutine allocate_ldau_potential(flag, irm, natyp, mmaxd, nspind, itldau, wldau, uldau, phildau)

Subroutine handling the allocation/deallocation of arrays that describe the potentials for the LDA+U approach

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: flag
integer, intent(in) :: irm
integer, intent(in) :: natyp

number of kinds of atoms in unit cell

integer, intent(in) :: mmaxd
integer, intent(in) :: nspind

Counter for spin directions (KREL+(1-KREL)*(KSP+1))

integer, intent(inout), dimension (:), allocatable :: itldau

integer pointer connecting the NTLDAU atoms to their corresponding index in the unit cell

real(kind=dp), intent(inout), dimension (:, :, :, :), allocatable :: wldau

potential matrix

real(kind=dp), intent(inout), dimension (:, :, :, :, :), allocatable :: uldau

calculated Coulomb matrix elements (EREFLDAU)

complex(kind=dp), intent(inout), dimension (:, :), allocatable :: phildau