I am stydying control systems, and I am trying to understand better the topic of causality.

I know that a system is causal if the actual state depends only on the past states and on the present state, so I can represent a causal system for example as:


And also I could represent a transfer function of a causal system as for example:


which has as step response:

enter image description here

which is not related to the previous example in state space, but I wrote this just as an example.

Now, I would like to understand better the behavior of a non-causal system. As far as I know, a non-causal system is not realizable, since it is a system in which the actual state depends on the future states, and this is impossible.

But I can't understand well this concept of non causality. For example what is an example of transfer function of a non causal system and its step response or frequency response?

  • \$\begingroup\$ If the current output depends on one or more future inputs, the system is non-causal. For example, a simple three-point moving average of a data set, where the complete data set is known a-priori, may be defined: \$y[k]=\frac{1}{3}\left( x[k-1]+x[k]+x[k+1]\right)\$, where \$x[k]\$ are the input data, and \$y[k]\$ are the output data. \$\endgroup\$ – Chu Feb 15 '20 at 11:15

You can make a non-causal system that 'predicts into the future by T seconds' causal, and thus realisable, by adding a delay of at least T seconds.

There are cases where it makes sense to think about non-causal filters, because other things being equal, you can usually design a 'better' non-causal filter than a causal one.

One case is in audio reconstruction filtering. It's trivial to make an exactly linear phase filter with a symmetric impulse response. It's difficult, and then only an approximation, to get linear phase with a causal filter. As the time delay required is small, and so not an issue for music reproduction, the digital signal processing chain invariably uses delayed non-causal filters. This becomes more interesting when low latency is required, for instance filtering in a hearing aid.

Another case is for acoustic geophysical prospecting, analysing sound reflections to determine rock strata. The data is available as recordings, so there is no need to limit oneself to causal filters.

  • 2
    \$\begingroup\$ ..And I guess by extension you can make a causal system into a non-causal system like what the OP is asking for, by adding a delay of at least -T seconds. \$\endgroup\$ – Vinzent Feb 15 '20 at 10:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.