This repository contains python implementation of rational Krylov methods (ALR, KPIK, RKSM) for obtaining approximation of solution of continuous-time Lyapunov equation. The main computational costs for all methods are linear system solutions, so algebraic multigrid techniques can be applyed for methods acceleration instead of scipy direct solver.
KPIK method is described in the paper V. Simoncini, A new iterative method for solving large-scale Lyapunov matrix equations
RKSM method is described in the paper V. Druskin, C. Lieberman, M. Zaslavsky, adaptive choice of shifts in rational Krylov subspace reduction of evolutionary problems
The Python code for KPIK and RKMS is based on the publicly available MATLAB implementation http://www.dm.unibo.it/~simoncin/software.html
ALR method is described in paper
@article{kolesnikov2014low,
title={From low-rank approximation to an efficient rational Krylov subspace method for the Lyapunov equation},
author={Kolesnikov, D. A. and Oseledets, I. V.},
journal={arXiv preprint arXiv:1410.3335},
year={2014}
}
will be available soon.
You need only numpy and scipy to run example, since there are pure python functions. For algebraic multigrid usage PyAMG library is required.
Current implementation was succesfully tested with numpy 1.9.2, scipy 0.15.1 and ipython-notebook 3.1.0 for Python 2.7.9
Main Contributor Denis Kolesnikov d4kolesnikov@yandex.ru