The usual way to do it is to use generalized eigenvectors and Jordan form. Some work was started at https://github.com/sympy/sympy/pull/677, but it needs to be finished.
See also these issues: https://code.google.com/p/sympy/issues/list?&q=jordan Aaron Meurer On Sun, Jul 14, 2013 at 9:35 AM, F. B. <[email protected]> wrote: > >>> m = Matrix([[0, 1], [0, 0]]) > >>> exp(m) > NotImplementedError: Exponentiation is implemented only for diagonalizable > matrices > > > What is the best way to implement the exponentiation for non-diagonalibale > matrices? > > I thought a way to fix it could be by Taylor expansion (hoping > non-diagonalizable matrices over the complexes are nilpotent). > > Any better ideas? Just suggest me something and I'll try to fix it. > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/sympy. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sympy. For more options, visit https://groups.google.com/groups/opt_out.
