Tutorial: NEB calculations

This page is under construction...

The Nudged Elastic Band method is tool both for finding the minimum energy path and the saddlepoint connecting two minima. While very popular in the solid-state and surface DFT community it has not seen as much use in the molecular chemistry community. The main advantage of the method is that only gradients are required (unlike transit-guided quasi-Newton, STQN), like in regular optimizations or surface scans (no exact Hessian required) but unlike surface scans, the method converges to the minimum energy path (MEP) and allows convenient saddle-point optimization in the same job. Surface scans are also strongly biased towards the choice of the reaction coordinate and can often end up far from the MEP, while NEB has no such bias (there is a small bias towards the initial interpolated path). The NEB method is designed to converge to the minimum energy path, though in practice, convergence to the saddlepoint (and partial convergence to the MPE) is often more convenient and usually sufficient.

In ORCA 4.1 a new efficient implementation of the method has been implemented as described in a forthcoming paper by Ásgeirsson et al.

Below is a tutorial with multiple examples on using the NEB method in ORCA.

General usage

Three different types of NEB jobs can be run: regular NEB, climbing-image NEB (NEB-CI) and climbing-image NEB + saddlepoint-minimization (NEB-TS).

One of these keywords should be specified in the simple-input line. Additionally the geometry of the reactant is specified in the usual place (here as an XYZ file) and then the geometry of the product should be specified in the %neb block.

NEB job

If the NEB keyword is used, the elastic band is minimized until it converges to the minimum energy path. This type of job is the original NEB method. While it converges to the minimum-energy path, converging all images to a low threshold is a very hard minimization of many degrees of freedom. Another disadvantage is that this results in only a crude estimate of the saddle-point (highest energy image).

Convergence tolerances for all images are by default: Max(|F|): 5.00E-4 Eh/Bohr and RMS(F): 2.00E-4 Eh/Bohr.

! NEB
%neb
NEB_End_XYZFile "prod.xyz"
Nimages 6
end
*xyzfile -1 1 react.xyz

NEB-CI job:

If the NEB-CI keyword is used instead, the climbing-image variant of NEB is used. Here only an approximate minimum energy path is achieved (higher convergence thresholds on the images by default) but the calculation converts (after threshold max(|Fp|)=2.00E-2 Eh/Bohr is reached) one image into a "climbing" image that converges to the saddlepoint (with low convergence threshold). This is usually much more efficient than converging the full minimum energy path.

Convergence tolerances for regular images are by default: Max(|Fp|): 5.00E-2 Eh/Bohr and RMS(Fp): 2.50E-2 Eh/Bohr.

Convergence tolerances for climbing image ("saddle-point") are by default: Max(|F|): 5.00E-4 Eh/Bohr and RMS(F): 2.50E-4 Eh/Bohr.

Note that the thresholds for this job can also be lowered so that an accurate minimum energy path with an optimized saddlepoint is achieved. Usually only the saddlepoint is of main interest though.

! NEB-CI
%neb
NEB_End_XYZFile "prod.xyz"
Nimages 6
end
*xyzfile -1 1 react.xyz

NEB-TS job

If the NEB-TS keyword is used instead, a CI-NEB job is carried out but with high convergence threshold on regular images, medium convergence threshold for CI. Once the NEB-CI part converges (with those higher thresholds), the climbing image with an approximate Hessian is fed into an OptTS job.

Convergence tolerances for regular images are by default: Max(|Fp|): 1.00E-1 Eh/Bohr and RMS(Fp): 5.00E-2 Eh/Bohr.

Convergence tolerances for climbing image are by default: Max(|F|): 1.00E-3 Eh/Bohr and RMS(F): 5.00E-4 Eh/Bohr.

Convergence tolerances for saddle-point (OptTS part) are by default: Max(|F|): 3.00E-4 Eh/Bohr and RMS(F): 1.00E-4 Eh/Bohr.

! NEB-TS
%neb
NEB_End_XYZFile "prod.xyz"
Nimages 6
end
*xyzfile -1 1 react.xyz

Parallelization

Todo

Options in the NEB block

Some of the options that the user may wish to modify are mentioned here. A complete list of options can be seen in the ORCA manual.

The current main default settings for the NEB block are:

6 images, LBFGS optimizer, frozen endpoints, springconstant of 0.1 Eh/Bohr^2, spring force perp. to path: tan, IDPP initial path, maxiter 1000, step-size 1.0 Bohr, LBFGS-memory 7.

Visualization of results

XYZ trajectory files

Script to visualize the MEP as a function of iteration: neb_visualize

Example 1: Hydride Transfer from GaP surface to surface-bound pyridine

Example 2: