Page 1 of 1

LBFGS optimizer II: what did i do is wrong...

Posted: Sun Dec 05, 2010 6:45 pm
by kai
I put this post as a follow up of my initial one; but it appears to deserve a separate one itself. Sorry about the redundancy .

I did a comparable clibming NEB calculation using both LBFGS and Quasi Newton calculation with 9 images. All images have already been pre-converged to 0.1 ev/Angtrom level (using quasi newton) before these two calculations started, aiming at a force at 0.05 ev/angstrom.

My question lies at the fact how to use LBGFGS? I could use quasi netown but not LBFGS to converge the neb to 0.05 ev/ang.

One extra point even puzzled me more is the fact that quasi newton is giving image 4 as saddle point (as expected, this is the saddle point in the precoverged calculaltion) while LBGFGS is pushing image 3 to saddle point. Is that the reason why quasi works better? In pre-converging thoese images to 0.1 ev/ang, i also used the climibing giving saddle point at image 4.

The Quasi Newton works nicely and converged within ~ 586 ionic steps, giving:

0 0.00000000 -725.25933600 0.00000000
1 0.04798400 -725.16043800 0.09889800
2 0.03496300 -725.16043500 0.09890100
3 0.01429300 -725.17901700 0.08031900
4 0.01258700 -724.99759100 0.26174500
5 0.01369900 -726.53056900 -1.27123300
6 0.02620400 -726.76467100 -1.50533500
7 0.04924000 -726.94720400 -1.68786800
8 0.02405400 -727.13057500 -1.87123900
9 0.03171200 -727.18864600 -1.92931000
10 0.00000000 -727.24304000 -1.98370400

while LBFGS couldnt converged the system before hiting the wall time

0 0.00000000 -725.25933600 0.00000000
1 0.26148300 -725.12632800 0.13300800
2 0.59448300 -725.17887300 0.08046300
3 1.19119300 -724.94696500 0.31237100
4 0.52011200 -726.34235700 -1.08302100
5 0.20903200 -726.68181200 -1.42247600
6 0.54717400 -726.88811300 -1.62877700
7 0.29292300 -727.09436800 -1.83503200
8 0.11763400 -727.20357900 -1.94424300
9 0.44389100 -727.18227700 -1.92294100
10 0.00000000 -727.24304000 -1.98370400

My INCAR files for LBGFGS is as follows:

IALGO = 48
MAXMIX = 50

LREAL = A
NSIM = 4

ISPIN = 1

NSW = 999
IBRION = 3
NFREE = 2
POTIM = 0 #0 is to use Austin LBFGS NEB optimizer, check with NEB setting section
EDIFFG = -0.05 # try 0.1 first, then 0.05, then 0.02
ISMEAR = 0 # recommended for semiconductor
SIGMA = 0.05 # recommended for semiconductor

#electronic convergence
EDIFF = 1E-4
#NELMIN = 5
NELM = 100
NELMIN = 4
ENCUT = 450

!AMIX = 0.1 #set amix
!BMIX = 0.0001 #almost zero in initial mixer


NGX=106
NGY=106
NGZ=138

#NEB switched
IMAGES = 9 ! number of images, exclude initial and final states
SPRING = -5
LCLIMB=.TRUE. # True is the default switch on the climbing image method to locate the exact saddle point
IOPT = 1 # optimize globably, rather than image by image basis

Re: LBFGS optimizer II: what did i do is wrong...

Posted: Sun Dec 05, 2010 6:48 pm
by kai
I restarted my LBFGS calculation form the preconverged calculation again, using ediff=1e-5

the results are even worse when hitting the wall time

Forces and Energy:
0 0.00000000 -725.25933600 0.00000000
1 0.46813500 -724.96625800 0.29307800
2 1.80882300 -721.90748700 3.35184900
3 1.79383400 -724.37976200 0.87957400
4 0.90702400 -726.29239000 -1.03305400
5 0.50594800 -726.72260800 -1.46327200
6 0.60679400 -726.84383100 -1.58449500
7 1.41075200 -726.93154100 -1.67220500
8 0.27594000 -727.07450400 -1.81516800
9 0.95125700 -727.09651200 -1.83717600
10 0.00000000 -727.24304000 -1.98370400

Re: LBFGS optimizer II: what did i do is wrong...

Posted: Fri Dec 24, 2010 5:42 am
by kai
could this be an incurv problem?

[quote="kai"]I restarted my LBFGS calculation form the preconverged calculation again, using ediff=1e-5

the results are even worse when hitting the wall time

Forces and Energy:
0 0.00000000 -725.25933600 0.00000000
1 0.46813500 -724.96625800 0.29307800
2 1.80882300 -721.90748700 3.35184900
3 1.79383400 -724.37976200 0.87957400
4 0.90702400 -726.29239000 -1.03305400
5 0.50594800 -726.72260800 -1.46327200
6 0.60679400 -726.84383100 -1.58449500
7 1.41075200 -726.93154100 -1.67220500
8 0.27594000 -727.07450400 -1.81516800
9 0.95125700 -727.09651200 -1.83717600
10 0.00000000 -727.24304000 -1.98370400[/quote]

Re: LBFGS optimizer II: what did i do is wrong...

Posted: Fri Feb 04, 2011 4:50 am
by kai
i guess i figured it out; this is due to the process i am calculating involves two barriers with similar heights; the strategy is to break them apart. also the maxmove in the default is a bit too large for me; i need to lower it down to 0.02 (default 0.2)