Finite Basis Set Corrections

As previously indicated in section 2.2.3, finite basis set corrections in variable call calculations are applied by default to reduce the effect of Pulay stress. With a plane wave basis set, Pulay forces can be shown to vanish and hence in calculations which do not calculate stress, such as NVE or NVT calculations, these corrections are off by default. The correction to the energy will be constant throughout the MD run, and so is ignored.

If however, `calculate_stress`

is set to true in a fixed cell ensemble, the
finite basis set corrections will be turned back on by default. It is possible
to override this behavior using the parameter `finite_basis_corr`

, e.g.

finite_basis_corr = none

To turn off the correction completely. Alternatively:

finite_basis_corr = manual

This sets the behavior of the correction to manual. In this case we are required to specify the derivative

required for the correction using the command:

basis_de_loge = -0.365550 eV

Finally we can set the behavior to automatic.

finite_basis_corr = auto

Note that this does not mean the decision on whether or not to perform
a correction is automatic. In this case the correction will be performed
regardless of ensemble or the `calculate_stress`

keyword. The calculation
of `basis_de_loge`

will be performed automatically by calculating the
total energy at a series of cut-off energies. The default is to use
3 cut-off energies at a spacing of 5 eV. This can be overridden using e.g.

finite_basis_npoints = 5 finite_basis_spacing = 2 eV

CASTEP will return an error if two or more of the cut-off energies are sufficiently close together that they lead to the same number of plane waves for the given cell.