83 integer nr,nri,i,j,nthd
84 real(8) fav(3),ca,t1,t2
87 real(8) forceibs(3,natmtot),grfmt(npmtmax,3)
89 real(8),
allocatable :: rfmt(:,:)
91 real(8),
external :: rfmtinp,rfmtint
102 call gradrfmt(nr,nri,
rlmt(:,-1,is),
wcrmt(:,:,is),
vclmt(:,ias),npmtmax,grfmt)
135 call mpi_allreduce(mpi_in_place,forceibs,3*natmtot,mpi_double_precision, &
147 call gradrfmt(nr,nri,
rlmt(:,-1,is),
wcrmt(:,:,is),
rhomt(:,ias),npmtmax,grfmt)
149 t1=rfmtinp(nr,nri,
wr2mt(:,is),
vsmt(:,ias),grfmt(:,i))
152 t1=t1-t2*rfmtint(nr,nri,
wr2mt(:,is),grfmt(:,i))
154 forceibs(i,ias)=forceibs(i,ias)+t1
159 allocate(rfmt(npmtmax,natmtot))
170 call gradrfmt(nr,nri,
rlmt(:,-1,is),
wcrmt(:,:,is),
magmt(:,ias,idm), &
173 t1=rfmtinp(nr,nri,
wr2mt(:,is),rfmt(:,ias),grfmt(:,i))
174 forceibs(i,ias)=forceibs(i,ias)+t1
189 call gradrfmt(nr,nri,
rlmt(:,-1,is),
wcrmt(:,:,is),
jrmt(:,ias,j),npmtmax, &
192 t2=rfmtint(nr,nri,
wr2mt(:,is),grfmt(:,i))
193 forceibs(i,ias)=forceibs(i,ias)+t1*t2
212 fav(1:3)=fav(1:3)/dble(natmtot)
subroutine writetest(id, descr, nv, iv, iva, tol, rv, rva, zv, zva)
real(8), dimension(:,:,:), allocatable rlmt
real(8), dimension(:,:), allocatable vclmt
subroutine forcek(ik, forceibs)
real(8), dimension(:,:), pointer, contiguous rhomt
real(8), dimension(:,:), allocatable forcetot
subroutine rfmtctof(rfmt)
real(8), dimension(:,:,:), pointer, contiguous magmt
real(8), dimension(maxspecies) spmass
real(8), dimension(:,:), allocatable forcehf
subroutine gradrfmt(nr, nri, ri, wcr, rfmt, ld, grfmt)
integer, dimension(maxatoms *maxspecies) idxis
real(8), dimension(:,:), allocatable afieldt
subroutine rfsht(nr, nri, rfmt1, rfmt2)
real(8), dimension(:,:), allocatable chgsmt
subroutine holdthd(nloop, nthd)
real(8), dimension(maxspecies) spzn
real(8), dimension(:,:,:), allocatable jrmt
integer, dimension(maxspecies) nrcmt
integer, dimension(maxspecies) nrcmti
real(8), dimension(:,:,:), allocatable wcrmt
real(8), dimension(:,:), pointer, contiguous vsmt
integer, dimension(maxspecies) nrmti
real(8), dimension(3) efieldt
real(8), dimension(:,:,:), pointer, contiguous bsmt
real(8), dimension(:,:), allocatable wr2mt
integer, dimension(maxspecies) nrmt