The choice of the state elements in a state space models is not unique. In one way it is, because a certain elements are needed to describe the dynamics of the system. But these elements can be scaled to different units, and even combined in different ways.
It can be helpful to make "linear combinations"
of the state elements
Going from one combination of basic elements to another like this is called a "base transformation". We will show the mechanism here.
As a simple, almost trivial example of a base transformation,
suppose we have a state vector
x ≡ ( x, y, z ) where the elements
are positions in feet. We wish to transform these positions
to meters. To distinguish the two states,
we will call the new state vector
For every element, we need the scaling from feet to meters. For the first one we have :
| χ ≡ 0.3048 . x | (1) |
We can transform the whole state in one go, if we define a diagonal matrix N as follows :
| (2) |
The transformation from the old state vector to the new one becomes :
| χ • = N . x | (3) |
We use this to rewrite the original state space equation to the new base. The first step is :
| χ • = N . x • = N . ( A . x + B . u ) | (4) |
This still uses x, but we can transform that to χ by the trick of inserting a unit matrix made by pre-multiplying the matrix N by its inverse, i.e. by inserting   I = N -1. N :
| χ • = N . A . N -1 . N . x + N . B . u | (5) |
Using (****) to transform x to χ, we have :
| χ • = ( N . A . N -1 ) . χ + N . B . u | (6) |
The state matrix for the base χ has changed by a pre- and postmultiplication to become :
| A′ ≡ N . A . N -1 | (7) |
If N is a simple scaling, then this derivation is considerable overkill. Suppose the matrix A was a diagonal matrix with values of -a on the diagonal, and 0 everywhere else. This means that for every state element we have :
| x • = − a . x | (8) |
This is the equation for a uniform damping field, with a decay time of 1/ a on every axis. This matrix has three identical eigenvalues, each − a.
In this case both N and A are diagonal matrices, and their products are diagonals as well. The net result is that every diagonal element is pre-multiplied by 0.3048 and post-multiplied by 1 / 0.3048. This yields :
| χ • = − a . χ | (9) |
In other words, the matrix is unchanged. It still says that the x, y and z are reduced at a rate of − a per second, whether the elements are measured in meters or in feet. The matrix still has the same three eigenvalues of − a and by the way, this will hold for any transformation N, regardless whether N and N−1 are diagonal or not.
But if N is not diagonal, things do get more interesting on the eigenvector front.
The transformation matrix N can easily be adapted to not only scale the elements, but to swap them, or to add and subtract them. Any transformation is allowed, as long as it is linear.
We will find that it is particularly useful to rewrite the state in terms of its eigenvectors. This is instructive, and it turns the system matrix into a diagonal one.
Matlab conventions. Eigenvalues ( VE, E ), VE( #element, #eigenvalue), check that VE( :, 3:6) are the column eigenvectors for the eigenvalues 3:6. Eigenvalues are ordered ****. Eingevectors are normalzized to ****. The *** element is aligned with the real axis, and the whole thing can be scaled and rotated (==scaled with a unit imaginary number) at will.
In imaginary pairs, choose the eigenvalues with positive imaginary part. They rotate left (anti-clockwise) with time, because of iωt.
The accompanying eigenvector can have elements with positive and negative imaginary parts. They don't have absolute phase anyway, only relative phase difference between the elements.