Discrete convolution slides a flipped copy of the kernel g across the input f, multiplying overlapping samples and summing the products at every shift t:
(f∗g)[n] = Σ f[k]·g[n−k]
The animation runs that sum sample by sample: the orange kernel lane shows g already flipped and positioned at the current shift, the shaded bars are the per-sample products being summed, and the green output lane fills in one new point per step. Drag anywhere on the canvas to scrub the sweep to any shift instantly — the output curve is recomputed for the exact position under the pointer.
- Box — every sample in the window weighted equally (moving average); can ring on edges.
- Gaussian — centre-weighted, tapering smoothly; the standard photo/video blur kernel.
- Exponential — one-sided, decaying; produces the echo/reverb tail of an RC circuit or delay effect.
- Triangle — linear ramp up then down; the overlap of two box averages, used for smoother interpolation than a box.