Compute the matrix exponential of square matrix A.
The matrix exponential is defined as the infinite Taylor series
A² A³ expm (A) = I + A + ---- + ---- + … 2! 3!
The function implements the following algorithm: 1. The matrix is scaled,
2. an enclosure of the Taylor series is computed using the Horner scheme,
3. the matrix is squared. That is, the algorithm computes
expm (A ./ pow2 (L)) ^ pow2 (L)
. The scaling
reduces the matrix norm below 1, which reduces errors during exponentiation.
Exponentiation typically is done by Padé approximation, but that doesn’t
work for interval matrices, so we compute a Horner evaluation of the Taylor
series. Finally, the exponentiation with pow2 (L)
is computed
with L successive interval matrix square operations. Interval matrix
square operations can be done without dependency errors (regarding each
single step).
The algorithm has been published by Alexandre Goldsztejn and Arnold Neumaier (2009), “On the Exponentiation of Interval Matrices.”
Accuracy: The result is a valid enclosure.
vec (expm (infsup(magic (3)))) ⇒ ans ⊂ 9×1 interval vector [1.0897e+06, 1.0898e+06] [1.0896e+06, 1.0897e+06] [1.0896e+06, 1.0897e+06] [1.0895e+06, 1.0896e+06] [1.0897e+06, 1.0898e+06] [1.0897e+06, 1.0898e+06] [1.0896e+06, 1.0897e+06] [1.0896e+06, 1.0897e+06] [1.0896e+06, 1.0897e+06]
See also: @infsup/mpower, @infsup/exp.
Package: interval