30integer io,ilo,i1,i2,i3
32integer l1,l2,l3,m1,m2,m3
38complex(8),
external :: gauntyry
77if (any(
task == [20,21,22,23,720,725]))
then
81 if (
allocated(
vkl))
deallocate(
vkl)
83 if (
allocated(
vkc))
deallocate(
vkc)
90else if (
task == 25)
then
93 if (
allocated(
ivk))
deallocate(
ivk)
95 if (
allocated(
vkl))
deallocate(
vkl)
97 if (
allocated(
vkc))
deallocate(
vkc)
107 vc(1)=dble(i1); vc(2)=dble(i2); vc(3)=dble(i3)
124 if (
task == 102) boxl(:,0)=0.d0
128 boxl(1,1)=boxl(1,1)+1.d0
129 boxl(2,2)=boxl(2,2)+1.d0
130 boxl(3,3)=boxl(3,3)+1.d0
132 if (any(
task == [100,101,102,103,104]))
then
142 if (
allocated(
ivk))
deallocate(
ivk)
144 if (
allocated(
vkl))
deallocate(
vkl)
146 if (
allocated(
vkc))
deallocate(
vkc)
148 if (
allocated(
wkpt))
deallocate(
wkpt)
166if (any(
task == [700,701,710,720,725,731,732,733,741,742,743,771,772,773]))
then
178if ((
xctype(1) < 0).or.
tddos.or.any(
task == [5,10,205,300,600,601,620]).or. &
187if (
allocated(
ngk))
deallocate(
ngk)
191if (
allocated(
vgkl))
deallocate(
vgkl)
193if (
allocated(
vgkc))
deallocate(
vgkc)
195if (
allocated(
gkc))
deallocate(
gkc)
206 vl(1:3)=vl(1:3)+0.5d0*
vqlss(1:3)
207 vc(1:3)=vc(1:3)+0.5d0*
vqcss(1:3)
209 vl(1:3)=vl(1:3)-0.5d0*
vqlss(1:3)
210 vc(1:3)=vc(1:3)-0.5d0*
vqcss(1:3)
215 igkig(:,jspn,ik),
vgkl(:,:,jspn,ik),
vgkc(:,:,jspn,ik),
gkc(:,jspn,ik))
217 call gensfacgp(
ngk(jspn,ik),
vgkc(:,:,jspn,ik),
ngkmax,
sfacgk(:,:,jspn,ik))
260if (
allocated(
apwe))
deallocate(
apwe)
284if (
allocated(
lofr))
deallocate(
lofr)
287if (any(
task == [5,180,185,240,241,300,320,330,331,460,461,462,463,478,600,601,&
288 620,680,700,701,720,725]).or.(
xctype(1) < 0).or.
ksgwrho)
then
303 if (
allocated(
efdu))
deallocate(
efdu)
319if (
allocated(
nmat))
deallocate(
nmat)
327 write(*,
'("Error(init1): number of first-variational states larger than &
329 write(*,
'("Increase rgkmax or decrease nempty")')
345if (
allocated(
oalo))
deallocate(
oalo)
349if (
allocated(
haa))
deallocate(
haa)
351if (
allocated(
hloa))
deallocate(
hloa)
367 gntyry(lm2,lm3,lm1)=gauntyry(l1,l2,l3,m1,m2,m3)
pure subroutine findngkmax(nkpt, vkc, nspnfv, vqcss, ngv, vgc, gkmax, ngkmax)
pure subroutine gengkvec(ngv, ivg, vgc, vkl, vkc, gkmax, ngkmax, ngk, igkig, vgkl, vgkc, gkc)
subroutine genppts(tfbz, nsym, sym, ngridp, npptnr, epslat, bvec, boxl, nppt, ipvip, ipvipnr, ivp, vpl, vpc, wppt, wpptnr)
pure subroutine gensfacgp(ngp, vgpc, ld, sfacgp)
real(8), dimension(:,:,:), allocatable fdufr
integer, parameter lmaxdm
real(8), dimension(:,:), allocatable efdu
real(8), dimension(:,:,:,:), allocatable vgkc
real(8), dimension(:), allocatable wkpt
real(8), dimension(maxapword, 0:maxlapw, maxspecies) apwe0
real(8), dimension(:,:,:), allocatable gkc
real(8), dimension(:,:,:), allocatable apwe
real(8), dimension(3, 3) bvec
real(4), dimension(:,:,:,:), allocatable apwfr_sp
integer, dimension(:,:), allocatable ngk
integer, dimension(:,:,:), allocatable igkig
real(8), dimension(3, 3) binv
integer, dimension(:,:), allocatable ivk
real(8), dimension(:,:), allocatable vvlp1d
integer, dimension(3) xctype
integer, dimension(0:maxlapw, maxspecies) apword
integer, dimension(maxatoms *maxspecies) idxis
real(8), dimension(maxlorbord, maxlorb, maxspecies) lorbe0
real(8), dimension(:,:,:,:,:,:), allocatable haa
real(8), dimension(3) vqcss
real(4), dimension(:,:,:), allocatable lofr_sp
integer, dimension(maxsymcrys) lspnsymc
real(8), dimension(:,:,:,:), allocatable vgkl
real(8), dimension(:,:,:,:), allocatable hlolo
integer, dimension(3) ngridk
integer, dimension(maxlorb, maxspecies) lorbord
real(8), dimension(:,:), allocatable vplp1d
real(8), dimension(3, 0:3) vclp3d
real(8), dimension(:), allocatable dvp1d
complex(8), dimension(:,:,:), allocatable gntyry
real(8), dimension(:,:,:), allocatable apwdfr
real(8), dimension(:,:,:,:,:), allocatable apwfr
real(8), dimension(:), allocatable dpp1d
integer, dimension(3) np3d
integer, dimension(maxspecies) lmoapw
logical, dimension(maxsymcrys) tv0symc
integer, dimension(3, 3, 48) symkpt
integer, dimension(:,:), allocatable ivg
real(8), dimension(:,:), allocatable vkl
integer, dimension(:,:,:), allocatable ivkiknr
integer, dimension(:,:), allocatable nmat
real(8), dimension(:,:), allocatable vgc
real(8), dimension(3) vqlss
integer, dimension(maxspecies) nlorb
integer, dimension(:,:,:), allocatable ivkik
real(8), dimension(3) vkloff
real(8), dimension(:,:), allocatable vkc
real(8), dimension(:,:,:), allocatable ololo
integer, dimension(3, 3, 48) symlat
real(8), dimension(:,:,:), allocatable oalo
real(8), dimension(:,:,:,:,:), allocatable hloa
complex(8), dimension(:,:,:,:), allocatable sfacgk
real(8), dimension(:,:), allocatable occsv
integer, dimension(maxspecies) nlmwf
real(8), dimension(3) vklem
real(8), dimension(:,:,:,:), allocatable lofr
integer, dimension(maxsymcrys) lsplsymc
real(8), dimension(:,:), allocatable evalsv
integer, parameter maxlorb
integer, dimension(maxlorb, maxspecies) lorbl
real(8), dimension(:,:,:), allocatable lorbe
subroutine writetest(id, descr, nv, iv, iva, tol, rv, rva, zv, zva)
real(8), dimension(3, 3) bvecu
real(8), dimension(3, 3) avecu
subroutine writevars(vname, n1, n2, n3, n4, n5, n6, nv, iv, iva, rv, rva, zv, zva, sv, sva)
subroutine plotpt1d(cvec, nv, np, vvl, vpl, dv, dp)
pure subroutine r3frac(eps, v)
pure subroutine r3mv(a, x, y)
subroutine reciplat(avec, bvec, omega, omegabz)