Hi all,
I'm working with some people that are using VASP while I am using CP2K. While CP2K has really fast SCF procedure, it seems to be slower when it comes to geometry optimization for some reason.
I've dug into VASP's manual and they claim that their CG method uses "a modified version of Brent's algorithm." No further details are given. Normally with CP2K, I use 2PNT line search with my CG minimizations, and I think this is pretty standard for everyone else. I do know that CP2K supports FIT and GOLD line search options which use Brent's algorithm (actually I don't 100% know how FIT and Brent's Algorithm are related, but gold uses it at least). However, GOLD line search is very slow in CP2K, as we are warned in the manual.
So, my hunch, is that CP2K with some type of gold or fit line search would be able to match this "modified Brent's algorithm" and provide faster minimization than what I am currently getting. Are there some insights that people can provide for choosing settings for gold line search that can give decent results? To remind, the flags we have to play with are:
BRACK_LIMIT {Real}
Limit in 1D bracketing during line search in Conjugate Gradients Optimization.
Default value: 1.00000000E+002
BRENT_MAX_ITER {Integer}
Maximum number of iterations in brent algorithm (used for the line search in Conjugated Gradients Optimization)
Default value: 100
BRENT_TOL {Real}
Tolerance requested during Brent line search in Conjugate Gradients Optimization.
Default value: 1.00000000E-002
INITIAL_STEP {Real}
Initial step size used, e.g. for bracketing or minimizers. Might need to be reduced for systems with close contacts
Default value: 2.00000000E-001
Could it be that VASP uses a loose value for BRENT_TOL, or maybe a small number of max steps? Furthermore, what is the tolerance in the algorithm? Tolerance for the atomic position refinement, or forces?
If anyone has any ideas, it would be much appreciated.
-Nick