While using stock serial eigensolvers was invaluable while developing the code for the operator, a parallel solver is required. HSL-EA19 currently has no parallel version available. ARPACK does have a parallel version, but it is not one that can be used with the existing parallel distribution schemes in CASTEP. We chose to implement two algorithms, a state-by-state conjugate gradients solver and a block Davidson solver, with help from Phil Hasnip (University of York and member of the CASTEP Development Group).
Hutter's formulation assumes that the special k-point is used.6 This means that the real-space representation of the wavefunctions can always be real (as opposed to complex). CASTEP already has -point optimisations and we can take advantage of these also. Using a single k-point restricts our choice of existing parallel stategies to G-vector and bands. Our TDDFT code is currently based on the v4.4 release, which does not contain the bands-parallel code.