Convergence of SCF cycle gets worse and worse

structure determination,...

Moderators: jzwanzig, jolafc

Convergence of SCF cycle gets worse and worse

Postby jhr0311 » Wed Jun 05, 2019 6:53 pm

Dear Abiniter,

I am calculating the adsorption of molecules on TiC (111) surface using norm-conserving pseudopotentials, and I find the convergence of SCF cycles is getting worse and worse during sturactural optimization. The 1st cycle needs about 50 steps, and the 2nd is about 70 steps. The steps needed are gradually increase and finally the SCF cycle cannot converge at the 5th cycle. If I redo the structural optimization using the strucutre obtained at the last 5th cycle, the similar tedency reapeats. It seems something accumulates gradually and finally fails the optimization. Does anyone know the reasons and can offer some suggestions? Thanks for your kind help!

Bests,
JHR
jhr0311
 
Posts: 3
Joined: Thu Apr 09, 2015 9:20 am

Re: Convergence of SCF cycle gets worse and worse

Postby pomax » Wed Jun 05, 2019 7:06 pm

Hi jhr0311,
What is the value of nband, tsmear and occopt used? I previously had problem with convergence because my nband was too low in a metallic structure.

Cordially, Olivier
pomax
 
Posts: 4
Joined: Wed Jun 05, 2019 5:40 pm

Re: Convergence of SCF cycle gets worse and worse

Postby jhr0311 » Thu Jun 06, 2019 6:40 am

pomax wrote:Hi jhr0311,
What is the value of nband, tsmear and occopt used? I previously had problem with convergence because my nband was too low in a metallic structure.

Cordially, Olivier


Hi Cordially Olivier,

Thanks for your reply and suggestions. I use occopt=7, tsmear=0.04 and defaulted nabnd. Attached is my input parameters. nband may be the critial point and I will increase it to test.

In fact, I have encountered convergence issue in Ti-based slab systems for a long time. I tried to change iprcel, npulayit, nline, occopt, tseamr, diemac and diemix under PAW, but no obvious enhancement was found (maybe I did not find the best value). Then I change to NCPP, the convergence in the first SCF cycles is obviously enhanced but things get worse and worse in the following cycles.

ionmov 2
optcell 0
tolmxf 6.0d-4
ntime 500

ngkpt 2 2 1
#ngkpt 4 4 1
nshiftk 1
shiftk 0.5 0.5 0.5

nstep 100
#diemac 12
diemix 0.1
ecut 34
toldff 4.0d-5

#pawecutdg 50
#pawovlp 20
iscf 2
occopt 7
tsmear 0.04
#iprcel 45
#npulayit 12
#nline 6

Thanks and regards,
JHR
jhr0311
 
Posts: 3
Joined: Thu Apr 09, 2015 9:20 am

Re: Convergence of SCF cycle gets worse and worse

Postby pomax » Thu Jun 06, 2019 4:06 pm

This is probably your problem. You will need to increase it when you're working on a metal. The default value is correct for most insulators. The pseudopotential you use will consider two types of electrons : core electron and valence electron. The core electron are considered stable while the valence electron can move and may be located in more than 1 band. If you look into your *.out file and search for zion, there'll be a line looking like this.
- Ti ONCVPSP-3.2.3.1 r_core= 1.35825 1.31050 1.66360
- 22.00000 12.00000 170504 znucl, zion, pspdat

zion is the number of valence electron per atom for your pseudopotential. You'll need to add the number of valence electron for each atoms of each element. For example, if you have Ti2C. You'll have 12*2 for Ti + 4*1 for C so 28 valence electron. This mean 14 (28/2) fully occupied band. But, the last bands may be partially occupied so you'll need to add about 10 bands, maybe more.

So, nband 24 should be a good parameter for Ti2C.
For TiC, nband 18 should be good.

Best regards
pomax
 
Posts: 4
Joined: Wed Jun 05, 2019 5:40 pm

Re: Convergence of SCF cycle gets worse and worse

Postby jhr0311 » Tue Jun 11, 2019 6:34 am

pomax wrote:This is probably your problem. You will need to increase it when you're working on a metal. The default value is correct for most insulators. The pseudopotential you use will consider two types of electrons : core electron and valence electron. The core electron are considered stable while the valence electron can move and may be located in more than 1 band. If you look into your *.out file and search for zion, there'll be a line looking like this.
- Ti ONCVPSP-3.2.3.1 r_core= 1.35825 1.31050 1.66360
- 22.00000 12.00000 170504 znucl, zion, pspdat

zion is the number of valence electron per atom for your pseudopotential. You'll need to add the number of valence electron for each atoms of each element. For example, if you have Ti2C. You'll have 12*2 for Ti + 4*1 for C so 28 valence electron. This mean 14 (28/2) fully occupied band. But, the last bands may be partially occupied so you'll need to add about 10 bands, maybe more.

So, nband 24 should be a good parameter for Ti2C.
For TiC, nband 18 should be good.

Best regards


Hi Cordially Olivier,

Thanks for your kind help, and I tested the cases with larger nband following your suggestions in the last few days. I tried different nabnd values under both NCPP and PAW, and coupled with different occopt (3, 4, 7) and tsmear (0.001-0.04) values. It seems the convergence in each SCF cycle becomes better, but the divergence still happens at the 3rd-5th cycle (diffor suddendly increases and never comes back, as seen the attachment). So I guess nband is not the origin of this issue, but it indeed helps the convergence. I am still trying other methods to address this issue, and I appreciate if other suggestions can be given.

-------
ETOT 70 -2193.5323657866 -1.041E-02 3.456E-05 1.108E+05 5.096E-04 5.441E-02
ETOT 71 -2193.5410212498 -8.655E-03 1.638E-05 1.056E+05 3.455E-04 5.438E-02
ETOT 72 -2193.5464934177 -5.472E-03 6.797E-06 1.023E+05 2.743E-04 5.439E-02
ETOT 73 -2193.5497392948 -3.246E-03 2.816E-06 1.004E+05 1.133E-04 5.438E-02
ETOT 74 -2193.5535336550 -3.794E-03 1.597E-06 9.804E+04 1.431E-04 5.438E-02
ETOT 75 -2193.5608171810 -7.284E-03 3.607E-06 9.351E+04 3.183E-04 5.438E-02
ETOT 76 -2193.5690532315 -8.236E-03 8.601E-06 8.831E+04 3.876E-04 5.439E-02
ETOT 77 -2193.5747961819 -5.743E-03 1.512E-05 8.468E+04 2.934E-04 5.438E-02
ETOT 78 -2193.5785840064 -3.788E-03 1.994E-05 8.231E+04 1.781E-04 5.440E-02
ETOT 79 -2193.5797805878 -1.197E-03 2.623E-05 8.170E+04 3.471E-04 5.451E-02
ETOT 80 -2190.1148388300 3.465E+00 4.779E+00 1.936E+04 2.203E-02 4.903E-02 #diffor suddenly increases
ETOT 81 -2193.4941938580 -3.379E+00 2.155E-02 8.472E+04 2.109E-02 5.428E-02
ETOT 82 -2193.5734030529 -7.921E-02 5.825E-04 8.315E+04 5.954E-03 5.486E-02
ETOT 83 -2191.7283470534 1.845E+00 8.154E+00 6.798E+04 1.710E-02 6.607E-02
ETOT 84 -2189.7363053717 1.992E+00 7.290E+00 2.822E+04 4.462E-02 6.828E-02
ETOT 85 -2193.5282038030 -3.792E+00 1.213E-02 8.391E+04 5.199E-02 4.820E-02
ETOT 86 -2192.4416870260 1.087E+00 9.908E-01 6.508E+04 1.591E-02 4.365E-02
ETOT 87 -2193.5625997076 -1.121E+00 9.771E-04 8.399E+04 1.834E-02 5.463E-02
ETOT 88 -2191.5398254819 2.023E+00 1.342E+00 5.243E+04 4.252E-02 9.716E-02
ETOT 89 -2193.5336889622 -1.994E+00 1.324E-02 8.470E+04 5.920E-02 4.338E-02
ETOT 90 -2189.3282789515 4.205E+00 1.194E+01 3.625E+04 1.146E-01 1.102E-01
ETOT 91 -2193.5270607888 -4.199E+00 3.948E-03 8.479E+04 1.133E-01 5.346E-02
---------

Thanks and regards,
JHR
jhr0311
 
Posts: 3
Joined: Thu Apr 09, 2015 9:20 am

Re: Convergence of SCF cycle gets worse and worse

Postby pomax » Fri Jun 14, 2019 8:58 pm

Hi jhr031,
I don't know exactly why the diffor is suddenly increasing.

First, you should do relaxation if you haven't done it yet on your structure.

If it doesn't solve it, it may be because you're trying to converge on a degenerate bands which cause instability. I would recommend increasing the number of bands substantially around 100 and use the variable nbdbuf at 10. This is the number of bands abinit will not try to converge. So, while the bands 90 to 100 would exist, they won't converge to cause instability.

I don't really like to adjust the following parameters because they slow considerably the simulation but aren't changing the physical properties of the structure. Neverthless, in some systems that are hard to converge, you will need to change them to get good convergence. In order of time increase, I would recommend
1. Increase npulayit to 15
2. Increase nnsclo to 2 or 3
3. Increase nline to 6

Cordially, Olivier
pomax
 
Posts: 4
Joined: Wed Jun 05, 2019 5:40 pm


Return to Input file

Who is online

Users browsing this forum: Google [Bot] and 5 guests