  We present a new method to model spin-wave excitations in magnetic solids,
based on the Liouville-Lanczos approach to time-dependent density functional
perturbation theory. This method avoids computationally expensive sums over
empty states and naturally deals with the coupling between spin and charge
fluctuations, without ever explicitly computing charge-density
susceptibilities. Spin-wave excitations are obtained with one Lanczos chain per
magnon wave-number and polarization, avoiding the solution of the
linear-response problem for every individual value of frequency, as other
state-of-the-art approaches do. Our method is validated by computing magnon
dispersions in bulk Fe and Ni, resulting in agreement with previous theoretical
studies in both cases, and with experiment in the case of Fe. The disagreement
in the case of Ni is also comparable with that of previous computations.
