ControllableDecomposition

ControllableDecomposition[sys]

yields the controllable subsystem of the state-space model sys.

ControllableDecomposition[sys,{z1,}]

specifies the new state variables zi.

Details and Options

Examples

open allclose all

Basic Examples  (1)

Find the controllable subsystem and its transformation:

Scope  (4)

The controllable subsystem of a controllable system is the complete system:

The controllable subsystem of a partially controllable continuous-time system:

The controllable subsystem of a descriptor system:

The controllable subsystem of an affine system:

Specify the new state variables:

Applications  (7)

Linear Systems  (4)

Construct the Kalman controllable decomposition:

ControllableDecomposition picks out the controllable subsystem only:

Kalman controllable decomposition puts the controllable subsystem first and keeps the rest:

Compute the dimension of the controllable subspace:

The controllable subspace is the range of p, i.e. the column dimension:

Find the controllable subspace for the system below and explain the possible state trajectories that can occur in the system:

The system is uncontrollable, so only a subspace is controllable:

The range of the transformation matrix p gives the controllable subspace:

Trajectories can be controlled in this subspace:

But you cannot control the drift between parallel copies of the controllable subspace:

Design a controller for a system that is not completely controllable, by building a controller for the controllable subsystem:

Since a force applied only on the first mass , the second mass is not controllable:

Design a controller using the controllable subsystem:

Use the transformation to obtain the controller for the original system:

The simulation shows controlled as well as oscillatory modes in the closed-loop system:

Compute the modes of the closed-loop system:

The oscillatory modes are the uncontrollable ones:

Affine Systems  (3)

Construct the triangular controllability decomposition:

ControllableDecomposition picks out the controllable subsystem only:

Triangular controllability decomposition puts the controllable subsystem first and keeps the rest:

Compute the dimension of the controllable subspace:

The dimension can be obtained from the inverse transformation :

The controllable decomposition gives the reachable subspace and subsystem. This can be used to visualize the motion of the system from one subspace to another:

The generic reachable subspace:

A specific reachable subspace:

Select several initial points on this surface:

All these initial points end up at exactly the same final surface because that motion is not controllable:

A 3D plot shows the motion from the initial surface to the final one:

Properties & Relations  (2)

The transformation matrix p selects the controllable subsystem using StateSpaceTransform:

For affine systems, the transformation rules select the controllable subsystem:

Introduced in 2010
 (8.0)
 |
Updated in 2014
 (10.0)