  An efficient algorithm for time propagation of the time-dependent Kohn-Sham
equations is presented. The algorithm is based on dividing the Hamiltonian into
small time steps and assuming that it is constant over these steps. This allows
for the time-propagating Kohn-Sham wave function to be expanded in the
instantaneous eigenstates of the Hamiltonian. The stability and efficiency of
the algorithm are tested not just for non-magnetic but also for fully
non-collinear magnetic systems. We show that even for delicate properties, like
magnetization density, large time-step sizes can be used indicating the
stability and efficiency of the algorithm.
