We are having
convergence problems for our pervoskite system (CH3NH3PbI3) while
running it in ELK. The task '0' and task '20' corresponding to the
ground state and band calculation are not running properly. Please note
that we are able to run all example files in ELK. We are also able to
run simple 'ABO3' type (CsPbI3) sysytem. However, we are getting the
error, once we replace 'A' with organic molecule 'CH3NH3'.
.What I get is that there is some problem with RMT values, which is giving the errors like:
'linearization energy not found'
'energy eigenvalue less than linearization energy' etc. (Please see out file)
In addition, we tried following:
- autokpt=.true.
- isgmkmax=-3
- ngridk=10x10x10/4x4x4/2x2x2
- reduced manually the RMT in species.in
Appended below are elk.in and out files:
tasks
0
20
spinpol
.true.
spinorb
.true.
nempty
10
rgkmax
8.0
avec
1.0 0.0 0.0
0.0 1.0 0.0
0.0 0.0 1.0
scale
6.3300
sppath
'../sps/'
atoms
5 : nspecies
'Pb.in' : spfname
1 : natoms; atpos, bfcmt below
0.00000 0.00000 0.00000 0.00000000 0.00000000 0.00000000
'I.in' : spfname
3 : natoms; atpos, bfcmt below
0.50000 0.00000 0.00000 0.00000000 0.00000000 0.00000000
0.00000 0.50000 0.0000 0.00000000 0.00000000 0.00000000
0.000000 0.00000 0.50000 0.00000000 0.00000000 0.00000000
'C.in' : spfname
1 : natoms; atpos, bfcmt below
0.43609 0.43064 0.4355 0.00000000 0.00000000 0.00000000
'N.in' : spfname
1 : natoms; atpos, bfcmt below
0.58991 0.57747 0.57936 0.00000000 0.00000000 0.00000000
'H.in' : spfname
6 : natoms; atpos, bfcmt below
0.28055 0.51688 0.39164 0.00000000 0.00000000 0.00000000
0.51599 0.38410 0.27824 0.00000000 0.00000000 0.00000000
0.38887 0.27610 0.52184 0.00000000 0.00000000 0.00000000
0.51656 0.74217 0.61182 0.00000000 0.00000000 0.00000000
0.75190 0.60620 0.49883 0.00000000 0.00000000 0.00000000
0.62430 0.50132 0.74238 0.00000000 0.00000000 0.00000000
ngridk
2 2 2
plot1d
6 200 : nvp1d, npp1d
0.5 0.5 0.0 : vlvp1d
0.5 0.5 0.5
0.0 0.0 0.0
0.0 0.5 0.0
0.5 0.5 0.0
0.0 0.0 0.0
Elk code started
Info(main): several copies of Elk may be running in this path
(this could be intentional, or result from a previous crash,
or arise from an incorrect MPI compilation)
Info(main): current task : 0
Info(checkmt): muffin-tin radius reduced from 1.800000000 to 1.557500000
for species 1 (Pb)
Info(checkmt): muffin-tin radius reduced from 1.800000000 to 1.557500000
for species 2 (I)
Info(checkmt): muffin-tin radius reduced from 0.8000000000 to 0.7887956230
for species 3 (C)
Info(checkmt): muffin-tin radius reduced from 1.000000000 to 0.7838603890
for species 4 (N)
Info(checkmt): muffin-tin radius reduced from 0.4000000000 to 0.3159860046
for species 5 (H)
Warning(linengy): linearisation energy not found
for species 1
atom 1
local-orbital 4
order 3
and s.c. loop 1
Warning(linengy): linearisation energy not found
for species 1
atom 1
local-orbital 5
order 3
and s.c. loop 1
Warning(linengy): linearisation energy not found
for species 2
atom 1
local-orbital 5
order 3
and s.c. loop 1
Warning(linengy): linearisation energy not found
for species 2
atom 2
local-orbital 5
order 3
and s.c. loop 1
Warning(linengy): linearisation energy not found
for species 2
atom 3
local-orbital 5
order 3
and s.c. loop 1
Warning(linengy): linearisation energy not found
for species 3
atom 1
local-orbital 3
order 3
and s.c. loop 1
Warning(linengy): linearisation energy not found
for species 4
atom 1
local-orbital 3
order 3
and s.c. loop 1
Warning(occupy): minimum eigenvalue less than minimum linearisation energy : -581.5660418 -2.068400000
for s.c. loop 1
Warning(rhonorm): total charge density incorrect for s.c. loop 1
Calculated : 259.5115862
Required : 260.0000000
Warning(linengy): linearisation energy not found
for species 1
atom 1
local-orbital 4
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 1
atom 1
local-orbital 5
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 2
atom 1
local-orbital 4
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 2
atom 1
local-orbital 5
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 2
atom 2
local-orbital 4
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 2
atom 2
local-orbital 5
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 2
atom 3
local-orbital 4
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 2
atom 3
local-orbital 5
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 3
atom 1
local-orbital 3
order 3
and s.c. loop 2
Warning(linengy): linearisation energy not found
for species 4
atom 1
local-orbital 3
order 3
and s.c. loop 2
Warning(occupy): minimum eigenvalue less than minimum linearisation energy : -8024175208. -2.068400000
for s.c. loop 2
Warning(occupy): could not find Fermi energy
Warning(rhonorm): total charge density incorrect for s.c. loop 2
Calculated : 268.9451024
Required : 260.0000000
Warning(linengy): linearisation energy not found
for species 1
atom 1
local-orbital 4
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 1
atom 1
local-orbital 5
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 2
atom 1
local-orbital 4
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 2
atom 1
local-orbital 5
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 2
atom 2
local-orbital 4
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 2
atom 2
local-orbital 5
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 2
atom 3
local-orbital 4
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 2
atom 3
local-orbital 5
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 3
atom 1
local-orbital 3
order 3
and s.c. loop 3
Warning(linengy): linearisation energy not found
for species 4
atom 1
local-orbital 3
order 3
and s.c. loop 3
Error(genlofr): degenerate local-orbital radial functions
for species 3
atom 1
and local-orbital 1
ZGESV returned INFO = 2
-
Dear Poorva,
your convergence issues are probably to the not founded linearization energies. Here are two suggestions first your rgkmax is quite large, wheras you use gmaxvr (the cutoff for potential and density ) quite small. So try to increase, at this value you may add trimvg (to cut small components)
gmaxvr
20trimvg
.true.this may help but I guess not completly. Since the first warning you got is a related to a specfiic not found linearisation energy. The source of this is your MT radius, which are by the structure are quite small. Elk searches the linearisation energies in a specifc energy range around the default values, which might not match with the location given by your decreased MT. In your case I expect larger linearisation energies due to the smaller radius. There are two solutions to that either increase the search radius, but I forgot the flag you may find it somewhere in the forum here or increase by hand the linearization energies for each orbital the code find not in the first iteration. For example for this message
Warning(linengy): linearisation energy not found
for species 1
atom 1
local-orbital 4
order 3
and s.c. loop 1we have to consider species 1 > Pb
local orbital 4 means counting after the nlorb flag (see below for complete standard in file of Pb) which gives2 3 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
-0.7322 0 T, we also see lorord is three so its the right one. The default linearization energy is -0.7322 but you may have to increase it towards -0.6 to -0.5 you have to try out. You then have to repeat this steps similiar for all species listed within the first iteration. If everything is fine the warnings should disappear and the calculation can converge nicely
best
Michael'Pb' : spsymb
'lead' : spname
-82.0000 : spzn
377702.4940 : spmass
0.220863E-06 2.8000 54.5572 700 : rminsp, rmt, rmaxsp, nrmt
24 : nstsp
1 0 1 2.00000 T : nsp, lsp, ksp, occsp, spcore
2 0 1 2.00000 T
2 1 1 2.00000 T
2 1 2 4.00000 T
3 0 1 2.00000 T
3 1 1 2.00000 T
3 1 2 4.00000 T
3 2 2 4.00000 T
3 2 3 6.00000 T
4 0 1 2.00000 T
4 1 1 2.00000 T
4 1 2 4.00000 T
4 2 2 4.00000 T
4 2 3 6.00000 T
4 3 3 6.00000 T
4 3 4 8.00000 T
5 0 1 2.00000 T
5 1 1 2.00000 T
5 1 2 4.00000 T
5 2 2 4.00000 F
5 2 3 6.00000 F
6 0 1 2.00000 F
6 1 1 1.000000 F
6 1 2 1.000000 F
1 : apword
0.1500 0 F : apwe0, apwdm, apwve
0 : nlx
5 : 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
2 2 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
2 3 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
-0.7322 0 T
0 3 : lorbl, lorbord
0.1500 0 F : lorbe0, lorbdm, lorbve
0.1500 1 F
-0.4439 0 T
-
Try converting your scale to atomic units. It looks like you are inputing the angstrom value.
-
Hi All,
I'm trying to calculate (CH3NH3)2CuCl4, but I'm getting warnings that the muffin tin radius is too small.
I've tried several sizes of the muffin tin radius but the hydrogen just can't fit. I used Dr. Singh's values for a start and I get these errors:
Info(elk): current task : 2 Info(checkmt): reduced muffin-tin radius of species 1 (Cu) from 1.8000 to 1.1265 Info(checkmt): reduced muffin-tin radius of species 2 (Cl) from 1.8000 to 1.1265 Info(checkmt): reduced muffin-tin radius of species 3 (N) from 1.0000 to 0.2871 Info(checkmt): reduced muffin-tin radius of species 4 (C) from 0.8000 to 0.6980 Error(checkmt): muffin-tin radius too small for species 5 (H) Radius : 0.1127103841
I've visualized this from VESTA, output it to POSCAR file format and basically copied the coordinates to the elk.in file. They seem to fit OK when seen through VESTA, and I tried to copy the atomic radius automatically generated through VESTA too. Mostly same results, got hit by H atoms having too small rmt.
On another note, I am trying to do unconstrained relaxations, but I am not sure whether Elk requires mutliple relaxations just like in VASP or not. VASP relaxations are pretty good but they do differ quite a bit after the first relaxations. I am wondering if there is a systematic way to do relaxations in Elk , something similar to this [VASP method to relax].(https://cms.mpi.univie.ac.at/wiki/index.php/Energy_vs_volume_Volume_relaxations_and_Pulay_stress)
Attached is my input file. Any suggestions are appreciated!
Best,
Cennatasks 2 latvopt 1 xctype 100 101 130 beta0 0.05 gmaxvr 20 rgkmax 8 isgkmax -3 swidth 0.01 autolinengy .true. rgkmax 8 lmaxapw 10 mixtype 3 broydpm 0.6 0.01 stype 2 autoswidth .false. nempty 10 maxscl 600 nwrite 50 primcell .true. vkloff 0.5 0.5 0.5 ngridk 10 10 10 autokpt .true. avec 7.268000000 0.000000000 0.000000000 0.000000000 7.367000000 0.000000000 -3.555408771 0.000000000 9.315573491 atoms 5 : nspecies 'Cu.in' : spfname 2 : natoms; atposl, bfcmt below 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.00000000 0.50000000 0.50000000 0.00000000 0.00000000 0.00000000 0.00000000 'Cl.in' : spfname 8 : natoms; atposl, bfcmt below 0.13140000 0.03830000 0.24700000 0.00000000 0.00000000 0.00000000 0.86860000 0.96170000 0.75300000 0.00000000 0.00000000 0.00000000 0.36860000 0.53830000 0.75300000 0.00000000 0.00000000 0.00000000 0.63140000 0.46170000 0.24700000 0.00000000 0.00000000 0.00000000 0.21240000 0.21420000 0.96930000 0.00000000 0.00000000 0.00000000 0.78760000 0.78580000 0.03070000 0.00000000 0.00000000 0.00000000 0.28760000 0.71420000 0.03070000 0.00000000 0.00000000 0.00000000 0.71240000 0.28580000 0.96930000 0.00000000 0.00000000 0.00000000 'N.in' : spfname 4 : natoms; atposl, bfcmt below 0.59550000 0.02680000 0.22400000 0.00000000 0.00000000 0.00000000 0.40450000 0.97320000 0.77600000 0.00000000 0.00000000 0.00000000 0.90450000 0.52680000 0.77600000 0.00000000 0.00000000 0.00000000 0.09550000 0.47320000 0.22400000 0.00000000 0.00000000 0.00000000 'C.in' : spfname 4 : natoms; atposl, bfcmt below 0.18500000 0.53520000 0.37240000 0.00000000 0.00000000 0.00000000 0.81500000 0.46480000 0.62760000 0.00000000 0.00000000 0.00000000 0.31500000 0.03520000 0.62760000 0.00000000 0.00000000 0.00000000 0.68500000 0.96480000 0.37240000 0.00000000 0.00000000 0.00000000 'H.in' : spfname 24 : natoms; atposl, bfcmt below 0.15000000 0.53600000 0.18800000 0.00000000 0.00000000 0.00000000 0.85000000 0.46400000 0.81200000 0.00000000 0.00000000 0.00000000 0.35000000 0.03600000 0.81200000 0.00000000 0.00000000 0.00000000 0.65000000 0.96400000 0.18800000 0.00000000 0.00000000 0.00000000 0.52900000 0.01500000 0.19900000 0.00000000 0.00000000 0.00000000 0.47100000 0.98500000 0.80100000 0.00000000 0.00000000 0.00000000 0.97100000 0.51500000 0.80100000 0.00000000 0.00000000 0.00000000 0.02900000 0.48500000 0.19900000 0.00000000 0.00000000 0.00000000 0.60300000 0.10900000 0.20700000 0.00000000 0.00000000 0.00000000 0.39700000 0.89100000 0.79300000 0.00000000 0.00000000 0.00000000 0.89700000 0.60900000 0.79300000 0.00000000 0.00000000 0.00000000 0.10300000 0.39100000 0.20700000 0.00000000 0.00000000 0.00000000 0.82600000 0.97400000 0.39500000 0.00000000 0.00000000 0.00000000 0.17400000 0.02600000 0.60500000 0.00000000 0.00000000 0.00000000 0.67400000 0.47400000 0.60500000 0.00000000 0.00000000 0.00000000 0.32600000 0.52600000 0.39500000 0.00000000 0.00000000 0.00000000 0.67400000 0.84200000 0.38500000 0.00000000 0.00000000 0.00000000 0.32600000 0.15800000 0.61500000 0.00000000 0.00000000 0.00000000 0.82600000 0.34200000 0.61500000 0.00000000 0.00000000 0.00000000 0.17400000 0.65800000 0.38500000 0.00000000 0.00000000 0.00000000 0.63800000 0.97500000 0.44000000 0.00000000 0.00000000 0.00000000 0.36200000 0.02500000 0.56000000 0.00000000 0.00000000 0.00000000 0.86200000 0.47500000 0.56000000 0.00000000 0.00000000 0.00000000 0.13800000 0.52500000 0.44000000 0.00000000 0.00000000 0.00000000
-
Dear Cenna,
It looks like you have set up the structure in units of Ångström instead of atomic (Bohr) units.
You can fix this by adding two lines, which will multiply the lattice vectors with the conversion factor:scale
1.8897Good luck,
Lars
-
Dear Lars,
Woah silly me. Thanks for the heads up Lars. The code is running, but now I am stuck again at not finding linearization energies.
Info(elk): current task : 2 Info(checkmt): reduced muffin-tin radius of species 1 (Cu) from 2.4000 to 2.2445 Info(checkmt): reduced muffin-tin radius of species 2 (Cl) from 2.2000 to 2.0575 Info(checkmt): reduced muffin-tin radius of species 3 (N) from 1.8000 to 0.4675 Info(checkmt): reduced muffin-tin radius of species 4 (C) from 1.8000 to 1.3116 Info(checkmt): reduced muffin-tin radius of species 5 (H) from 1.4000 to 0.2649 Info(geomopt): Atomic position optimisation step : 1 Warning(linengy): could not find 2 linearisation energies in s.c. loop 1
Sadly there aren't any other information on why this is. The code stops after iteration 1 and INFO.OUT is not giving a lot of information
I did use
gmaxvr 20 autokpt .true.
which based on the thread OP, is not improving much. let me try to run using 10x10x10 or 8x8x8 and see where this goes.
Best,
Cenna
Dear Cenna,
Try reading the terminal outputs of the calculation (e.g. .o .e files), check if the process exited with status "killed".
Failing after single iteration is often an indication of an insufficient memory.
I recommend manual specification of muffin-tin radii, in order for them not to be reduced automatically.
Finally, check the species for C and N. With radii that small, you might not need LOs, that is local orbitals with order 3 and variable linearization energy (details can be found in earlier posts here, try searching for linengy warnings).
Best regards.
Andrew
https://sourceforge.net/p/elk/discussion/897820/thread/2bd644ee/
0 Comments