Putzer Algorithm

The Putzer Algorithm is a method for analytically evaluating Matrix Exponentials.

Method
Let $$\lambda_1, \lambda_2, \dots, \lambda_n$$ be the (not necessarily distinct) eigenvalues of the matrix $$A$$. Then:


 * $$e^{At} = \sum_{k=0}^{n-1} p_{k+1}(t) M_k$$.

This formula is constructed by setting $$M_0 = I$$ (the identity matrix),


 * $$M_k = \prod_{i=1}^k (A - \lambda_i I)$$;

and the functions $$p_1(t), p_2(t), \dots, p_n(t)$$ are taken to be components of the vector function solution to the IVP


 * $$p' =

\begin{pmatrix} \lambda_1 & 0 & 0 & \cdots & 0 \\ 1 & \lambda_2 & 0 & \cdots & 0 \\ 0 & 1 & \lambda_3 & \cdots & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ 0 & \cdots & 0 & 1 & \lambda_n \end{pmatrix} p, \, \, \, p(0) = \begin{pmatrix} 1 \\ 0 \\ 0 \\ \vdots\\ 0 \end{pmatrix}$$.

Proof of Validity
Let $$\Phi(t)$$ represent the finite matrix sum, devised above, as the candidate for $$e^{At}$$.

By the uniqueness theorem, it suffices to show that $$\Phi$$ satisfies the IVP,
 * $$X' = AX, \, \, X(0) = I$$

By definition,
 * $$p_1'(t) = \lambda_1 p_1(t)$$,
 * $$p_i'(t) = p_{i-1}(t) + \lambda_i p_i(t), \, \, i > 1$$

Then consider


 * $$\Phi'(t) - A\Phi(t)$$