I am new to ELK. I am recently trying to calculate SiO2 alpha-quartz. I find that when I change the ngridk from 6x6x6 to 13x13x13, the EFERMI.OUT will change between 0.26(very close to conduction band) and 0.05(very close to valence band). The exact values will fluctuate around these two values. Though these two values are both inside bandgap.
Does this mean the code is not converged? Since DFT is calculated at zero temperature, does it mean as long as the Fermi level is inside bandgap it will be OK?
Also I had errors like "Warning(linengy): could not find 3 linearisation energies in s.c. loop 1". Will this warning affect the results?
For Si I use rmt=1.6500, O rmt=1.25000.
Many thanks,
Zhengping
my script:
! SiO2 alpha(low) quartz bandstructure with LDA
tasks
0
20
! Tolerance on conv. of total energy (absolute)
epsengy
1.e-5
! G K H A G M L A
plot1d
8 80
0.0 0.0 0.0 : g -> C. Sevik, C. Bulutay; Y. Xu, W. Y. Ching PRB 44 (1991)
0.3333333333 0.3333333333 0.0 : k
0.3333333333 0.3333333333 0.5 : h
0.0 0.0 0.5 : a
0.0 0.0 0.0 : g
0.5 0.0 0.0 : m
0.5 0.0 0.5 : l
0.0 0.0 0.5 : a
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The Fermi energy for a semiconductor is not defined. It can be any where in the gap. So as long as you have Fermi level in the gap it does not matter. If your potential and density are converged you can trust the calculation.
As for the warning about linearisation energy, does the warning vanish after the first few self-consistency loops? If yes, you are fine
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes, you can do that or study LINENGY.OUT and see if it is a trivial linearization energy that fails. If uncertain how to determine this, please provide your file here and we can help.
Best/ Lars
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
However in my warning there is no information on which atom and energy is not found. Does the output changed recently?
Here is my species file:
'Si' : spsymb
'silicon' : spname
-14.0000 : spzn
51196.73452 : spmass
0.534522E-06 1.6500 46.0261 1200 : sprmin, rmt, sprmax, nrmt
7 : spnst
1 0 1 2.00000 T : spn, spl, spk, spocc, spcore
2 0 1 2.00000 T
2 1 1 2.00000 T
2 1 2 4.00000 T
3 0 1 2.00000 F
3 1 1 1.00000 F
3 1 2 1.00000 F
1 : apword 1: APW; 2: LAPW; 3+: super-LAPW
0.1500 0 F : apwe0, apwdm, apwve
0 : nlx
2 : nlorb: number of local orbitals
0 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
1 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
'O' : spsymb
'oxygen' : spname
-8.00000 : spzn
29165.12202 : spmass
0.707107E-06 1.25000 28.9996 900 : sprmin, rmt, sprmax, nrmt
4 : spnst
1 0 1 2.00000 T : spn, spl, spk, spocc, spcore
2 0 1 2.00000 F
2 1 1 2.00000 F
2 1 2 2.00000 F
1 : apword
0.1500 0 F : apwe0, apwdm, apwve
0 : nlx
3 : nlorb
0 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
1 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
0 3 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
-0.8728 0 T
Species : 1 (Si), atom : 3
APW functions :
l = 0, order = 1 : 0.1500000000
l = 1, order = 1 : 0.1500000000
l = 2, order = 1 : 0.1500000000
l = 3, order = 1 : 0.1500000000
l = 4, order = 1 : 0.1500000000
l = 5, order = 1 : 0.1500000000
l = 6, order = 1 : 0.1500000000
l = 7, order = 1 : 0.1500000000
l = 8, order = 1 : 0.1500000000
l = 9, order = 1 : 0.1500000000
l = 10, order = 1 : 0.1500000000
l = 11, order = 1 : 0.1500000000
l = 12, order = 1 : 0.1500000000
local-orbital functions :
l.o. = 1, l = 0, order = 1 : 0.1500000000
l.o. = 1, l = 0, order = 2 : 0.1500000000
l.o. = 2, l = 1, order = 1 : 0.1500000000
l.o. = 2, l = 1, order = 2 : 0.1500000000
Species : 2 (O), atom : 1
APW functions :
l = 0, order = 1 : 0.1500000000
l = 1, order = 1 : 0.1500000000
l = 2, order = 1 : 0.1500000000
l = 3, order = 1 : 0.1500000000
l = 4, order = 1 : 0.1500000000
l = 5, order = 1 : 0.1500000000
l = 6, order = 1 : 0.1500000000
l = 7, order = 1 : 0.1500000000
l = 8, order = 1 : 0.1500000000
l = 9, order = 1 : 0.1500000000
l = 10, order = 1 : 0.1500000000
l = 11, order = 1 : 0.1500000000
l = 12, order = 1 : 0.1500000000
local-orbital functions :
l.o. = 1, l = 0, order = 1 : 0.1500000000
l.o. = 1, l = 0, order = 2 : 0.1500000000
l.o. = 2, l = 1, order = 1 : 0.1500000000
l.o. = 2, l = 1, order = 2 : 0.1500000000
l.o. = 3, l = 0, order = 1 : 0.1500000000
l.o. = 3, l = 0, order = 2 : 0.1500000000
l.o. = 3, l = 0, order = 3 : -0.8728000000
Best,
Zhengping
Last edit: Z. Jiang 2014-05-09
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
After some study, I learned more about the APW+lo+LO method.
I still do not understand one thing about the default "O.in". Why do we need an order 3 LO for lorbl=0? Is it because O 2s is a semi-core orbital? The energy for O 2s is close to -0.7, so the value -0.8728 is close.
If I understand it right, order 2 means APW + lo orbital and order 3 means LO orbital. And APW+lo is similar to LAPW. That is why we define apword=1 and add one lo orbital to each valence state?
For this specific case, I still did not find out which linearisation energy is not found.
Best regards,
Zhengping
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Since the energy for O-s at -0.87280 is exactly the same in input as output, it is the energy not found. However that lo is not crucial, especially with the small MT radius you have. Delete the third lo and things ought to work anyhow ...
Yes this (as all) lo (LO) can be given as order 2, it is just a matter of taste.
Best,
Lars
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Dear ELK users,
I am new to ELK. I am recently trying to calculate SiO2 alpha-quartz. I find that when I change the ngridk from 6x6x6 to 13x13x13, the EFERMI.OUT will change between 0.26(very close to conduction band) and 0.05(very close to valence band). The exact values will fluctuate around these two values. Though these two values are both inside bandgap.
Does this mean the code is not converged? Since DFT is calculated at zero temperature, does it mean as long as the Fermi level is inside bandgap it will be OK?
Also I had errors like "Warning(linengy): could not find 3 linearisation energies in s.c. loop 1". Will this warning affect the results?
For Si I use rmt=1.6500, O rmt=1.25000.
Many thanks,
Zhengping
my script:
! SiO2 alpha(low) quartz bandstructure with LDA
tasks
0
20
! Tolerance on conv. of total energy (absolute)
epsengy
1.e-5
spinpol
.false.
spinorb
.false.
scale
1
! WYCKOFF a0=4.903A= 9.265326a.u.
! WYCKOFF c0=5.393A=10.191292a.u.
! space group: D3^4(C312) D3^6
avec
4.644946479927 -8.045281629256 0
4.644946479927 8.045281629256 0
0 0 10.21472485866
atoms
2 : nspecies
'Si_my1.in' : spfname
3 : natoms; atpos, bfcmt below
0.4650 0.0000 0.0000 0.0 0.0 0.0
0.0000 0.4650 0.666666667 0.0 0.0 0.0
0.5350 0.5350 0.333333333 0.0 0.0 0.0
'O_my1.in'
6
0.415 0.272 0.1200 0.0 0.0 0.0
0.728 0.143 0.786666667 0.0 0.0 0.0
0.857 0.585 0.453333333 0.0 0.0 0.0
0.272 0.415 0.546666667 0.0 0.0 0.0
0.143 0.728 0.8800 0.0 0.0 0.0
0.585 0.857 0.213333333 0.0 0.0 0.0
! fairly high number of empty states
nempty
12
rgkmax
8
lmaxapw
12
lmaxapw
12
lmaxvr
9
swidth
0.0001
lradstp
2
gmaxvr
22
sppath
'~/elk/elk-2.2.10/species/'
ngridk
9 9 9
! G K H A G M L A
plot1d
8 80
0.0 0.0 0.0 : g -> C. Sevik, C. Bulutay; Y. Xu, W. Y. Ching PRB 44 (1991)
0.3333333333 0.3333333333 0.0 : k
0.3333333333 0.3333333333 0.5 : h
0.0 0.0 0.5 : a
0.0 0.0 0.0 : g
0.5 0.0 0.0 : m
0.5 0.0 0.5 : l
0.0 0.0 0.5 : a
The Fermi energy for a semiconductor is not defined. It can be any where in the gap. So as long as you have Fermi level in the gap it does not matter. If your potential and density are converged you can trust the calculation.
As for the warning about linearisation energy, does the warning vanish after the first few self-consistency loops? If yes, you are fine
Hi, Thanks for your reply! The warning does not vanish until the total energy is converged. Will this be a problem?
Try removing the corresponding local orbital from the species file and see if you get exactly the same results.
Yes, you can do that or study LINENGY.OUT and see if it is a trivial linearization energy that fails. If uncertain how to determine this, please provide your file here and we can help.
Best/ Lars
Hi Sangeeta, Lars
Thanks for your help! I am following a previous thread:
https://sourceforge.net/p/elk/discussion/897820/thread/8aa889df
However in my warning there is no information on which atom and energy is not found. Does the output changed recently?
Here is my species file:
'Si' : spsymb
'silicon' : spname
-14.0000 : spzn
51196.73452 : spmass
0.534522E-06 1.6500 46.0261 1200 : sprmin, rmt, sprmax, nrmt
7 : spnst
1 0 1 2.00000 T : spn, spl, spk, spocc, spcore
2 0 1 2.00000 T
2 1 1 2.00000 T
2 1 2 4.00000 T
3 0 1 2.00000 F
3 1 1 1.00000 F
3 1 2 1.00000 F
1 : apword 1: APW; 2: LAPW; 3+: super-LAPW
0.1500 0 F : apwe0, apwdm, apwve
0 : nlx
2 : nlorb: number of local orbitals
0 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
1 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
'O' : spsymb
'oxygen' : spname
-8.00000 : spzn
29165.12202 : spmass
0.707107E-06 1.25000 28.9996 900 : sprmin, rmt, sprmax, nrmt
4 : spnst
1 0 1 2.00000 T : spn, spl, spk, spocc, spcore
2 0 1 2.00000 F
2 1 1 2.00000 F
2 1 2 2.00000 F
1 : apword
0.1500 0 F : apwe0, apwdm, apwve
0 : nlx
3 : nlorb
0 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
1 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
0 3 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
-0.8728 0 T
Species : 1 (Si), atom : 3
APW functions :
l = 0, order = 1 : 0.1500000000
l = 1, order = 1 : 0.1500000000
l = 2, order = 1 : 0.1500000000
l = 3, order = 1 : 0.1500000000
l = 4, order = 1 : 0.1500000000
l = 5, order = 1 : 0.1500000000
l = 6, order = 1 : 0.1500000000
l = 7, order = 1 : 0.1500000000
l = 8, order = 1 : 0.1500000000
l = 9, order = 1 : 0.1500000000
l = 10, order = 1 : 0.1500000000
l = 11, order = 1 : 0.1500000000
l = 12, order = 1 : 0.1500000000
local-orbital functions :
l.o. = 1, l = 0, order = 1 : 0.1500000000
l.o. = 1, l = 0, order = 2 : 0.1500000000
l.o. = 2, l = 1, order = 1 : 0.1500000000
l.o. = 2, l = 1, order = 2 : 0.1500000000
Species : 2 (O), atom : 1
APW functions :
l = 0, order = 1 : 0.1500000000
l = 1, order = 1 : 0.1500000000
l = 2, order = 1 : 0.1500000000
l = 3, order = 1 : 0.1500000000
l = 4, order = 1 : 0.1500000000
l = 5, order = 1 : 0.1500000000
l = 6, order = 1 : 0.1500000000
l = 7, order = 1 : 0.1500000000
l = 8, order = 1 : 0.1500000000
l = 9, order = 1 : 0.1500000000
l = 10, order = 1 : 0.1500000000
l = 11, order = 1 : 0.1500000000
l = 12, order = 1 : 0.1500000000
local-orbital functions :
l.o. = 1, l = 0, order = 1 : 0.1500000000
l.o. = 1, l = 0, order = 2 : 0.1500000000
l.o. = 2, l = 1, order = 1 : 0.1500000000
l.o. = 2, l = 1, order = 2 : 0.1500000000
l.o. = 3, l = 0, order = 1 : 0.1500000000
l.o. = 3, l = 0, order = 2 : 0.1500000000
l.o. = 3, l = 0, order = 3 : -0.8728000000
Best,
Zhengping
Last edit: Z. Jiang 2014-05-09
Hi,
Thanks everyone for the help.
After some study, I learned more about the APW+lo+LO method.
I still do not understand one thing about the default "O.in". Why do we need an order 3 LO for lorbl=0? Is it because O 2s is a semi-core orbital? The energy for O 2s is close to -0.7, so the value -0.8728 is close.
If I understand it right, order 2 means APW + lo orbital and order 3 means LO orbital. And APW+lo is similar to LAPW. That is why we define apword=1 and add one lo orbital to each valence state?
For this specific case, I still did not find out which linearisation energy is not found.
Best regards,
Zhengping
Hi!
Since the energy for O-s at -0.87280 is exactly the same in input as output, it is the energy not found. However that lo is not crucial, especially with the small MT radius you have. Delete the third lo and things ought to work anyhow ...
Yes this (as all) lo (LO) can be given as order 2, it is just a matter of taste.
Best,
Lars