Predicting System Behavior
Predicting system behavior is the goal of analyzing signals and systems. We want to be able to predict how a system will behave in the long term with any input. Specifically, analyzing discrete-time linear time invariant systems (LTI systems) is an important application of this method due to its usefulness in areas such as circuitry and modern system design. So, in this wiki, we will focus on LTI systems and predicting their behavior.
Systems can be described for a finite input in simple terms. The long term behavior of the output can either be increasing or decreasing, and it can have a constant sign or an alternating sign. For example, a system whose output is decreasing over time with an alternating sign would have a graphical representation that looks like this:
This graph could represent a spring on the floor, achored at some point. If you pull out the spring to the right of where it is anchored (the positive direction) and letting go, it will respond by moving back the left of its anchor (the negative direction). However, it will lose some of its momentum, and as it continues to osciilate around its anchor, it will travel less distance each time. Eventually, it will come to a halt at the anchor.
Delay
Recall from the wiki on linear time invariant systems, that all systems can be described by a system function, that is a polynomial in \(\mathcal{R}^n\) space. For example, a system that adds the input to the signal from the previous time step would have the equation
\[Y = X + \mathcal{R}X .\]
This is the same as the difference equation:
\[y[n] = x[n] + y[n-1] .\]
In both cases, the real meaning of delay is needed to have any hope of predicting what the systems will do. In this course of study it is generally assumed that all systems start at rest, or that all input and output values of the system before time 0 are equal to 0. This is how this system behaves going forward, given the unit impulse function as the input signal:
\[y[0] = x[0] + y[-1] = 1 + 0 = 1 ,\] \[y[1] = x[1] + y[0] = 0 + 1 = 1 ,\] \[y[2] = x[2] + y[1] = 0 + 1 = 1 .\]
This trend continues, and the value of this system, is always 1, from now until the end of time. That's a bit surprising given that only a small jump start was given to this system. This system is persistent because there is an infinite number of non-zero samples in the output. A transient system would have a finite number of non-zero samples in the output.
The operator equation, \(Y = X + \mathcal{R}X\), can be rewritten as
\[Y = \frac{1}{1 - \mathcal{R}}X .\]
This is a very important equation, because it will come up all the time when dealing with delays. A better way of describing this is needed, and comparing it to a feedforward system helps. Consider the following two geometric series
\[S = 1 + x+ x^2 + x^3 + ... \] \[Sx = x + x^2 + x^3 + x^ 4 + ... \]
If we subtract the first equation from the second, we get
\[S - Sx = S(1 - x) = 1 ,\]
and
\[S = \frac{1}{1 - x} = 1 + x + x^2 + x^3 + ... .\]
This same method can be applied to a system, \(O\), where
\[O = 1 + \mathcal{R} + \mathcal{R}^2 + ... .\]
which leaves
\[\frac{1}{1 - \mathcal{R}} = 1 + \mathcal{R} + \mathcal{R}^2 + ... \]
Try to imagine the block diagram that describes system \(O\). Try drawing it on a piece of paper before looking at the answer.
\(O\) is an interesting system that has an infinite number of feedforward paths. Each subsequent feedforward path has one additional delay (with the first path having no delay). There is an adder right before the output for all paths. It looks something like this
First Order Systems
First order systems are simple systems that provide an easier introduction to predicting system behavior. A first order system is a system that has a system function that only exists in \(\mathcal{R}^n\) space when \(n = 1\). That is, it only involves \(\mathcal{R}\) terms, not \(\mathcal{R}^2\) or higher terms.
You may be wondering about zero order systems. What's another name for zero order systems?
A zero order system might also be called a feedforward system because there is zero delay. These systems are simple to understand because for any signal with a finite number of non-zero samples, it will produce an output with a finite number of non-zero samples.
To get an idea of how we might predict first order system, let's look at a simple block diagram.
Once you find the corresponding system function for this block diagram, we can use the transformation we found above to make the system function
\[\frac{Y}{X} = 1 + c\mathcal{R} + c^2\mathcal{R}^2 + ... \]
So, the output signal is a sum of the scaled and delayed input signal. Say \(c\) equals 1.5. Then,
\[\frac{Y}{X} = 1 + 1.5\mathcal{R} + 2.25\mathcal{R} + ...\]
In other words, the system grows more and more as time goes on (because \(1.5^n\) grows as \(n\) grows). In fact, the systems can all be described by poles, the base of the geometric sequence. In that example the pole was 1.5. The value of the pole describes how the system will behave over time.
The value of the pole determines the behavior of the system.
Value of Pole, \(p_0\) Behavior of System (mode) \(p_0 \lt -1 \) The output increases to \(\infty\) and the sign alternates \( -1 \lt p_0 \lt 0\) The output magnitude decreases towards 0 and the sign alternates \(0 \lt p_0 \lt 1 \) The output magnitude decreases towards 0 monotonically \(1 \lt p_0 \) The output increases to \(\infty\) monotonically
These behaviors are called modes. For a fixed pole, there is only one mode for a first order system. However, more complex systems can display more than one mode.
Second Order Systems
Second Order Systems have system functions whose denominator is second order (meaning it has both \(\mathcal{R}\) and \(\mathcal{R}^2\) values). A useful tool for understanding second order systems is decomposing them into collections of first order systems. Remember that we can do that because LTI systems have the important property that combinations of LTI systems are themselves LTI systems.
Take the following second order LTI system.
This system can be represented by the following system function
\[\frac{Y}{X} = H = \frac{1}{1 -.2\mathcal{R} -.24\mathcal{R}^2} .\]
There's a few ways we can break this system down into first order systems
Un-Cascade it
We can think about this system as a cascade of two first order system. The cascade of two systems is putting one system after the other. The output from the first system becomes the input to the next system. The goal here is to find \(H_1\) and \(H_2\) such that \(H_1H_2 = H\). So we need to factor the denominator of our previous system function.
\[H = \frac{1}{(1 - .6\mathcal{R})(1 + .4\mathcal{R})} .\]
So, now we have \(H_1 = \frac{1}{(1 - .6\mathcal{R})}\) and \(H_2 = \frac{1}{(1 + .4\mathcal{R})}\). In other words, it's two systems, one with pole .6 and one with pole -.4. The new system diagram looks like this
Additive Decomposition
We can also decompose the second order system into the sum of two first order systems. Note that summing two systems is not the same as cascading them. The goal here is to find \(H_1\) and \(H_2\) such that \(H_1 + H_2 = H\). This process uses partial fraction decomposition.
So, we have our factored system function \(H = \frac{1}{(1 - .6\mathcal{R})(1 + .4\mathcal{R})}\), and to perform the decomposition we have
\[H = \frac{A}{(1 - .6\mathcal{R})} + \frac{B}{(1 + .4\mathcal{R})} .\]
We need to solve for \(A\) and \(B\).
\[\frac{1}{(1 - .6\mathcal{R})(1 + .4\mathcal{R})} = \frac{A}{(1 - .6\mathcal{R})} + \frac{1}{(1 + .4\mathcal{R})} ,\] \[1 = A(1 + .4\mathcal{R}) + B(1 - .6\mathcal{R}) ,\] \[1 = (A + B) + (.4A - .6B)\mathcal{R} ,\]
Now we need to equate terms on each side of the equation that have equal powers of \(\mathcal{R}\), so
\[1 = A + B ,\] \[0 = .4A - .6B ,\]
Substituting gives
\[B = .4 ,\] \[A = .6 .\]
Which means we now have \(H = H_1 + H_2\) where
\[H_1 = \frac{.6}{(1 - .6\mathcal{R})} ,\] \[H_2 = \frac{.4}{(1 + .4\mathcal{R})} .\]
This block diagram is a little trickier to figure out. But its a feedforward system with two feedback subsystems. The terms that are in the numerator of each subsystem \(H_1\) and \(H_2\) appear as gains after the feedback.
This system, unlike first order systems, has two poles. So, predicting its behavior is not as straightforward. On the one hand, the top system has .6 as its pole, and the bottom system has -.4 as its pole. They both cause the system to decrease its output magnitude over time, but should the sign alternate or stay monotonic?
The dominant pole dictates what the system does over time.
For any \(n\) order system, the dominant pole is the pole with the largest magnitude.
So, for our system, the dominant pole is .6. This system will monotonically decrease its output magnitude.
Complex Poles
In the previous section, we evaluated a system that could be factored into real numbers. What happens when that's not possible?
Imagine a system function that looks like this
\[H = \frac{2 + 2\mathcal{R}}{1 + 2\mathcal{R} + 4\mathcal{R}^2} .\]
Factoring the denominator gives us
\[H = \frac{2 + 2\mathcal{R}}{(1 - (-1 + \sqrt{-3})\mathcal{R})(1 - (-1 - \sqrt{-3})\mathcal{R})} .\]
We have complex poles. The poles are \(-1 + 1.732j\) and \(-1 - 1.732j\). This is not an uncommon occurence. Difference equations can describe systems in the real world without having any complex terms in them. However, they can still have complex poles. For example, the difference equation that describes this equation is
\[y[n] = 2x[n] + 2x[n-1] - 2y[n-1] - 4y[n-1] .\]
To work with these complex numbers, we transform them into polar coordinates. So, \(a + bj\) becomes \(re^{j\Omega}\), where
\[a = r\cos\Omega ,\] \[b = r\sin\Omega .\]
The magnitude, \(r\), is \(sqrt{a^2 + b^2}\), and the angle, \(\Omega\), is \(\tan^{-1}(b, a)\).
Complex poles produce complex modes. So, while a real pole might give us
\[\frac{1}{1 - p\mathcal{R}} = 1 + p\mathcal{R} + p^2\mathcal{R}^2 + ... ,\]
a complex pole will give us
\[\frac{1}{1 - re^{j\Omega}} = 1 + r^2e^{j\Omega}\mathcal{R} + r^3e^{j\Omega}\mathcal{R}^2 + ... .\]
What's going on here as \(n\) tends towards infinity? If you think about \(p^n\) as a point in the complex plane, it's easier to visualize. As time goes on, the radius of that point will changes, due to \(r^n\) increasing or decreasing. The angle, \(\Omega\), will change, but it won't affect the radius magnitude, it will just rotate it around the origin of the plane. So, every \(p^n\), it will be rotated by \(\Omega\). We call the period of this signal \(\frac{2\pi}{\Omega}\) because that's the number of samples it takes to completes one full circle.
Because complex number always come in conjugate pairs, their imaginary parts always cancel each other out. This allows us to figure out a difference equation that has real numbers, so we can understand the system. Consider a system with poles \(re^{j\Omega}\) and \(re^{i\Omega}\), so that
\[H = \frac{1}{(1 - re^{j\Omega)}(1 - re^{-j\Omega})} .\]
Multiplying out the denominator, we get
\[1 - r(e^{j\Omega} + e^{-j\Omega})\mathcal{R} + r^2e^{j\Omega - j\Omega}\mathcal{R}^2 .\]
Remembering that \(e^{jx} = j\sin(n) + \cos(x)\),
\[= 1 - r(\cos\Omega + j\sin\Omega + \cos(-\Omega) + j\sin(-\Omega))\mathcal{R} + r^2\mathcal{R}^2 ,\]
and because \(\sin(-x) = -\sin(x)\) and \(\cos(-x) = \cos(x)\),
\[= 1 - 2r\cos\Omega\mathcal{R} + r^2\mathcal{R}^2 .\]
The complex portions canceled each other out because \(\sin(-x) = -\sin(x)\). This is great because now we can write a difference equation that helps us understand how this system behaves.
\[y[n] = x[n] + 2r\cos\Omega y[n-1] - r^2y[n-2] .\]
But how can we understand how our system will behave? For a difference equation \(y[n] = r^n(\cos n\Omega + \alpha\sin n\Omega)\), we know the system cannot be smaller than \(-\sqrt{1 + \alpha^2}\) or greater than \(\sqrt{1 + \alpha^2}\). These are the bounds of our output signal. \(r\) provides an important clue as well. \(r\) dictates how fast the system will decrease. Finally, \(\Omega\) will dictate the oscillation frequency between the bounds.
In the following graphic, The red and green lines are the bounds of the system. \(r\) dictates how fast the system is decaying, and \(\Omega\) dictates the period of oscillation \(\frac{2\pi}{\Omega}\).
References
- Bj, R. 6.01 Spring 2016. Retrieved June 21, 2016, from http://sicp-s4.mit.edu/6.01/spring16/reference/notes/sigsys