9 subroutine findsym(apl1,apl2,nsym,lspl,lspn,iea)
43 real(8),
intent(in) :: apl1(3,maxatoms,maxspecies)
44 real(8),
intent(in) :: apl2(3,maxatoms,maxspecies)
45 integer,
intent(out) :: nsym,lspl(48),lspn(48),iea(natmmax,nspecies,48)
47 integer isym,jsym,jsym0,jsym1
48 integer is,ia,ias,ja,jas,its,n
49 real(8) sl(3,3),scp(3,3)
50 real(8) c(3,3),d(3,3),v(3),t1
52 integer jea(natmmax,nspecies)
53 real(8) apl3(3,natmmax)
54 complex(8) dmat(lmmaxdm,nspinor,lmmaxdm,nspinor)
56 real(8),
external :: dznrm2
61 sl(1:3,1:3)=dble(
symlat(1:3,1:3,isym))
66 apl3(1:3,ia)=apl1(1:3,ia,is)
71 v(1:3)=sl(1:3,1)*apl2(1,ja,is) &
72 +sl(1:3,2)*apl2(2,ja,is) &
73 +sl(1:3,3)*apl2(3,ja,is)
78 t1=abs(apl3(1,ia)-v(1))+abs(apl3(2,ia)-v(2))+abs(apl3(3,ia)-v(3))
119 v(1:3)=scp(1:3,1)*
bfcmt0(1,ja,is) &
120 +scp(1:3,2)*
bfcmt0(2,ja,is) &
121 +scp(1:3,3)*
bfcmt0(3,ja,is)
122 t1=abs(
bfcmt0(1,ia,is)-v(1)) &
123 +abs(
bfcmt0(2,ia,is)-v(2)) &
124 +abs(
bfcmt0(3,ia,is)-v(3))
140 n=(lmmaxdm*nspinor)**2
150 lmmaxdm,
dmftm(:,:,:,:,jas),dmat)
152 dmat(:,:,:,:)=dmat(:,:,:,:)-
dmftm(:,:,:,:,ias)
153 t1=dznrm2(n,dmat,1)/dble(n)
162 t1=sum(abs(
afspc(1:3,1:3)-d(1:3,1:3)))
170 t1=sum(abs(
afspt(1:3,1:3,its)-d(1:3,1:3)))
180 iea(ia,is,nsym)=jea(ia,is)
pure subroutine r3mmt(a, b, c)
real(8), dimension(3, maxatoms, maxspecies) bfcmt0
real(8), dimension(3, 3) afspc
integer, dimension(maxatoms, maxspecies) idxas
complex(8), dimension(:,:,:,:,:), allocatable dmftm
integer, dimension(3, 3, 48) symlat
real(8), dimension(3, 3, 48) symlatc
pure subroutine r3frac(eps, v)
integer, dimension(48) symlatd
integer, dimension(maxspecies) natoms
subroutine rotdmat(rspl, rspn, lmax, nspinor, ld, dmat1, dmat2)
subroutine findsym(apl1, apl2, nsym, lspl, lspn, iea)
real(8), dimension(3) bfieldc0
integer, parameter lmaxdm
pure subroutine r3mm(a, b, c)
real(8), dimension(:,:,:), allocatable afspt