Determining Causal/Non-Causal System in Discrete Signals

  • Thread starter LM741
  • Start date
In summary, determining if a system is causal, memoryless, or time invariant involves looking at the relationship between the output and the input signals. A system is causal if the output only depends on past and present input signals, and a system is memoryless if the output does not depend on any past input signals. Time invariance refers to the system's response being the same regardless of when it is applied. These concepts can be applied to more complex systems by making the output the subject of the formula and evaluating it based on present and past inputs.
  • #1
LM741
130
0
hey guys.

anybody know how to tall if a system is causal, memoryless, time invariant...

a system like this for example: y[k+1] + 2y[k] = x[k+1] + x[k]
this is causal (according to my notes) but i can't see why because here we are advancing in time! System is causal if output depends only on past and present input signal!

i know how to determine a simple system like
y(t) = x(t-5)

just not sure how to handle a more comple system like that above?

also: 2y[k+1] + y[k] = 2kx[k] + x[k-1] +3

so confused!

thanks

working with discrete signals by the way...
 
Engineering news on Phys.org
  • #2
LM741 said:
hey guys.

anybody know how to tall if a system is causal, memoryless, time invariant...

a system like this for example: y[k+1] + 2y[k] = x[k+1] + x[k]
this is causal (according to my notes) but i can't see why because here we are advancing in time! System is causal if output depends only on past and present input signal!

i know how to determine a simple system like
y(t) = x(t-5)

just not sure how to handle a more comple system like that above?

also: 2y[k+1] + y[k] = 2kx[k] + x[k-1] +3

so confused!

thanks

working with discrete signals by the way...
If you make a variable change k+1 = j in the first example, you have:
y[j] + 2y[j-1] = x[j] + x[j-1], which depends only on present and past inputs.
In the second example you have only present and past inputs. You have a prediction of the value of the output, but there is no problem here.
A non causal system would be for instannce:
y[k] - y[k-1] = x[k+1] + kx[k]
This system is noncausal, since the value of the ouput at present depends on the value of the input in the future.
 
  • #3
SGT>>thanks..just one more thing

SGT>> thanks very very much! appreciate it---just not entirely sure what you mean with the second example...
2y[k+1] + y[k] = 2kx[k] + x[k-1] +3

do i look at all the input terms and all the output terms separately?

is a 'past value' a delay in time? like x[k-1]?

looking at it from a graphic point of view how do you view this as a past value?
i know x[k-1] is a shift to the right (by one unit) - but how do you visualize that to be a past value? always had trouble grasping this concept...
The way i look at it is: you sampling from the left of the graph (as time passes you move along to the right) now applying x[k-1] will cause the entire graph to shift to the right by one unit thus it is one unit further away from you thus it has been delayed. how is this a past value because you haven't got to it yet - it is still in the future? really weird hey? sorry I am getting really confused here.
is this right or is my perception distorted ? :-)
would really appreciate any feedback

thanks
john
 
  • #4
Drat. Judging by the title, I thought this thread was going to be about business attire...:biggrin:
 
  • #5
LM741 said:
SGT>> thanks very very much! appreciate it---just not entirely sure what you mean with the second example...
2y[k+1] + y[k] = 2kx[k] + x[k-1] +3

do i look at all the input terms and all the output terms separately?

is a 'past value' a delay in time? like x[k-1]?

looking at it from a graphic point of view how do you view this as a past value?
i know x[k-1] is a shift to the right (by one unit) - but how do you visualize that to be a past value? always had trouble grasping this concept...
The way i look at it is: you sampling from the left of the graph (as time passes you move along to the right) now applying x[k-1] will cause the entire graph to shift to the right by one unit thus it is one unit further away from you thus it has been delayed. how is this a past value because you haven't got to it yet - it is still in the future? really weird hey? sorry I am getting really confused here.
is this right or is my perception distorted ? :-)
would really appreciate any feedback

thanks
john
If your sampling period is T and [tex]t_k[/tex] is yor actual instant, [tex]t_{k-1} = t_k - T[/tex], or one sample period in the past, while [tex]t_{k+1} = t_k + T[/tex] or one sample period in the future.
x[k] is a short notation for [tex]x[t_k][/tex], so x[k-1] and x[k+1] are respectively the values of the variable x one sample period in the past and in the future.
 
  • #6
SGT>>thanks a alot! appreciate it

one LAST thing:
2y[k+1] + y[k] = 2kx[k] + x[k-1] +3

isn't this system causal??
because the value of my output at present (i.e. y[k]) is equal to past and present values of my input (i.e. x[k] and x[k-1]) ...just not sure how to handle the output at a futre value (y[k+1]) and the constant term 3?
is it non casual because ofthe y[k+1]?
is there any systematic approach to solving such a system? like making y[k] the subject of the formula and then evaluating it?

thanks so much for your time!
John
 
  • #7
You are absolutely right, make y[present] the subject of the formula.

For
2y[k+1] + y[k] = 2kx[k] + x[k-1] +3

perform a change of index with n = k+1 so that
2y[n] + y[n-1] = 2kx[n-1] + x[n-2] +3

and then you'd clearly see that the present output y[n] depends on the previous inputs, x[n-1] and x[n-2], and also a previous output y[n-1].
 
  • #8
so i first change the index and then make y[n] the subject of the formula?

so the system is causal...right?

thanks doodle!
 
  • #9
LM741 said:
so i first change the index and then make y[n] the subject of the formula?

so the system is causal...right?

thanks doodle!
You don´t really have to change the variable. You can work the system in prediction mode and estimate the future output based on the present output and on present and past inputs.
The fact that you use prediction does not make the system noncausal.
Think, for instance of the movement of a particle with constant velocity.
The position x at instant k+1 depends on it´s position and velocity at instant k:
x[k+1] = x[k] + T.v[k], or x[k+1] - x[k] = T.v[k].
If the velocity is not constant, and you don´t know the acceleration, you can use the average velocity at the previous time interval:
[tex]v_{avrg}=\frac{v[k] + v[k-1]}{2}[/tex], so
x[k+1] - x[k] = T.v[k]/2 + T.v[k-1]/2
 
  • #10
thanks sgt. the system 2y[k+1] + y[k] = 2kx[k] + x[k-1] +3
is causal then? it has to be !?
thanks
 
  • #11
LM741 said:
thanks sgt. the system 2y[k+1] + y[k] = 2kx[k] + x[k-1] +3
is causal then? it has to be !?
thanks
You have understood. It is causal and is predictive.
 
  • #12
thanx...SGT
 
  • #13
...And a thank you to SGT from me ! ;)
 

FAQ: Determining Causal/Non-Causal System in Discrete Signals

What is a causal system in discrete signals?

A causal system in discrete signals is a system where the output at any given time depends only on the current and past inputs, and not on future inputs.

How do you determine if a system is causal or non-causal?

To determine if a system is causal or non-causal, we need to look at the time domain representation of the system. If the system has a finite impulse response (FIR), it is causal. If the system has an infinite impulse response (IIR), it is non-causal.

What is the difference between a causal and a non-causal system?

The main difference between a causal and a non-causal system is the way they process input signals. A causal system only depends on past and current inputs, while a non-causal system also depends on future inputs.

Can a system be both causal and non-causal?

No, a system cannot be both causal and non-causal. The two are mutually exclusive and the type of system is determined by the nature of the impulse response.

Why is it important to determine if a system is causal or non-causal?

Determining if a system is causal or non-causal is important because it affects the stability and predictability of the system. Causal systems are easier to analyze and predict, while non-causal systems can be more complex and unpredictable.

Similar threads

Back
Top