Valeria Simoncini
Available software
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
EVEN_IRA
This Matlab code is available
here
Related article:
Volker Mehrmann , Christian Schroeder and V. Simoncini
An Implicitly-restarted Krylov Method for Real Symmetric/Skew-Symmetric Eigenproblems
Linear Algebra and Appl., 436 (10), (2012), pp. 4070-4087.
KPIK
This Matlab code approximately solves a large-scale Lyapunov matrix equation by means
of the
Extended Krylov method with Galerkin condition. Version 1.0. Download
kpik.m
Here is an example of how to call the function kpik.m. Download
example_kpik.m
The code does not include any checking of the input data.
Related article:
V. Simoncini,
A new iterative method for solving large-scale Lyapunov matrix equations
SIAM J. Scient. Computing, v.29, n.3 (2007), pp. 1268-1288.
KPIK_SYLV
This Matlab code approximately solves a large-scale Sylvester matrix equation by means
of the
Extended Krylov method with Galerkin condition. Version 1.0. Download
kpik_sylv.m
Here is an example of how to call the function kpik_sylv.m. Download
example_kpik_sylv.m
The code does not include any checking of the input data.
Deflated version to be included.
Related article:
T. Breiten , V. Simoncini and M. Stoll
Fast iterative solvers for fractional differential equations
pp.1-32, January 2014. To appear in ETNA.
RKSM for Lyapunov equations
This Matlab code approximately solves a large-scale Lyapunov matrix equation by means
of the
adaptive Rational Krylov method with Galerkin condition.
Version 1.0, June 2014.
Download rksm.m
Here is an example of how to call the function rksm.m. Download
example_rksm.m
The code does not include any checking of the input data.
Version 2.0. All-real-basis version (real basis also with complex shifts), Aug 2019. Thanks
to Gerhard Kirsten, PhD Student @UniBO.
Download RKSM_Lyap_real.m
Here is an example of how to call the function RKSM_Lyap_real.m. Download
example_lyap_real.m
The code does not include any checking of the input data.
Related article:
V. Druskin and V. Simoncini,
Adaptive rational Krylov subspaces for large-scale dynamical systems
Systems & Control Letters, 60 (2011), pp. 546-560.
Tangential RKSM for Lyapunov equations
This Matlab code approximately solves a large-scale Lyapunov matrix equation by means
of the
adaptive Rational Krylov method with Galerkin condition.
A tangential approach is
used to deal with large rank of the known ``rhs'' matrix BB'.
Version 1.0.
Download rksm_tan_lyap_amg_Mdir.m
Here is an example of how to call the function rksm.m. Download
example_rksm_tan.m
The code does not include any checking of the input data.
Related article:
V. Druskin, V. Simoncini and M. Zaslavsky,
Adaptive tangential interpolation in rational Krylov subspaces for MIMO model reduction data
SIAM J. Matrix Analysis and Appl., v.35, n.2 (2014), 476-498.
Iterative solver for generalized Lyapunov equations
This Matlab code approximately solves a generalized (multiterm)
large-scale Lyapunov matrix equation by means
of a splitting iterative method. At each iteration, the algorithm solves
a Lyapunov equation with the extended Krylov method with Galerkin condition.
Version 1.0.
Download efficientGenLyap.m ,
Download EKS.m ,
Download invertA.m ,
Here is an example of how to call the function efficientGenLyap.m. Download
example_Glyap.m
The code does not include any checking of the input data.
Related article:
Stephen D. Shank , V. Simoncini and Daniel B. Szyld
Efficient low-rank solutions of Generalized Lyapunov equations
Numerische Mathematik, 134(2), (2016), 327-342. DOI 10.1007/s00211-015-0777-7
SKSM_cTri: Enhanced standard Krylov subspace method for symmetric Lyapunov equations
This Matlab code iteratively solves a large-scale Lyapunov matrix equation with
symmetric coeff. matrix by means of the
standard Krylov method with Galerkin condition (low CPU and memory requirements).
Version 1.0.
Download: SKSM_cTri.m ,
cTri.mexa64
Here is an example of how to call the function SKSM_cTri.m. Download
example_SKSM_cTri.m
The code does not include any checking of the input data.
Related article:
Davide Palitta and V. Simoncini,
Computationally enhanced projection methods for symmetric
Sylvester and Lyapunov matrix equations
J. Computational and Applied Mathematics, 330 (2018) 648-659.
RKSM for Riccati equations
This Matlab code approximately solves a large-scale Riccati matrix equation by means
of the
adaptive Rational Krylov method with Galerkin condition.
Version 1.0.
Download ARKSM_Riccati.m
Here is an example of how to call the function rksm.m. Download
test_ARKSM_Riccati.m
The code does not include any checking of the input data.
Related article:
V. Simoncini,
Analysis of the rational Krylov subspace projection method
for large-scale algebraic Riccati equations
SIAM J. Matrix Analysis and Appl. 37-4 (2016), pp. 1655-1674. http://dx.doi.org/10.1137/16M1059382
RKSM for Differential Algebraic Riccati equations
This Matlab code approximately solves a large-scale differential algebraic
Riccati matrix equation by means
of the
adaptive Rational Krylov method with Galerkin condition (MOR style: projecting and then time-integrating)
Version 1.2.
Download DRE.tar.gz
The code does not include any checking of the input data.
See also here for the GitHub version.
Related article:
Gerhard Kirsten and V. Simoncini,
Order reduction methods for solving large-scale differential matrix Riccati equations
To appear in SIAM J. Scient. Comput. arXiv: 1905.12119. https://arxiv.org/abs/1905.12119
LYAP_BANDED for Lyapunov equations
This Matlab code approximately solves a large-scale Lyapunov matrix equation
with banded data.
Version 1.0.
Download here .
The code does not include any checking of the input data.
Related article:
Davide Palitta and V. Simoncini
Numerical methods for large-scale Lyapunov equations with symmetric banded data
SIAM J. Scientific Computing.
v.40 (5), pp.A3581--A3608 (2018). https://doi.org/10.1137/17M1156575
MultiRB: Galerkin method for solving multiterm matrix equations from SGFEM
This package contains matlab codes to iteratively solving linear multiterm matrix
equations stemming from Stochastic Galerkin diffusion problems.
Version 1.0.
Download: MultiRB.zip .
The package contains the driver SGFEM_matdriver.m to replicate the examples
in the related article.
The code does not include any checking of the input data.
Related article:
C.E. Powell, D. Silvester, V. Simoncini,
An Efficient Reduced Basis Solver for Stochastic Galerkin Matrix Equations,
SIAM J. Sci. Comput., Vol 39, No. 1, pp. A141--A163, (2017)
MotCG: Matrix-Oriented Truncated CG
This Matlab code approximately solves a large-scale linear matrix equation by means
of the
Preconditioned CG method with truncation, in matrix form.
Version 1.0.
Download tcg.tar.gz
The tar file contains a driver with an example calling the function MotCG.m.
The code does not include any checking of the input data.
Related article:
V. Simoncini and Yue Hao
Analysis of the truncated conjugate gradient method for linear matrix equations
pp. 1-24, Dipartimento di Matematica, Universita' di Bologna, February 2022. HAL archive hal-03579267.
To appear in SIAM J. Matrix Analysis and Appl.
(see also references inthere)
Sketched and truncated polynomial Krylov for Sylvester equations
This Matlab code approximately solves a large-scale Sylvester matrix equation by means
of Sketched and truncated polynomial Krylov methods.
Codes available
here
Related article:
Davide Palitta , Marcel Schweitzer , and V. Simoncini
Sketched and truncated polynomial Krylov methods: Sylvester matrix equations
arXiv:
2311.16019,
pp. 1-28, Dipartimento di Matematica, Universita' di Bologna, Nov 2023 (and later versions)
To appear in Math. Comp.
MR_RKSM
(to be included)