On 15/10/06, Ron Crummett <rcrummett at uidaho.edu> wrote:
> Is there a special function to calculate the exponential of a matrix?
Sort of. Try user-contribbed, (the admittedly very
unintuitively-named) "diag" package:
(%i1) load("diag");
(%o1) /usr/share/maxima/5.9.3/share/contrib/diag.mac
(%i2) A : matrix([2,1],[0,2]);
[ 2 1 ]
(%o2) [ ]
[ 0 2 ]
(%i3) mat_function(exp,A);
[ 2 2 ]
[ %e %e ]
(%o3) [ ]
[ 2 ]
[ 0 %e ]
You can also use any other analytic function instead of "exp", thanks
to a theorem of functional analysis that if all the eigenvalues of a
matrix A lie within an open set on which f is analytic, then f(A)
makes sense. In case you ever wanted to know what a cosine of a matrix
is, for example. ;-)
HTH,
- Jordi G. H.