FACTOID # 18: Alaska spends more money per capita on elementary and secondary education than any other state.

 Home Encyclopedia Statistics States A-Z Flags Maps FAQ About

 WHAT'S NEW

SEARCH ALL

Search encyclopedia, statistics and forums:

(* = Graphable)

Encyclopedia > Causal filter

In signal processing, a causal filter is one whose output depends only on past and present inputs. A filter whose output also depends on future inputs is non-causal. Filters that operate in real time are causal. In effect that means the output sample that best represents the input at time $t,$ comes out slightly later. A common design practice 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. Signal processing is the processing, amplification and interpretation of signals and deals with the analysis and manipulation of signals. ... A causal system is a system that depends only on the current and previous inputs. ... In electronics and signal processing, a filter is a device or process that modifies a signal. ... It has been suggested that Real-time computing be merged into this article or section. ... In signal processing, a window function (or apodization function) is a function that is zero-valued outside of some chosen interval. ...

### Example

The following definition is a moving (or "sliding") average of input data $s(x),$. A constant factor of 1/2 is omitted for simplicity:

$f(x) = int_{x-1}^{x+1} s(tau), dtau = int_{-1}^{+1} s(x + tau) ,dtau,$

where x could represent a spatial coordinate, as in image processing. But if $x,$ represents time $(t),$, then a moving average defined that way is non-causal (also called non-realizable), because $f(t),$ depends on future inputs, such as $s(t+1),$. A realizable output is

$f(t-1) = int_{-2}^{0} s(t + tau), dtau = int_{0}^{+2} s(t - tau) , dtau,$

which is a delayed version of the non-realizable output.

Any linear filter (such as a moving average) can be characterized by a function h(t) called its impulse response. Its output is the convolution In the language of mathematics, the impulse response of a linear transformation is the image of Diracs delta function under the transformation. ... For the computer science usage see convolution (computer science) . In mathematics and in particular, functional analysis, convolution is a mathematical operator which takes two functions f and g and produces a third function that in a sense represents the amount of overlap between f and a reversed and translated version...

$f(t) = (h*s)(t) = int_{-infty}^{infty} h(tau) s(t - tau), dtau. ,$

In those terms, causality requires

$f(t) = int_{0}^{infty} h(tau) s(t - tau), dtau$

and general equality of these two expressions requires h(t) = 0 for all t < 0.

## Characterization of causal filters in the frequency domain GA_googleFillSlot("encyclopedia_square");

Let h(t) be a causal filter with corresponding Fourier transform H(ω). Define the function

$g(t) = {h(t) + h^{*}(-t) over 2}$

which is non-causal. On the other hand, g(t) is Hermitian and, consequently, its Fourier transform G(ω) is real-valued. We now have the following relation

$h(t) = 2, operatorname{step}(t) cdot g(t),$

which means that the Fourier transforms of h(t) and g(t) are related as follows

$H(omega) = left(delta(omega) - {i over pi omega}right) * G(omega) = G(omega) - icdot widehat G(omega) ,$

where $widehat G(omega),$ is a Hilbert transform done in the frequency domain (rather than the time domain).

Share your thoughts, questions and commentary here