# ctrbf

Compute controllability staircase form

## Syntax

```[Abar,Bbar,Cbar,T,k] = ctrbf(A,B,C) ctrbf(A,B,C,tol) ```

## Description

If the controllability matrix of (A, B) has rank rn, where n is the size of A, then there exists a similarity transformation such that

`$\begin{array}{ccc}\overline{A}=TA{T}^{T},& \overline{B}=TB,& \overline{C}=C{T}^{T}\end{array}$`

where T is unitary, and the transformed system has a staircase form, in which the uncontrollable modes, if there are any, are in the upper left corner.

`$\begin{array}{ccc}\overline{A}=\left[\begin{array}{cc}{A}_{uc}& 0\\ {A}_{21}& {A}_{c}\end{array}\right],& \overline{B}=\left[\begin{array}{l}0\\ {B}_{c}\end{array}\right],& \overline{C}=\left[{C}_{nc}{C}_{c}\right]\end{array}$`

where (Ac, Bc) is controllable, all eigenvalues of Auc are uncontrollable, and ${C}_{c}{\left(sI-{A}_{c}\right)}^{-1}{B}_{c}=C{\left(sI-A\right)}^{-1}B$.

`[Abar,Bbar,Cbar,T,k] = ctrbf(A,B,C)` decomposes the state-space system represented by `A`, `B`, and `C` into the controllability staircase form, `Abar`, `Bbar`, and `Cbar`, described above. `T` is the similarity transformation matrix and `k` is a vector of length n, where n is the order of the system represented by `A`. Each entry of `k` represents the number of controllable states factored out during each step of the transformation matrix calculation. The number of nonzero elements in `k` indicates how many iterations were necessary to calculate `T`, and `sum(k)` is the number of states in Ac, the controllable portion of `Abar`.

`ctrbf(A,B,C,tol)` uses the tolerance `tol` when calculating the controllable/uncontrollable subspaces. When the tolerance is not specified, it defaults to `10*n*norm(A,1)*eps`.

## Examples

Compute the controllability staircase form for

```A = 1 1 4 -2 B = 1 -1 1 -1 C = 1 0 0 1 ```

and locate the uncontrollable mode.

```[Abar,Bbar,Cbar,T,k]=ctrbf(A,B,C) Abar = -3.0000 0 -3.0000 2.0000 Bbar = 0.0000 0.0000 1.4142 -1.4142 Cbar = -0.7071 0.7071 0.7071 0.7071 T = -0.7071 0.7071 0.7071 0.7071 k = 1 0 ```

The decomposed system `Abar` shows an uncontrollable mode located at -3 and a controllable mode located at 2.

## Algorithms

`ctrbf` implements the Staircase Algorithm of .

## References

 Rosenbrock, M.M., State-Space and Multivariable Theory, John Wiley, 1970.

## Version History

Introduced before R2006a