34 integer idu,ist,nr,l,n,i
56 write(*,
'("Error(init0): lmaxo > lmaxapw : ",2I8)')
lmaxo,
lmaxapw 109 if (any(
task == [5,51,52,53,61,62,63,700,701]))
then 111 write(*,
'("Error(init0): spin-spirals do not work with task ",I4)')
task 117 write(*,
'("Error(init0): spin-spirals do not work with the OEP method")')
123 write(*,
'("Error(init0): spin-spirals do not work with iterative & 158 if (any(
task == [5,10,170,300,460,461,462,463,600,601,620,700,701,720,725]).or.&
166 write(*,
'("Error(init0): requested spin-polarised run with & 167 &spin-unpolarised")')
168 write(*,
'(" exchange-correlation functional")')
206 write(*,
'("Error(init0): meta-GGA is not valid for non-collinear magnetism")')
212 write(*,
'("Error(init0): non-collinear magnetism required for inclusion of & 213 &the dipole field")')
227 write(*,
'("Info(init0): mixtype changed to 1 for FSM calculation")')
247 write(*,
'("Error(init0): tensor moments require spin-orbit coupling & 249 write(*,
'(" set spinorb=.true.")')
259 if (all(
task /= [0,1,2,3,28,200,201,208,350,351,380,420,421,440]))
then 342 if (any(
task == [460,461,462,463,480,481,485]))
then 434 write(*,
'("Error(init0): zero total charge")')
475 write(*,
'("Error(init0): isgkmax > nspecies : ",2I8)')
isgkmax,
nspecies 542 if (
allocated(
vcln))
deallocate(
vcln)
580 if (
allocated(
rhmg))
deallocate(
rhmg)
598 if (
allocated(
jrmt))
deallocate(
jrmt)
599 if (
allocated(
jrir))
deallocate(
jrir)
609 if (
allocated(
exmt))
deallocate(
exmt)
611 if (
allocated(
exir))
deallocate(
exir)
614 if (
allocated(
ecmt))
deallocate(
ecmt)
616 if (
allocated(
ecir))
deallocate(
ecir)
626 if (
allocated(
bdmt))
deallocate(
bdmt)
627 if (
allocated(
bdir))
deallocate(
bdir)
638 if (
allocated(
vsbs))
deallocate(
vsbs)
652 if (
allocated(
bsir))
deallocate(
bsir)
656 if (
allocated(
vsir))
deallocate(
vsir)
659 if (
allocated(
vsig))
deallocate(
vsig)
667 if (any(
xcgrad == [3,4,5,6]))
then 691 if (
allocated(
zqss))
deallocate(
zqss)
696 t1=-0.5d0*dot_product(
vqcss(1:3),
atposc(1:3,ia,is))
697 zqss(ias)=cmplx(cos(t1),sin(t1),8)
732 if (any(
task == [460,461,462,463,478]))
then 748 if (any(
task == [5,300,600,601,610,620,630,640]))
then 750 write(*,
'("Error(init0): DFT+U does not work with task ",I8)')
task 762 write(*,
'("Error(init0): invalid species number : ",I8)') is
783 vmftm(:,:,:,:,:)=0.d0
integer, dimension(:,:), allocatable itmfix
subroutine getsdata(stype, sdescr)
complex(8), dimension(:,:), allocatable sfacg
real(8), dimension(3, maxatoms, maxspecies) bfcmt0
real(8), dimension(:), allocatable wxcir
subroutine potnucl(ptnucl, nr, r, zn, vn)
real(8), dimension(maxstsp, maxspecies) occsp
subroutine writetest(id, descr, nv, iv, iva, tol, rv, rva, zv, zva)
real(8), dimension(3, 3) afspc
integer, dimension(maxstsp, maxspecies) ksp
real(8), dimension(:,:), allocatable mommt
integer, dimension(maxspecies) npcmt
real(8), dimension(3) efieldl
integer, dimension(3) ktype
integer, dimension(3) ngridg
pure subroutine gensfacgp(ngp, vgpc, ld, sfacgp)
real(8), dimension(:), allocatable, target rhmg
subroutine reciplat(avec, bvec, omega, omegabz)
real(8), dimension(:), pointer, contiguous vmixer
complex(4), dimension(:,:,:,:,:), allocatable vmatmti
real(8), dimension(:,:), allocatable vxcmt
integer, dimension(3) xctype
real(8), dimension(:,:), allocatable occcr
real(8), dimension(:), allocatable ecir
real(8), dimension(:), pointer, contiguous rhoir
integer, parameter lmmaxdm
integer, dimension(maxatoms, maxspecies) idxas
complex(8), dimension(:,:,:,:,:), allocatable dmftm
real(8), dimension(:,:), allocatable vcln
integer, dimension(maxspecies) npmt
real(8), dimension(:,:), allocatable vclmt
real(8), dimension(3, 3) ainv
real(8), dimension(:), allocatable dpp1d
integer, dimension(:), allocatable ipcmt
real(8), dimension(:,:,:), allocatable bdmt
real(8), parameter kboltz
real(8), dimension(:,:), allocatable evalcr
real(8), dimension(:,:), pointer, contiguous rhomt
real(8), dimension(:,:), allocatable bdmta
subroutine getmixdata(mtype, mixdescr)
real(8), dimension(:,:,:), allocatable rhocr
real(8), dimension(:), allocatable chgmt
real(8), dimension(:,:), allocatable ecmt
real(8), dimension(:,:), allocatable forcetot
real(8), dimension(3) vqlss
real(8), dimension(3) vecql
real(8), dimension(3) bfsmc
complex(8), dimension(:,:,:,:,:), allocatable dmatmt
real(8), dimension(:), allocatable vsir
real(8), dimension(:,:), allocatable exmt
real(8), dimension(:), allocatable vxcir
real(8), dimension(:,:), allocatable vgc
complex(4), dimension(:,:,:,:,:), allocatable vmatmto
integer, dimension(2, maxdftu) isldu
real(8), dimension(3, 3) avecref
logical, dimension(maxstsp, maxspecies) spcore
real(8), dimension(:,:), allocatable wxcmt
real(8), dimension(:,:,:), allocatable taucr
complex(8), dimension(:), allocatable zqss
real(8), dimension(3, maxatoms, maxspecies) atposl
real(8), dimension(:), allocatable dvp1d
integer, dimension(:), allocatable igfft
real(8), dimension(:,:,:), allocatable bxcmt
real(8), dimension(:,:), allocatable bsir
subroutine getxcdata(xctype, xcdescr, xcspin, xcgrad, hybrid, hybridc)
real(8), dimension(:,:,:), pointer, contiguous magmt
real(8), dimension(maxspecies) chgcr
real(8), dimension(maxstsp, maxspecies) evalsp
real(8), dimension(:,:), allocatable engyadu
real(8), dimension(:), allocatable chgcrlk
real(8), dimension(3, 3) avec
real(8), dimension(3, 0:1) afindt
real(8), dimension(:,:), allocatable bdir
real(8), dimension(:,:), allocatable ffacg
real(8), dimension(:,:), allocatable forcehf
real(8), dimension(:), allocatable vclir
complex(8), dimension(:,:,:,:,:), allocatable vmatmt
real(8), dimension(3) afieldc
logical, dimension(:,:), allocatable tvmmt
pure subroutine r3frac(eps, v)
real(8), dimension(maxspecies) rmt
real(8), dimension(:,:), allocatable bxcir
real(8), dimension(3, 3) avec0
real(8), dimension(3, 3) bvec
complex(8), dimension(:,:,:,:,:), allocatable vmftm
real(8), dimension(maxspecies) spze
real(8), dimension(:), allocatable, target vsbs
integer, dimension(:,:), allocatable ivg
real(8), dimension(3, maxatoms, maxspecies) bfcmt
real(8), dimension(:), pointer, contiguous vsirc
real(8), dimension(3) vqcss
integer, dimension(maxspecies) nrsp
integer, dimension(maxspecies) natoms
integer, dimension(2, 3) intgv
integer, dimension(maxspecies) npcmti
integer, dimension(maxatoms *maxspecies) idxis
real(8), dimension(3, 3) binv
real(8), dimension(maxdftu) udufix
real(8), dimension(:,:,:), allocatable jlgrmt
character(64), dimension(maxspecies) spname
real(8), dimension(:,:), allocatable bfsmcmt
pure subroutine genffacgp(ngp, gpc, ld, ffacgp)
real(8), dimension(:), allocatable gc
real(8), dimension(:,:), allocatable tauir
real(8), dimension(3) bfieldc0
real(8), dimension(maxdftu) lamdu0
integer, dimension(maxatoms *maxspecies) idxia
real(8), dimension(:,:), allocatable efcmt
subroutine genjlgprmt(lmax, ngp, gpc, ld, jlgprmt)
integer, dimension(maxspecies) nstsp
real(8), dimension(:,:,:,:), allocatable rwfcr
real(8), dimension(maxspecies) spzn
real(8), dimension(:,:), pointer, contiguous magir
real(8), dimension(:,:,:), allocatable jrmt
real(8), parameter fourpi
real(8), dimension(:,:), allocatable rsp
integer, dimension(maxspecies) nrcmt
integer, dimension(maxspecies) nrcmti
integer, dimension(maxspecies) npmti
integer, parameter lmaxdm
pure subroutine r3mv(a, x, y)
complex(8), dimension(:), allocatable vsig
real(8), dimension(:,:), pointer, contiguous bsirc
real(8), dimension(3, maxatoms, maxspecies) atposc
real(8), dimension(:,:), pointer, contiguous vsmt
integer, dimension(maxspecies) nrmti
real(8), dimension(3) efieldc
real(8), dimension(3) afieldl
real(8), dimension(:,:,:), allocatable taumt
real(8), dimension(:,:), allocatable jrir
real(8), dimension(:,:), allocatable vplp1d
integer, dimension(2) jspnfv
character(64), dimension(maxspecies) spsymb
real(8), dimension(:), allocatable exir
real(8), dimension(3) vecqc
subroutine writevars(vname, n1, n2, n3, n4, n5, n6, nv, iv, iva, rv, rva, zv, zva, sv, sva)
real(8), dimension(3) bfieldc
real(8), dimension(:,:,:), pointer, contiguous bsmt
real(8), dimension(:,:), allocatable socfr
integer, dimension(maxspecies) nrmt