Real-time correction of repeatable runout for multiple harmonic
frequencies is provided by using convolution of a position error signal,
or similar real-time signal, with an impulse response of a specific
transfer function, such as the inverse of the disturbance transfer
function. Multiple harmonic frequencies can be followed substantially
simultaneously to achieve small position error and good tracking
misregistration (TMR) performance. The impulse response can be obtained,
calculated and stored off-line. The impulse response can be configured to
substantially eliminate correction of one or more frequency or frequency
ranges. Convolution can be done relatively quickly with proper
arrangement of memory.