The Elk Code
 
Loading...
Searching...
No Matches
gencvclmt.f90
Go to the documentation of this file.
1
2! Copyright (C) 2023 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 gencvclmt(nrmt_,nrmti_,ld1,rl,wpr,ld2,crhomt,cvclmt)
7use modmain
8use modomp
9implicit none
10! arguments
11integer, intent(in) :: nrmt_(nspecies),nrmti_(nspecies)
12integer, intent(in) :: ld1
13real(8), intent(in) :: rl(ld1,-lmaxo-1:lmaxo+2,nspecies)
14real(8), intent(in) :: wpr(4,ld1,nspecies)
15integer, intent(in) :: ld2
16complex(4), intent(in) :: crhomt(ld2,natmtot)
17complex(4), intent(out) :: cvclmt(ld2,natmtot)
18! local variables
19integer is,ias,nthd
20call holdthd(natmtot,nthd)
21!$OMP PARALLEL DO DEFAULT(SHARED) &
22!$OMP PRIVATE(is) &
23!$OMP SCHEDULE(DYNAMIC) &
24!$OMP NUM_THREADS(nthd)
25do ias=1,natmtot
26 is=idxis(ias)
27 call cpotclmt(nrmt_(is),nrmti_(is),ld1,rl(:,:,is),wpr(:,:,is),crhomt(:,ias), &
28 cvclmt(:,ias))
29end do
30!$OMP END PARALLEL DO
31call freethd(nthd)
32end subroutine
33
pure subroutine cpotclmt(nr, nri, ld, rl, wpr, crhomt, cvclmt)
Definition cpotclmt.f90:7
subroutine gencvclmt(nrmt_, nrmti_, ld1, rl, wpr, ld2, crhomt, cvclmt)
Definition gencvclmt.f90:7
integer, dimension(maxatoms *maxspecies) idxis
Definition modmain.f90:44
subroutine holdthd(nloop, nthd)
Definition modomp.f90:78
subroutine freethd(nthd)
Definition modomp.f90:106