The Elk Code
Loading...
Searching...
No Matches
hmldbse.f90
Go to the documentation of this file.
1
2
! Copyright (C) 2010 S. Sharma, J. K. Dewhurst 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
hmldbse
7
use
modmain
8
use
modmpi
9
use
modomp
10
implicit none
11
! local variables
12
integer
ik2,nthd
13
call
holdthd
(
nkptnr
/
np_mpi
,nthd)
14
!$OMP PARALLEL DO DEFAULT(SHARED) &
15
!$OMP SCHEDULE(DYNAMIC) &
16
!$OMP NUM_THREADS(nthd)
17
do
ik2=1,
nkptnr
18
! distribute among MPI processes
19
if
(mod(ik2-1,
np_mpi
) /=
lp_mpi
) cycle
20
!$OMP CRITICAL(hmldbse_)
21
write
(*,
'("Info(hmldbse): ",I6," of ",I6," k-points")'
) ik2,
nkptnr
22
!$OMP END CRITICAL(hmldbse_)
23
call
hmldbsek
(ik2)
24
end do
25
!$OMP END PARALLEL DO
26
call
freethd
(nthd)
27
end subroutine
28
hmldbse
subroutine hmldbse
Definition
hmldbse.f90:7
hmldbsek
subroutine hmldbsek(ik2)
Definition
hmldbsek.f90:7
modmain
Definition
modmain.f90:6
modmain::nkptnr
integer nkptnr
Definition
modmain.f90:463
modmpi
Definition
modmpi.f90:6
modmpi::lp_mpi
integer lp_mpi
Definition
modmpi.f90:15
modmpi::np_mpi
integer np_mpi
Definition
modmpi.f90:13
modomp
Definition
modomp.f90:6
modomp::holdthd
subroutine holdthd(nloop, nthd)
Definition
modomp.f90:78
modomp::freethd
subroutine freethd(nthd)
Definition
modomp.f90:106
hmldbse.f90
Generated by
1.9.8