Commit e1a859ab authored by Daniel Wortmann's avatar Daniel Wortmann

Merge branch 'develop' of fleur-git:fleur into develop

parents 176e4185 c9772d83
......@@ -329,6 +329,7 @@ CONTAINS
! calculation of core spectra (EELS) initializations -start-
CALL corespec_init(atoms)
IF(l_cs.AND.(mpi%isize.NE.1)) CALL juDFT_error('EELS + MPI not implemented', calledby = 'cdnval')
IF(l_cs.AND.jspin.EQ.1) CALL corespec_gaunt()
! calculation of core spectra (EELS) initializations -end-
......
......@@ -578,24 +578,24 @@ MODULE m_corespec_eval
do id1 = 1,2 ;
do id2 = 1,2
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(ip1,ip2) = prd(ip1,ip2)+ &
csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(0,0) = prd(0,0)+ &
csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeA(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(0,1) = prd(0,1)+ &
csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeB(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(0,2) = prd(0,2)+ &
csv%rmeA(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeC(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(1,0) = prd(1,0)+ &
csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeA(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(1,1) = prd(1,1)+ &
csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeB(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(1,2) = prd(1,2)+ &
csv%rmeB(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeC(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(2,0) = prd(2,0)+ &
csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeA(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(2,1) = prd(2,1)+ &
csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeB(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
prd(2,2) = prd(2,2)+ &
csv%rmeC(id1,l1,la1,iljc,ic,iqv,ie)*csv%rmeC(id2,l2,la2,iljc,ic,iqv,ie)*csv%dose(id1,id2,lm1,lm2,ie)
enddo
enddo
......
......@@ -61,7 +61,12 @@ MODULE m_corespec_io
write(*,'(/,a)') trim(smeno)//ssep
IF(ANY(atoms%nlo(:).NE.0)) CALL juDFT_error("EELS + LOs not available at the moment!" ,calledby ="corespec_io")
IF(ANY(atoms%nlo(:).NE.0)) THEN
WRITE(*,*) 'PLEASE NOTE:'
WRITE(*,*) 'EELS + LOs is only for experienced users.'
WRITE(*,*) 'I hope you know what you are doing.'
! CALL juDFT_error("EELS + LOs not available at the moment!" ,calledby ="corespec_io")
END IF
! sanity check of the input parameters; if they are not correct, program stops
! unit conversion if necessary
......
......@@ -31,21 +31,21 @@
CHARACTER(7),DIMENSION(29),PARAMETER :: coreStateList_const=(/
+ '(1s1/2)','(2s1/2)','(2p1/2)','(2p3/2)','(3s1/2)',
+ '(3p1/2)','(3p3/2)','(3d3/2)','(3d5/2)','(4s1/2)',
+ '(3p1/2)','(3p3/2)','(4s1/2)','(3d3/2)','(3d5/2)',
+ '(4p1/2)','(4p3/2)','(5s1/2)','(4d3/2)','(4d5/2)',
+ '(5p1/2)','(5p3/2)','(6s1/2)','(4f5/2)','(4f7/2)',
+ '(5d3/2)','(5d5/2)','(6p1/2)','(6p3/2)','(7s1/2)',
+ '(5f5/2)','(5f7/2)','(6d3/2)','(6d5/2)' /)
INTEGER,DIMENSION(29),PARAMETER :: coreStateNumElecsList_const=(/ ! This is the number of electrons per spin
+ 1, 1, 1, 2, 1, 1, 2, 2, 3, 1, 1, 2, 1, 2,
+ 1, 1, 1, 2, 1, 1, 2, 1, 2, 3, 1, 2, 1, 2,
+ 3, 1, 2, 1, 3, 4, 2, 3, 1, 2, 1, 3, 4, 2, 3/)
INTEGER,DIMENSION(29),PARAMETER :: coreStateNprncList_const=(/
+ 1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 5, 4, 4,
+ 1, 2, 2, 2, 3, 3, 3, 4, 3, 3, 4, 4, 5, 4, 4,
+ 5, 5, 6, 4, 4, 5, 5, 6, 6, 7, 5, 5, 6, 6/)
INTEGER,DIMENSION(29),PARAMETER :: coreStateKappaList_const=(/
+ -1,-1, 1,-2,-1, 1,-2, 2,-3,-1, 1,-2,-1, 2,-3,
+ -1,-1, 1,-2,-1, 1,-2,-1, 2,-3, 1,-2,-1, 2,-3,
+ 1,-2,-1, 3,-4, 2,-3, 1,-2,-1, 3,-4, 2,-3/)
CHARACTER(4),DIMENSION(6),PARAMETER :: nobleGasConfigList_const=(/
......
......@@ -240,6 +240,7 @@ MODULE m_fleur
input%l_wann = .FALSE.
INQUIRE (file='wann_inp',exist=input%l_wann)
IF (input%l_wann.AND.(mpi%irank==0).AND.(.NOT.wann%l_bs_comf)) THEN
IF(mpi%isize.NE.1) CALL juDFT_error('No Wannier+MPI at the moment',calledby = 'fleur')
CALL wann_optional(input,atoms,sym,cell,oneD,noco,wann)
END IF
IF (wann%l_gwf) input%itmax = 1
......
enable_testing()
set(Testdirs CuBulk CuBulkXML Fe_1l Fe_1lXML Fe-Atom CuBand CuBandXML CuDOS CuDOSXML Fe_bct_LO Fe_bct_LOXML Fe_bct Fe_bctXML PTO PTOXML Fe_fcc Fe_fccXML Fe_1l_SOC Fe_1l_SOCXML PTO-SOC PTO-SOCXML Fe_bct_SOC Fe_bct_SOCXML GaAsMultiUForceXML)
set(Testdirs CuBulk CuBulkXML Fe_1l Fe_1lXML Fe-Atom CuBand CuBandXML CuDOS
CuDOSXML Fe_bct_LO Fe_bct_LOXML Fe_bct Fe_bctXML PTO PTOXML Fe_fcc Fe_fccXML
Fe_1l_SOC Fe_1l_SOCXML PTO-SOC PTO-SOCXML Fe_bct_SOC Fe_bct_SOCXML
GaAsMultiUForceXML TiO2eels)
#Check if all tests (including those running for a long time) should be executed
if (all_tests)
set(Testdirs ${Testdirs} Bi2Te3 Bi2Te3XML NiO_ldau NiO_ldauXML)
endif()
#Add Wannier tests if fleur is compiled with Wannier support
if (${FLEUR_USE_WANN})
set(Testdirs ${Testdirs} Cwann)
endif()
#The serial tests
if (${FLEUR_USE_SERIAL})
......
energy parameters for window 1 spin 1 mix= 1.000000
atom s p d f
--> 1 2.00000 2.00000 3.00000 4.00000 change: FFFF skiplo: 0
strho=f,film=F,dos=F,isec1= 99,ndir= 0,secvar=F
unnamed project
any any ,invs=T,zrfs=F,invs2=F,jspins=1,l_noco=F
0.00000000 3.37100000 3.37100000
3.37100000 0.00000000 3.37100000
3.37100000 3.37100000 0.00000000 0.00000000 1.00000000
pbe non-relativi
igrd=1,lwb=F,ndvgrd=6,idsprs=0,chng=-0.100D-11
1
**********************************
C 6 1 6 311 1.280000 0.032000
2,force =F,nlo= 0,llo=
-1.000000 -1.000000 -1.000000 8.000000
1.000000 1.000000 1.000000 8.000000
**********************************
13.900000 11.600000
vchk=F,cdinf=F,pot8=F,gw=0,numbands= 0
lpr=0,form66=F,l_f=F,eonly=F,eig66=F
4
1 0
Window # 1
-0.80000 1.50000 8.00000
4.00000
gauss=F 0.00100tria=F
0.00000 0.00000,l_soc=F
frcor=F,slice=F,ctail=T,disp=F,kcrel=0,u2f=F,f2u=F
itmax= 1,maxiter= 99,imix= 7,alpha= 0.05,spinf= 2.00
swsp=F 0.00
lflip=F 1
vacdos=F,layers= 0,integ=F,star=F,nstars= 0 0.00 0.00 0.00 0.00,nstm=0,tworkf= 0.000000
iplot=F,score=F,plpot=F,band=F
0 0.000000 0.000000,nnne= 0,pallst=F
xa= 2.00000,thetad= 330.00000,epsdisp= 0.00001,epsforce= 0.00001
relax 001
emin_dos= -0.50000,emax_dos= 0.50000,sig_dos= 0.01500
nkpt= 3
10 8.0000000000
3.00000 3.00000 3.00000 2.00000
1.00000 3.00000 3.00000 6.00000
1.00000 4.00000 4.00000 6.00000
3.00000 3.00000 5.00000 6.00000
2.00000 2.00000 3.00000 6.00000
2.00000 3.00000 4.00000 12.00000
2.00000 4.00000 5.00000 12.00000
3.00000 4.00000 4.00000 6.00000
1.00000 1.00000 1.00000 2.00000
1.00000 2.00000 2.00000 6.00000
8 1.0000000000
0.00000 0.00000 0.00000 1.00000
0.00000 0.00000 0.50000 1.00000
0.00000 0.50000 0.00000 1.00000
0.00000 0.50000 0.50000 1.00000
0.50000 0.00000 0.00000 1.00000
0.50000 0.00000 0.50000 1.00000
0.50000 0.50000 0.00000 1.00000
0.50000 0.50000 0.50000 1.00000
48 48 F ! nop,nop2,symor
! 1
1 0 0 0.00000
0 1 0 0.00000
0 0 1 0.00000
! 2
0 1 0 0.00000
1 0 0 0.00000
0 0 1 0.00000
! 3
-1 0 0 0.00000
0 -1 0 0.00000
1 1 1 0.50000
! 4
0 -1 0 0.00000
-1 0 0 0.00000
1 1 1 0.50000
! 5
0 1 0 0.00000
1 0 0 0.00000
-1 -1 -1 0.50000
! 6
1 0 0 0.00000
0 1 0 0.00000
-1 -1 -1 0.50000
! 7
-1 0 0 0.00000
0 -1 0 0.00000
0 0 -1 0.00000
! 8
0 -1 0 0.00000
-1 0 0 0.00000
0 0 -1 0.00000
! 9
0 0 1 0.00000
1 0 0 0.00000
-1 -1 -1 0.50000
! 10
0 0 1 0.00000
0 1 0 0.00000
-1 -1 -1 0.50000
! 11
1 1 1 0.50000
0 -1 0 0.00000
0 0 -1 0.00000
! 12
1 1 1 0.50000
-1 0 0 0.00000
0 0 -1 0.00000
! 13
-1 0 0 0.00000
1 1 1 0.50000
0 0 -1 0.00000
! 14
1 0 0 0.00000
0 0 1 0.00000
-1 -1 -1 0.50000
! 15
0 1 0 0.00000
0 0 1 0.00000
-1 -1 -1 0.50000
! 16
0 -1 0 0.00000
1 1 1 0.50000
0 0 -1 0.00000
! 17
-1 0 0 0.00000
0 0 -1 0.00000
0 -1 0 0.00000
! 18
0 1 0 0.00000
-1 -1 -1 0.50000
1 0 0 0.00000
! 19
0 -1 0 0.00000
0 0 -1 0.00000
-1 0 0 0.00000
! 20
1 0 0 0.00000
-1 -1 -1 0.50000
0 1 0 0.00000
! 21
1 1 1 0.50000
0 0 -1 0.00000
0 -1 0 0.00000
! 22
0 0 1 0.00000
-1 -1 -1 0.50000
1 0 0 0.00000
! 23
1 1 1 0.50000
0 0 -1 0.00000
-1 0 0 0.00000
! 24
0 0 1 0.00000
-1 -1 -1 0.50000
0 1 0 0.00000
! 25
0 0 -1 0.00000
-1 0 0 0.00000
0 -1 0 0.00000
! 26
0 0 -1 0.00000
0 -1 0 0.00000
-1 0 0 0.00000
! 27
-1 -1 -1 0.50000
0 1 0 0.00000
1 0 0 0.00000
! 28
-1 -1 -1 0.50000
1 0 0 0.00000
0 1 0 0.00000
! 29
0 0 1 0.00000
0 1 0 0.00000
1 0 0 0.00000
! 30
1 1 1 0.50000
-1 0 0 0.00000
0 -1 0 0.00000
! 31
1 1 1 0.50000
0 -1 0 0.00000
-1 0 0 0.00000
! 32
0 0 1 0.00000
1 0 0 0.00000
0 1 0 0.00000
! 33
0 0 -1 0.00000
1 1 1 0.50000
-1 0 0 0.00000
! 34
0 0 -1 0.00000
1 1 1 0.50000
0 -1 0 0.00000
! 35
-1 -1 -1 0.50000
0 0 1 0.00000
1 0 0 0.00000
! 36
-1 -1 -1 0.50000
0 0 1 0.00000
0 1 0 0.00000
! 37
-1 0 0 0.00000
1 1 1 0.50000
0 -1 0 0.00000
! 38
0 1 0 0.00000
0 0 1 0.00000
1 0 0 0.00000
! 39
0 -1 0 0.00000
1 1 1 0.50000
-1 0 0 0.00000
! 40
1 0 0 0.00000
0 0 1 0.00000
0 1 0 0.00000
! 41
1 0 0 0.00000
-1 -1 -1 0.50000
0 0 1 0.00000
! 42
0 1 0 0.00000
-1 -1 -1 0.50000
0 0 1 0.00000
! 43
0 -1 0 0.00000
0 0 -1 0.00000
1 1 1 0.50000
! 44
-1 0 0 0.00000
0 0 -1 0.00000
1 1 1 0.50000
! 45
-1 -1 -1 0.50000
1 0 0 0.00000
0 0 1 0.00000
! 46
-1 -1 -1 0.50000
0 1 0 0.00000
0 0 1 0.00000
! 47
0 0 -1 0.00000
0 -1 0 0.00000
1 1 1 0.50000
! 48
0 0 -1 0.00000
-1 0 0 0.00000
1 1 1 0.50000
wan90version 2
projgen
endjobs
wan90version 2
byindex 1 8
matrixmmn
prepwan90
matrixamn
endjobs
$test_name="C: simple test for the Wannier code";
$test_code="Fleur";
$test_stages=3;
$test_desc=<<EOF
Simple test of Fleur with three steps:
1.Generate a starting density and run 1 iteration
2.Generate projections for Wannier functions
3.Generate input for Wannier90 code
Uses: Wannier
EOF
;
#juDFT Testscript
jt::copyfile("files/inp",$workdir);
jt::copyfile("files/sym.out",$workdir);
jt::copyfile("files/enpara",$workdir);
jt::copyfile("files/kpts",$workdir);
jt::testrun($executable,$workdir);
#now test output
$result=jt::test_fileexists("$workdir/out");
jt::stageresult($workdir,$result,"1");
#juDFT Testscript
#The following arguments are passed: executable, working directory
jt::copyfile("files/projgen_inp",$workdir);
jt::copyfile("files/wann_inp",$workdir);
jt::copyfile("files/kpts-2","$workdir/kpts");
jt::testrun($executable,$workdir);
#now test output
$result=jt::test_grepexists("$workdir/proj"," 8 8");
$result+=jt::test_grepexists("$workdir/proj"," 1 -3 1 0");
$result+=jt::test_grepexists("$workdir/proj"," 2 -3 4 0");
$result+=jt::test_grepexists("$workdir/proj"," 0.000000 0.000000 0.000000 0.000000 1.00");
jt::stageresult($workdir,$result,"2");
#juDFT Testscript
#The following arguments are passed: executable, working directory
jt::copyfile("files/wann_inp2","$workdir/wann_inp");
jt::testrun($executable,$workdir);
#now test output
$result=jt::test_fileexists("$workdir/WF1.amn");
$result+=jt::test_fileexists("$workdir/WF1.mmn");
$result+=jt::test_fileexists("$workdir/WF1.eig");
$result+=jt::test_fileexists("$workdir/WF1.win");
$result+=jt::test_fileexists("$workdir/WF1.wout");
$result+=jt::test_grepexists("$workdir/WF1.eig"," 1 1 -9.96004957");
$result+=jt::test_grepexists("$workdir/WF1.eig"," 8 1 24.36259922");
$result+=jt::test_grepexists("$workdir/WF1.eig"," 8 8 27.60170066");
$result+=jt::test_grepexists("$workdir/WF1.eig"," 5 6 16.51363508");
#Note:WF1.amn and WF1.mmn seem to differ strongly from the reference result.
#But this does not seem to be relevant as invoking wannier90.x WF1 yields high precision results.
#$result+=jt::test_grepexists("$workdir/WF1.amn"," 8 8 8");
#$result+=jt::test_grepexists("$workdir/WF1.amn"," 1 1 1 -0.21709150");
#$result+=jt::test_grepexists("$workdir/WF1.amn"," 8 2 1 0.000000000000 0.29174760");
#$result+=jt::test_grepexists("$workdir/WF1.amn"," 2 6 2 0.000000000000 -0.01714566");
#$result+=jt::test_grepexists("$workdir/WF1.amn"," 3 5 2 -0.18082932");
#$result+=jt::test_grepexists("$workdir/WF1.amn"," 8 8 8 0.000000000000 -0.11210751");
#$result+=jt::test_grepexists("$workdir/WF1.amn"," 6 7 8 -0.33695808");
#$result+=jt::test_grepexists("$workdir/WF1.mmn"," 8 8 8");
#$result+=jt::test_grepexists("$workdir/WF1.mmn"," 1 2 0 0 0");
#$result+=jt::test_grepexists("$workdir/WF1.mmn"," -0.757938912603");
#$result+=jt::test_grepexists("$workdir/WF1.mmn"," 0.257799685127");
#$result+=jt::test_grepexists("$workdir/WF1.mmn"," 8 7 0 0 1");
jt::stageresult($workdir,$result,"3");
&csinp
csi%verb = 1
csi%type = 1
csi%edge = 'L'
csi%edgeidx = 3
csi%lx = 2
csi%ek0 = 300
csi%emn = -1
csi%emx = 15
csi%ein = 1.
/
0 1 430.098 4.3808E-03 0.0000E+00 5.3804E-03 0.0000E+00
0 1 431.098 1.1145E-03 0.0000E+00 2.2368E-03 0.0000E+00
0 1 432.098 5.4398E-07 0.0000E+00 2.4874E-06 0.0000E+00
0 1 433.098 5.7937E-15 0.0000E+00 3.4247E-14 0.0000E+00
0 1 434.098 2.8353E-27 0.0000E+00 1.4684E-26 0.0000E+00
0 1 435.098 8.8574E-14 0.0000E+00 4.1369E-13 0.0000E+00
0 1 436.098 2.1025E-05 0.0000E+00 9.0098E-05 0.0000E+00
0 1 437.098 4.6458E-02 0.0000E+00 1.4574E-01 0.0000E+00
0 1 438.098 1.9176E-01 0.0000E+00 2.2600E-01 0.0000E+00
0 1 439.098 7.0534E-02 0.0000E+00 1.1324E-01 0.0000E+00
0 1 440.098 7.8333E-02 0.0000E+00 3.2395E-01 0.0000E+00
0 1 441.098 7.8703E-02 0.0000E+00 1.5333E-01 0.0000E+00
0 1 442.098 2.8849E-02 0.0000E+00 1.2373E-01 0.0000E+00
0 1 443.098 8.9866E-04 0.0000E+00 5.0424E-03 0.0000E+00
0 1 444.098 4.6961E-03 0.0000E+00 1.9480E-02 0.0000E+00
0 1 445.098 1.7447E-03 0.0000E+00 1.9236E-03 0.0000E+00
0 1 446.098 7.4332E-03 0.0000E+00 7.6095E-03 0.0000E+00
1 1 430.098 6.3784E-02 0.0000E+00 3.5411E-02 0.0000E+00
1 1 431.098 1.4520E-02 0.0000E+00 1.4683E-02 0.0000E+00
1 1 432.098 3.7277E-06 0.0000E+00 1.6287E-05 0.0000E+00
1 1 433.098 2.0842E-14 0.0000E+00 2.2391E-13 0.0000E+00
1 1 434.098 1.7334E-26 0.0000E+00 9.6432E-26 0.0000E+00
1 1 435.098 6.6101E-13 0.0000E+00 2.7179E-12 0.0000E+00
1 1 436.098 1.7587E-04 0.0000E+00 5.9129E-04 0.0000E+00
1 1 437.098 5.1795E-01 0.0000E+00 9.5547E-01 0.0000E+00
1 1 438.098 3.0585E+00 0.0000E+00 1.4812E+00 0.0000E+00
1 1 439.098 1.0505E+00 0.0000E+00 7.4181E-01 0.0000E+00
1 1 440.098 6.7892E-01 0.0000E+00 2.1229E+00 0.0000E+00
1 1 441.098 1.1043E+00 0.0000E+00 1.0042E+00 0.0000E+00
1 1 442.098 2.3789E-01 0.0000E+00 8.1016E-01 0.0000E+00
1 1 443.098 4.3919E-03 0.0000E+00 3.2996E-02 0.0000E+00
1 1 444.098 4.0029E-02 0.0000E+00 1.2750E-01 0.0000E+00
1 1 445.098 2.6406E-02 0.0000E+00 1.2632E-02 0.0000E+00
1 1 446.098 1.1761E-01 0.0000E+00 4.9857E-02 0.0000E+00
strho=F,film=F,dos=T,isec1= 99,ndir=-1,secvar=F
TiO2 Rutile
squ any ,invs=T,zrfs=T,invs2=T,jspins=1,l_noco=F,l_J=F
8.68140538
5.59170190 5.59170190 1.00000000
pw91 non-relativi
igrd=1,lwb=F,ndvgrd=6,idsprs=0,chng=-0.100D-11
2
**********************************
Ti 22 5 8 757 2.280000 0.015000
2,force =T,nlo= 1,llo= 1
0.000000 0.000000 0.000000 4.000000
2.000000 2.000000 2.000000 4.000000
**********************************
O 8 1 6 429 1.290000 0.024000
4,force =T,nlo= 0,llo=
0.612000 0.612000 0.000000 2.000000
-0.612000 -0.612000 0.000000 2.000000
0.388000 -0.388000 1.000000 2.000000
-0.388000 0.388000 1.000000 2.000000
**********************************
9.000000 8.000000
vchk=F,cdinf=F,pot8=F,gw=0,gw_neigd= 0
lpr=0,form66=F,l_f=F,eonly=F,eig66=F,soc66=F
6 4
1 0
Window # 1
-1.80000 1.00000 44.00000
3.80000 =kmax
gauss=F 0.00100tria=F
0.000000 0.000000,l_soc=F,spav=F,off=F
frcor=F,slice=F,ctail=T,disp=F,kcrel=0,u2f=F,f2u=F,bmt=F
itmax= 1,maxiter= 99,imix= 7,alpha=0.0500,spinf= 2.00
swsp=F 0.00 0.00
lflip=F 1 1
vacdos=F,layers= 0,integ=F,star=F,nstars= 0 0.00 0.00 0.00 0.00,nstm=0,tworkf= 0.000000
iplot=F,score=F,plpot=F,band=F
0 0.000000 0.000000,nnne= 0,pallst=F
xa= 2.00000,thetad= 330.00000,epsdisp= 0.00001,epsforce= 0.00001
relax 111 111
emin_dos= -0.50000,emax_dos= 0.50000,sig_dos= 0.01500
nkpt= 3
This test is for the EELS code path. It compares several values in the generated fort.37
file with those in the reference file provided in this folder.
16 16 F ! nop,nop2,symor
! 1
1 0 0 0.00000
0 1 0 0.00000
0 0 1 0.00000
! 2
-1 0 0 0.00000
0 -1 0 0.00000
0 0 -1 0.00000
! 3
-1 0 0 0.50000
0 1 0 0.50000
0 0 -1 0.50000
! 4
1 0 0 0.50000
0 -1 0 0.50000
0 0 1 0.50000
! 5
0 -1 0 0.50000
1 0 0 0.50000
0 0 1 0.50000
! 6
-1 0 0 0.00000
0 -1 0 0.00000
0 0 1 0.00000
! 7
0 1 0 0.50000
-1 0 0 0.50000
0 0 1 0.50000
! 8
0 1 0 0.50000
-1 0 0 0.50000
0 0 -1 0.50000
! 9
0 -1 0 0.00000
-1 0 0 0.00000
0 0 -1 0.00000
! 10
0 1 0 0.00000
1 0 0 0.00000
0 0 1 0.00000
! 11
1 0 0 0.00000
0 1 0 0.00000
0 0 -1 0.00000
! 12
1 0 0 0.50000
0 -1 0 0.50000
0 0 -1 0.50000
! 13
-1 0 0 0.50000
0 1 0 0.50000
0 0 1 0.50000
! 14
0 -1 0 0.50000
1 0 0 0.50000
0 0 -1 0.50000
! 15
0 1 0 0.00000
1 0 0 0.00000
0 0 -1 0.00000
! 16
0 -1 0 0.00000
-1 0 0 0.00000
0 0 1 0.00000
$test_name="Fleur TiO2 EELS spectrum";
$test_code="Fleur";
$test_stages=2;
$test_desc=<<EOF
Simple test of Fleur with two steps:
1.Generate a starting density and run a single iteration
2.Generate EELS spectrum and compare some values
EOF
;
#juDFT Testscript
jt::copyfile("files/inp",$workdir);
jt::copyfile("files/sym.out",$workdir);
jt::testrun($executable,$workdir);
#now test output
$result=jt::test_fileexists("$workdir/out");
$result+=min(jt::test_fileexists("$workdir/cdn1"),jt::test_fileexists("$workdir/cdn.hdf"));
jt::stageresult($workdir,$result,"1");
#juDFT Testscript
#The following arguments are passed: executable, working directory
jt::copyfile("files/corespec_inp","$workdir");
jt::testrun($executable,$workdir);
#now test output
$result=jt::test_grepexists("$workdir/fort.37","435.09");
$result+=jt::test_grepexists("$workdir/fort.37","1.917");
$result+=jt::test_grepexists("$workdir/fort.37","438.09");
$result+=jt::test_grepexists("$workdir/fort.37","1.050");
$result+=jt::test_grepexists("$workdir/fort.37","2.236");
$result+=jt::test_grepexists("$workdir/fort.37","3.299");
$result+=jt::test_grepexists("$workdir/fort.37"," 0 1 430.09");
$result+=jt::test_grepexists("$workdir/fort.37"," 1 1 446.09");
jt::stageresult($workdir,$result,"2");
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment