A consequence of using dynamic starting points is what we define as starting point 'drift'. As the starting points for the lattice energy minimisations are updated at each T M F evaluation, the starting point may drift over time and eventually may no longer reside in the immediate proximity of the reference structure geometry. To ensure that the final T M F value being evaluated is congruent with problem (PE), it is important that following termination of E04USA, the T M F is re-evaluated using the original reference structure geometries as starting points (B2 in Figure ). That is, if E04USA terminates after k major iterations, a (k + 1) th T M F evaluation is conducted starting from the reference geometries. If the NAG algorithm converges to a local minimum and the T M F is unchanged upon its re-evaluation, it can be inferred that any effects of starting point drift are minor and an optimum to problem (PE) has been found. CrystalEstimator will accept this as the final set of parameter estimates (B3 in Figure ). In large optimisation problems, it is possible for either the E04USA algorithm to be unsuccessful in converging to a local minimum and/or the T M F changes significantly upon re-evaluation. In this case, another iteration of T M F optimisation is undertaken, where in the m th iteration, the vector of parameter values is initialised at the set of parameter estimates obtained in the (m -1) th optimisation ( p[0] m = p * m-1 ) (B1 in Figure ). However, prior to this, three additional termination criteria are evaluated (B4 to B6 in Figure ). Firstly, if the re-evaluated T M F value in the m th and (m -1) th optimisation attempt decreases, but by an insufficient value, CrystalEstimator terminates and accepts the parameter estimates determined in the m th iteration. It is likely that the solution surface is relatively 'flat' near the optimum parameter values hence any additional attempts to re-optimise the T M F will yield little improvement. Secondly, if the re-evaluated T M F value increases in the m th iteration compared to the (m -1) th attempt, CrystalEstimator terminates and accepts the parameter estimates determined in the (m -1) th iteration. This again indicates that the parameter estimates are close to the true optimum and we sensibly choose the best available solution. Although these criteria do not resolve the failure of E04USA to converge to an optimum, it must be stressed that the objective of (PE) is to minimise the