  A new method for calculating optical absorption spectra within linear-scaling
density-functional theory (LS-DFT) is presented, incorporating a scheme for
optimizing a set of localized orbitals to accurately represent unoccupied
Kohn-Sham states. Three different schemes are compared and the most promising
of these, based on the use of a projection operator, has been implemented in a
fully-functional LS-DFT code. The method has been applied to the calculation of
optical absorption spectra for the metal-free phthalocyanine molecule and the
conjugated polymer poly(para-phenylene). Excellent agreement with results from
a traditional DFT code is obtained.
