The Elk Code
rfint0.f90
Go to the documentation of this file.
1 
2 ! Copyright (C) 2018 J. K. Dewhurst, S. Sharma and E. K. U. Gross.
3 ! This file is distributed under the terms of the GNU General Public License.
4 ! See the file COPYING for license details.
5 
6 subroutine rfint0(rf0,rfmt,rfir)
7 use modmain
8 implicit none
9 ! arguments
10 real(8), intent(in) :: rf0
11 real(8), intent(inout) :: rfmt(npmtmax,natmtot),rfir(ngtot)
12 ! local variables
13 integer is,ias,nr,nri
14 integer iro,i0,i1
15 real(8) t1
16 ! external functions
17 real(8), external :: rfint
18 t1=rfint(rfmt,rfir)
19 t1=rf0-t1/omega
20 rfir(1:ngtot)=rfir(1:ngtot)+t1
21 t1=t1*y00i
22 do ias=1,natmtot
23  is=idxis(ias)
24  nr=nrmt(is)
25  nri=nrmti(is)
26  iro=nri+1
27  i1=lmmaxi*(nri-1)+1
28  rfmt(1:i1:lmmaxi,ias)=rfmt(1:i1:lmmaxi,ias)+t1
29  i0=i1+lmmaxi
30  i1=lmmaxo*(nr-iro)+i0
31  rfmt(i0:i1:lmmaxo,ias)=rfmt(i0:i1:lmmaxo,ias)+t1
32 end do
33 end subroutine
34 
subroutine rfint0(rf0, rfmt, rfir)
Definition: rfint0.f90:7
integer lmmaxo
Definition: modmain.f90:203
real(8) omega
Definition: modmain.f90:20
integer, dimension(maxatoms *maxspecies) idxis
Definition: modmain.f90:44
integer lmmaxi
Definition: modmain.f90:207
real(8), parameter y00i
Definition: modmain.f90:1237
integer, dimension(maxspecies) nrmti
Definition: modmain.f90:211
integer, dimension(maxspecies) nrmt
Definition: modmain.f90:150