PeriodicMatrixEquations.jl

DocBuild Code on Github.

PeriodicMatrixEquations.jl is a collection of Julia functions for the solution of several categories of periodic differential/difference equations. The implementation of solvers relies on the periodic matrix objects defined within the PeriodicMatrices package. The available functions cover both continuous-time and discrete-time settings, by solving, respectively, periodic differential and difference Lyapunov and Riccati equations with real periodic matrices. The available solvers rely on efficient structure preserving methods using the periodic Schur decomposition of a product of matrices. The solutions of periodic differential equations are determined as single- or multiple-point periodic generators, which allow the efficient computation of the solutions at arbitrary time values by integrating the appropriate differential equations. Akternatively, interpolation with cubic splines can be used to determine the solution at arbitrary time values.

The current version of the package includes the following functions:

Solving periodic Lyapunov equations

  • pclyap Solution of periodic Lyapunov differential equations.
  • prclyap Solution of reverse-time periodic Lyapunov differential equations.
  • pfclyap Solution of forward-time periodic Lyapunov differential equations.
  • pgclyap Computation of periodic generators for periodic Lyapunov differential equations.
  • pdlyap Solution of periodic discrete-time Lyapunov equations.
  • pdlyap2 Solution of a pair of periodic discrete-time Lyapunov equations.
  • prdlyap Solution of reverse-time periodic discrete-time Lyapunov equations.
  • pfdlyap Solution of forward-time periodic discrete-time Lyapunov equations.
  • pcplyap Solution of positve periodic Lyapunov differential equations.
  • prcplyap Solution of positve reverse-time periodic Lyapunov differential equations.
  • pfcplyap Solution of positve forward-time periodic Lyapunov differential equations.
  • pdplyap Solution of positve periodic discrete-time Lyapunov equations.
  • prdplyap Solution of positve reverse-time periodic discrete-time Lyapunov equations.
  • pfdplyap Solution of positve forward-time periodic discrete-time Lyapunov equations.

Solving periodic Riccati equations

  • pcric Solution of periodic Riccati differential equations.
  • prcric Solution of control-related reverse-time periodic Riccati differential equation.
  • pfcric Solution of filtering-related forward-time periodic Riccati differential equation.
  • pgcric Computation of periodic generators for periodic Riccati differential equations.
  • prdric Solution of control-related reverse-time periodic Riccati difference equation.
  • pfdric Solution of filtering-related forward-time periodic Riccati difference equation.

Release Notes

Main developer

Andreas Varga

License: MIT (expat)

References

[1] A. Varga. On solving periodic differential matrix equations with applications to periodic system norms computation. Proc. IEEE CDC/ECC, Seville, 2005.

[2] A. Varga. Periodic Lyapunov equations: some applications and new algorithms. Int. J. Control, vol, 67, pp, 69-87, 1997.

[3] A. Varga. On solving periodic Riccati equations. Numerical Linear Algebra with Applications, 15:809-835, 2008.