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.
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 = 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
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.