Discrete-Time Convolution Demo

Disclaimer: This was built with the help of ClaudeAI as an educational tool for Foundations of Digital Signal Processing

Discrete-Time Convolution Demo

(f ★ g)[n] = Σk f[k] · g[n − k]

−10−50+5+10
f[k]
g[n − k] (flipped & shifted)
f[k] & g[n−k] overlaid — highlighted samples contribute to (f★g)[n]
(f ★ g)[n] — output so far (current n marked)
Sum of products at current n: 0 → (f★g)[n] = 0
f[k] g[n−k] contributing products (f★g)[n] current n

Drag the slider to change n. g[n−k] is the time-reversed, shifted version of g[k]. Orange stems show where both signals are nonzero — their products sum to give (f★g)[n].