Thesis etd-04092018-085306 | |
Thesis type
Tesi di laurea magistrale
Thesis title
Computation of Matrix Functions with Fully Automatic Schur-Parlett and Rational Krylov Methods
Course of study
INFORMATICA
Keywords
- aaa
- arnoldi
- automatic
- differentiation
- functions
- implementation
- julia
- krylov
- matrix
- parlett
- rational
- schur
Graduation session start date
27/04/2018
Abstract (Italiano)
We present MatFun, a Julia package for computing dense and sparse matrix functions fully automatically (no user input required, other than the code to compute the function $f$ and the matrix $A$ themselves). This is achieved by combining specifically chosen algorithms and some peculiar feature of Julia. For dense matrices, the Schur-Parlett algorithm has been implemented, leveraging Julia's automatic differentiation capabilities. The algorithm has also been improved from a performance standpoint, making the Parlett recurrence cache-oblivious and enabling the whole procedure to work mostly in real arithmetic, for real inputs. For sparse matrices, we implemented a Rational Krylov method, alongside the AAA Rational Approximation. Given a function's samples, AAA is often able to accurately identify its poles, which can then be used by the Rational Krylov method itself for the approximation of $f(A)b$. The accuracy and performance of the algorithms are evaluated, in comparison with existing specialized methods.