本文转自:
http://theory.cm.utexas.edu/forum/viewtopic.php?f=2&t=470&p=1497&hilit=velocity+neb#p1497
For a hard to converge paths I would pre-converge using quick-min (QM) as opposed to FIRE. FIRE tends to be more aggressive and will sometimes blow past a minimum into a separate basin.
You should always use LCLIMB = .TRUE.
- unless for some reason you really don’t want to know the saddle exactly (all method tend to converge better because the path in essence gets pinned at the saddle and the two sides are decoupled making convergence faster)
To pre-converge in a conservative fashion use QM
IOPT=3
TIMESTEP = 0.01 (but can go as low as 0.001 for really high initial forces)
MAXMOVE = 0.2 (you could also control radical change by lowering this but I find it more effective to control the TIMESTEP)
I typically take the view that if an optimizer need to be restricted with maxmove the optimizer/parameters is not well suited for the minimization.
If you path is highly curved in xyz space (ie. rotation around a bond) it would be better to start with a reasonable guess for the saddle oppose to the default linear interpolation. (Note: NEB converges to saddle closest to the initial path not always the lowest saddle)
Once a path seems to be in a reasonable local minima the time step for QM can be increased to speed the optimization. Or you may switch to a more aggressive optimizer like LBFGS
I consider the default parameters for this to be pretty conservative
LBFGS is typically the fastest optimizer but it can have issues/instabilities with tangential movement.
LBFGS optimizer (IOPT=1)
MAXMOVE = 0.2 Maximum allowed step size for translation
ILBFGSMEM = 20 Number of steps saved when building the inverse Hessian matrix
LGLOBAL = .TRUE. Optimize the NEB globally instead of image-by-image
INVCURV = 0.01 Initial inverse curvature, used to construct the inverse Hessian matrix
I typically use a more aggressive INVCURV = 0.05 (should not be used with strong bonds like Oxygen-Oxygen)
Again I feel the best way to control this optimizer is to adjust INVCURV but MAXMOVE can be lowered to 0.05, any lower than that and you might as well return to using QM
I cannot recommended using the line based version of this optimizer (CG would be a better choice if you want to do fd steps and calculate curvatures )
*LLINEOPT = .FALSE. Use a force based line minimizer for translation
*FDSTEP = 5E-3 Finite difference step size for line optimizer
LBFGS biggest instability comes from tangential movements where the NEB is trying to become evenly spaced. The GLOBAL option fixed most of these issues however they can creep back in for a path with many images.
The NEB method works best for 3-8 interior images.
本文探讨了使用快速最小化(QM)预收敛而非FIRE方法,以更保守的方式达到路径收敛,尤其是在高度弯曲的路径中。建议使用LCLIMB=.TRUE.以精确找到鞍点,并介绍了如何调整QM和LBFGS优化器参数以加速优化过程。
1633

被折叠的 条评论
为什么被折叠?



