The Elk Code
potksu.f90
Go to the documentation of this file.
1 
2 ! Copyright (C) 2018 T. Mueller, 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 potksu
7 use modmain
8 use modulr
9 implicit none
10 ! local variables
11 real(8) ts0,ts1
12 call timesec(ts0)
13 ! compute the ultra long-range Coulomb potential
14 call potcoulu
15 ! compute the ultra long-range dipole-dipole magnetic field if required
16 if (tbdipu) call bdipoleu
17 ! compute the ultra long-range exchange-correlation potential and fields
18 call potxcu
19 ! reduce the external magnetic field if required
20 if (reducebf < 1.d0) then
21  bfcq(:,:)=bfcq(:,:)*reducebf
22  bfcmtq(:,:,:)=bfcmtq(:,:,:)*reducebf
23 end if
24 call timesec(ts1)
25 timepot=timepot+ts1-ts0
26 end subroutine
27 
subroutine bdipoleu
Definition: bdipoleu.f90:7
real(8) reducebf
Definition: modmain.f90:279
real(8) timepot
Definition: modmain.f90:1225
subroutine potcoulu
Definition: potcoulu.f90:7
subroutine potksu
Definition: potksu.f90:7
complex(8), dimension(:,:,:), allocatable bfcmtq
Definition: modulr.f90:73
subroutine timesec(ts)
Definition: timesec.f90:10
subroutine potxcu
Definition: potxcu.f90:7
complex(8), dimension(:,:), allocatable bfcq
Definition: modulr.f90:71
Definition: modulr.f90:6
logical tbdipu
Definition: modulr.f90:79