Computing Library › Linear Algebra
Linear Algebra

The Matrix Exponential

Extending the exponential function to matrices, the key to solving systems of linear differential equations.

Definition

The matrix exponential of a square matrix A is defined by the same power series as the scalar exponential: exp(A) = I + A + A^2/2! + A^3/3! + and so on. The series converges for every matrix, producing another matrix of the same size. It is the natural bridge from linear algebra to the dynamics of continuous systems.

Solving linear ODEs

The system of differential equations dx/dt = A x with initial condition x(0) has the exact solution x(t) = exp(At) x(0). The matrix exponential thus advances the entire state forward in time in one object, generalizing the scalar solution x(t) = exp(at) x(0). Its behavior is governed by the eigenvalues of A: their real parts decide whether solutions grow or decay.

Computing it

If A is diagonalizable as P D P^{-1}, then exp(A) = P exp(D) P^{-1}, where exp(D) simply exponentiates each diagonal eigenvalue. For general matrices, robust algorithms use scaling and squaring combined with a Pade approximation, since the naive power series and the eigenvalue route can both be inaccurate for defective or ill-conditioned matrices.

Properties

python
import numpy as np
from scipy.linalg import expm
A = np.array([[0.0, 1.0], [-1.0, 0.0]])   # rotation generator
print(expm(A))   # rotation by 1 radian

Time evolution of linearized plasma dynamics is expressed through the matrix exponential of the system operator, whose eigenvalue spectrum separates stable oscillations from growing instabilities.