In a variety of applications it is desirable to analyze a complicated system around some steady state condition. Although these real life systems can often not readily be studied by including all of their dynamics, we can create a simplified models, often linear time invariant systems which can give us some real insight into understanding not only how the system behaves but how we might control it. Throughout this wiki we will refer to the problem of linearizing a magnetic levitation system. This nonlinear system uses the current running around wires over an iron core to induce a magnetic field that suspends a magnetic ball in the air.
Suppose we have written or looked up the dynamics of a system we would like to study. Using perhaps Newton's laws or Maxwell's equations, we've written down a set of differential equations that describe how the system evolves in time:
where represents an -dimensional vector of states and represents an -dimensional vector of inputs. For example, the following equations describe a simplified description of the magnetic levitation system:
where is the distance of the ball from the wires and magnet, is its mass, is the current through the wires, is the gravitational constant, and is a constant based on our winding and iron core. Thus is our state and is our control input. Notice that to arrive at this equation we have simply used Newton's laws , noting that the force down due to gravity is and the force upwards due to the induced magnetic field is (approximately) .
Implicit of this discussion of linearization so far is that the system we are considering is stable (the output is not blowing up) and that we are considering only small deviations from nominal. That is, we are linearizing about an operating point or trajectory where the system is in a steady state. An operating point mathematically mean that:
The system is not evolving in time; it is at a stable equilibrium. Returning to our example, suppose we want to study the system around the point . Then we can solve for the nominal current needed to maintain that position:
where we choose the positive square root and obtain as our operating point.
Due to the square term of the current, this system is obviously nonlinear. How do we obtain a system that is a good approximation in the neighborhood of our equilibirum? Note the neighborhood is intentionally vague; there are system models that are only slightly nonlinear and the approximation will be good for most operating conditions and some where the approximated system is only valid for extremely small deviations for the nominal operating point.
In any case, the most common way to linearize the system is to employ a Taylor series approximation. In the general case of mulitple states and multiple outputs, we have
With our example, we have
where the means that the partial derivative is evaluated at our equilibrium (operating point). Evaluating the term, we have
Evaluating the term, we have
This is not quite how most people linearize a system however. Because we are looking at deviations from nominal, we define
so that we have a model
where and are constant (or possibly time varying) matrices.
Thus our system may be written as
Those who may have seen state space representations of linear systems may recognize that this is in a very familiar form (after dividing everything by m),
As mentioned above, we usually consider deviations from nominal and then perhaps drop the symbol keeping in mind the original definition of the variables.
We can now extend our above derivation to more general formulas. We form the Jacobian matrices and
This is simply rewriting the partial derivatives method above into matrices. Note that the nomenclature for the matrices and is motivated by the standard representation of linear time invariant systems.
Example Question 1