The Elk Code
 
Loading...
Searching...
No Matches
zvcldisp.f90
Go to the documentation of this file.
1
2! Copyright (C) 2020 J. K. Dewhurst and S. Sharma.
3! This file is distributed under the terms of the GNU General Public License.
4! See the file COPYING for license details.
5
6subroutine zvcldisp(zvclmt)
7use modmain
8use modtddft
9implicit none
10! arguments
11complex(8), intent(inout) :: zvclmt(npmtmax,natmtot)
12! local variables
13integer is,ia,ias,np,i
14real(8) t1
15do is=1,nspecies
16 np=npmt(is)
17 do ia=1,natoms(is)
18 ias=idxas(ia,is)
19 do i=1,3
20 t1=-atdvc(i,0,ia,is)
21! add the gradient of the Coulomb potential of the nucleus plus static density
22 zvclmt(1:np,ias)=zvclmt(1:np,ias)+t1*gvnsmt(1:np,i,ias)
23 end do
24 end do
25end do
26end subroutine
27
integer, dimension(maxspecies) natoms
Definition modmain.f90:36
integer, dimension(maxatoms, maxspecies) idxas
Definition modmain.f90:42
integer, dimension(maxspecies) npmt
Definition modmain.f90:213
integer nspecies
Definition modmain.f90:34
real(8), dimension(3, 0:1, maxatoms, maxspecies) atdvc
Definition modmain.f90:64
complex(8), dimension(:,:,:), allocatable gvnsmt
Definition modtddft.f90:88
subroutine zvcldisp(zvclmt)
Definition zvcldisp.f90:7