Causal filter

The word causal indicates that the filter output depends only on past and present inputs.

A filter whose output also depends on future inputs is non-causal, whereas a filter whose output depends only on future inputs is anti-causal.

In effect that means the output sample that best represents the input at time

A common design practice for digital filters is to create a realizable filter by shortening and/or time-shifting a non-causal impulse response.

If shortening is necessary, it is often accomplished as the product of the impulse-response with a window function.

The following definition is a sliding or moving average of input data

, then a moving average defined that way is non-causal (also called non-realizable), because

Any linear filter (such as a moving average) can be characterized by a function h(t) called its impulse response.

On the other hand, g(t) is Hermitian and, consequently, its Fourier transform G(ω) is real-valued.

We now have the following relation where Θ(t) is the Heaviside unit step function.

Each component of the causal filter output begins when its stimulus begins. The outputs of the non-causal filter begin before the stimulus begins.