An Improved Schur--Padé Algorithm for Fractional Powers of a Matrix and their Fréchet Derivatives

Higham, Nicholas J. and Lin, Lijing (2013) An Improved Schur--Padé Algorithm for Fractional Powers of a Matrix and their Fréchet Derivatives. [MIMS Preprint]

WarningThere is a more recent version of this item available.
[img] PDF

Download (550kB)


The Schur--Padé algorithm [N. J. Higham and L. Lin, A Schur--Padé algorithm for fractional powers of a matrix, SIAM J. Matrix Anal. Appl., 32(3):1056--1078, 2011] computes arbitrary real powers $A^t$ of a matrix $A\in\mathbb{C}^{n\times n}$ using the building blocks of Schur decomposition, matrix square roots, and Padé approximants. We improve the algorithm by basing the underlying error analysis on the quantities $\|(I- A)^k\|^{1/k}$, for several small $k$, instead of $\|I-A\|$. We extend the algorithm so that it computes along with $A^t$ one or more Fréchet derivatives, with reuse of information when more than one Fréchet derivative is required, as is the case in condition number estimation. We also derive a version of the extended algorithm that works entirely in real arithmetic when the data is real. Our numerical experiments show the new algorithms to be superior in accuracy to, and often faster than, the original Schur--Padé algorithm for computing matrix powers and more accurate than several alternative methods for computing the Fréchet derivative. They also show that reliable estimates of the condition number of $A^t$ are obtained by combining the algorithms with a matrix norm estimator.

Item Type: MIMS Preprint
Uncontrolled Keywords: matrix power, fractional power, matrix root, Fréchet derivative, condition number, condition estimate, Schur decomposition, Padé approximation, Padé approximant, matrix logarithm, matrix exponential, MATLAB
Subjects: MSC 2010, the AMS's Mathematics Subject Classification > 65 Numerical analysis
Depositing User: Dr Lijing Lin
Date Deposited: 16 Jan 2013
Last Modified: 20 Oct 2017 14:13

Available Versions of this Item

Actions (login required)

View Item View Item