Equation from stability analysis
The Lyapunov equation, named after the Russian mathematician Aleksandr Lyapunov, is a matrix equation used in the stability analysis of linear dynamical systems.[1][2]
In particular, the discrete-time Lyapunov equation (also known as Stein equation) for
is
![{\displaystyle AXA^{H}-X+Q=0}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f3ccb4896d8bdb89fe5eb666eb4747af4695a5c9)
where
is a Hermitian matrix and
is the conjugate transpose of
, while the continuous-time Lyapunov equation is
.
Application to stability
[edit]
In the following theorems
, and
and
are symmetric. The notation
means that the matrix
is positive definite.
Theorem (continuous time version). Given any
, there exists a unique
satisfying
if and only if the linear system
is globally asymptotically stable. The quadratic function
is a Lyapunov function that can be used to verify stability.
Theorem (discrete time version). Given any
, there exists a unique
satisfying
if and only if the linear system
is globally asymptotically stable. As before,
is a Lyapunov function.
Computational aspects of solution
[edit]
The Lyapunov equation is linear; therefore, if
contains
entries, the equation can be solved in
time using standard matrix factorization methods.
However, specialized algorithms are available which can yield solutions much quicker owing to the specific structure of the Lyapunov equation. For the discrete case, the Schur method of Kitagawa is often used.[3] For the continuous Lyapunov equation the Bartels–Stewart algorithm can be used.[4]
Defining the vectorization operator
as stacking the columns of a matrix
and
as the Kronecker product of
and
, the continuous time and discrete time Lyapunov equations can be expressed as solutions of a matrix equation. Furthermore, if the matrix
is "stable", the solution can also be expressed as an integral (continuous time case) or as an infinite sum (discrete time case).
Using the result that
, one has
![{\displaystyle (I_{n^{2}}-{\bar {A}}\otimes A)\operatorname {vec} (X)=\operatorname {vec} (Q)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/cc0ec1572dd2b662ea8fe7a10ad698172b08d6e1)
where
is a conformable identity matrix and
is the element-wise complex conjugate of
.[5] One may then solve for
by inverting or solving the linear equations. To get
, one must just reshape
appropriately.
Moreover, if
is stable (in the sense of Schur stability, i.e., having eigenvalues with magnitude less than 1), the solution
can also be written as
.
For comparison, consider the one-dimensional case, where this just says that the solution of
is
.
Using again the Kronecker product notation and the vectorization operator, one has the matrix equation
![{\displaystyle (I_{n}\otimes A+{\bar {A}}\otimes I_{n})\operatorname {vec} X=-\operatorname {vec} Q,}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7023d7ba3e36433fe177ef52dd5b871c5e5f724b)
where
denotes the matrix obtained by complex conjugating the entries of
.
Similar to the discrete-time case, if
is stable (in the sense of Hurwitz stability, i.e., having eigenvalues with negative real parts), the solution
can also be written as
,
which holds because
![{\displaystyle {\begin{aligned}AX+XA^{H}=&\int _{0}^{\infty }A{e}^{A\tau }Q\mathrm {e} ^{A^{H}\tau }+{e}^{A\tau }Q\mathrm {e} ^{A^{H}\tau }A^{H}d\tau \\=&\int _{0}^{\infty }{\frac {d}{d\tau }}{e}^{A\tau }Q\mathrm {e} ^{A^{H}\tau }d\tau \\=&{e}^{A\tau }Q\mathrm {e} ^{A^{H}\tau }{\bigg |}_{0}^{\infty }\\=&-Q.\end{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/9289270749d51429af11586acdeb881f3d66575b)
For comparison, consider the one-dimensional case, where this just says that the solution of
is
.
Relationship Between Discrete and Continuous Lyapunov Equations
[edit]
We start with the continuous-time linear dynamics:
.
And then discretize it as follows:
![{\displaystyle {\dot {\mathbf {x} }}\approx {\frac {\mathbf {x} _{t+1}-\mathbf {x} _{t}}{\delta }}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8f97c09757d1620103f849573016c71c0961bc93)
Where
indicates a small forward displacement in time. Substituting the bottom equation into the top and shuffling terms around, we get a discrete-time equation for
.
Where we've defined
. Now we can use the discrete time Lyapunov equation for
:
Plugging in our definition for
, we get:
Expanding this expression out yields:
Recall that
is a small displacement in time. Letting
go to zero brings us closer and closer to having continuous dynamics—and in the limit we achieve them. It stands to reason that we should also recover the continuous-time Lyapunov equations in the limit as well. Dividing through by
on both sides, and then letting
we find that:
which is the continuous-time Lyapunov equation, as desired.