balreal

Computes a Gramian balanced realization of an LTI model.

Syntax

[sysR, G, T, TI] = balreal(SYS)

Inputs

SYS
A state-space or transfer function model.

Outputs

sysR
A state-space or transfer function model.
G
The diagonal vector of the balanced Gramian matrix.
T
The state similarity transform matrix.
TI
The state similarity transform inverse matrix.

Examples

Transfer function model as an input:
sys_tf = tf([1],[1 5 6]);
[sysR,g,T,Ti] = balreal(sys_tf)

sysR = object [
Scaled: 0
TimeUnit: seconds
ts: 0
a: [Matrix] 2 x 2 
-0.71429 -1.71429
1.71429 -4.28571
b: [Matrix] 2 x 1
0.37796
-0.37796
c: [Matrix] 1 x 2
0.37796 0.37796
d: 0
e: [Matrix] 0 x 0
type: StateSpaceModel
]
g = [Matrix] 2 x 1
0.10000
0.01667
T = [Matrix] 2 x 2 
0.75593 2.26779
-0.75593 0.37796 
Ti = [Matrix] 2 x 2
0.18898 -1.13389
0.37796 0.37796
State-space model as an input:

A = [-10     0     0     0     0;
      0    -2     0     0     0;
      0     0    -30     0     0;
      0     0     0    -4     0;
      0     0     0     0    -50];

B = [9.593    8.407;
     5.472    2.543;
     1.386    8.143;
     1.493    2.435;
     2.575    9.293];

C = [1.3500    1.1966    1.2511    1.6160    1.4733];

D = [0 1];

Sys1 = ss(A, B, C, D);
[SysR, g, T, Ti] = balreal(Sys1)
SysR = object [
Scaled: 0
TimeUnit: seconds
ts: 0
a: [Matrix] 5 x 5 
-5.39875 6.74403 -4.01886 -0.95050 -0.72669
5.68053 -17.45928 16.11510 4.30148 3.32031
-2.66244 14.84407 -28.32974 -11.94818 -9.90222
0.19712 1.03910 -4.54460 -5.80082 -9.03928
-0.72332 3.06315 -7.27610 1.72517 -39.01140
b: [Matrix] 5 x 2
4.04750 3.93894
-1.20829 -3.79737
-0.05853 2.13943
-0.41052 0.27913
0.24580 0.29025
c: [Matrix] 1 x 5
5.64778 -3.98496 2.14023 0.49643 0.38034
d:[Matrix] 1 x 2
0 1
e: [Matrix] 0 x 0
type: StateSpaceModel
]
g = [Matrix] 5 x 1
2.95415
0.45477
0.08084
0.02124
0.00185
T = [Matrix] 5 x 5 
0.15729 0.33547 0.06320 0.32911 0.04816
-0.19161 0.23181 -0.16413 -0.01502 -0.15096
-0.12062 0.1142 0.15493 -0.22602 0.23154
-0.08874 -0.02920 -0.03644 0.32284 0.06564
0.00082 -0.01119 -0.19294 0.05476 0.18826
Ti = [Matrix] 5 x 5
1.48074 -1.67837 -1.56242 -2.88553 1.20318
1.65882 1.40707 0.75621 -1.12430 0.16593
0.32144 -1.17097 1.41542 1.14499 -3.16126
0.53952 -0.25587 -0.53864 2.23663 -0.46058
0.26459 -1.03468 1.65901 0.46858 2.21058

Comments

[SYSR, G, T, TI] = balreal(SYS) balances the LTI system 'SYS'. The observability and controllability diagonal Grammians of sysR are identical.

G is the diagonal vector of the controllability and observability Grammians.

T is the transformation matrix.

TI is the inverse of T.

Note that the system SYS must be stable.