# lyapchol

Solves continuous-time Lyapunov equation using a square-root solver.

## Syntax

R = lyapchol(A, B)

X = lyapchol(A, B, E)

## Inputs

A
Real square matrix.
B
A real matrix.
E
Real square matrix.

R, X
A real matrix.

## Examples

A = [  -1          -1           2           2;
37         -10          -4           2;
-12           0           7           7;
-12           4          -6          -9 ];

B = [   1           0.1          -1           1          -1;
2.5           1        -2.5         2.5        -2.5;
1           0.1          -1           4          -4;
3.5           1        -1.5        -5.5         3.5 ];

U1 = lyapchol (A, B)
U1 = [Matrix] 4 x 4
0.99935  3.02310   1.97208  -0.96401
0.00000  0.97121  -0.98498   0.97361
0.00000  0.00000   0.97572  -2.05182
0.00000  0.00000   0.00000   0.88653

A = [-1           0          -4;
3           5           4;
-4          -2           1 ];
B = [2.0;-1.0;7.0];
E = [2           2           4;
1           0           5;
3           1           1];
U2 = lyapchol(A, B, E)
U2 = [Matrix] 3 x 3
1.60025  -0.44180  -0.15230
0.00000   0.67950  -0.24992
0.00000   0.00000   0.20413

## Comments

R = lyapchol(A, B) calculates a Cholesky factorization.

Lyapunov matrix equation:
• AU'U + U'UA' = -BB'
Generalized Lyapunov equation:
• AU'UE' + EU'UA' = -BB'

Based on SLICOT library functions SB03OD and SG03BD.