Multirate algorithm for updating the coefficients the station online dating game
Compared to the straight-forward implementation of interpolation by upsampling the signal by stuffing it with L-1 zeros , then filtering it, you save memory by a factor of (L-1)/L.
However, this adding-and-summing processing has no effect when the data sample is zero–which we know in advance will be the case for L-1 out of each L input samples of a FIR interpolation filter. The net result is that to interpolate by a factor of L, you calculate L outputs for each input using L different “sub-filters” derived from your original filter.A simple way to think of the amount of computation required to implement a FIR interpolator is that it is equal to the computation required for a non-interpolating N-tap filter operating at the input rate.In effect, you have to calculate L filters using N/L taps each, so that’s N total taps calculated per input.The greatest speedup (by a factor of 5 in certain cases) is obtained for a linear diffusion with relatively small diffusion coefficient.
Diffusion speed and block size are found to be major factors affecting the performance of this algorithm.
Diffusion problems arise in many branches of science and engineering.