OK, you pointed me out two pending PR about the Jordan form. I worked on mamueller's one and I've merged it with the latest master branch. I did not inspect Krastanov's PR yet, but it looks like they are clashing against each other.
In mamueller's one the Matrix.exp( ) already works on non-diagonalizable matrices, which seems good. Which PR do you suggest I should look for? On Monday, July 15, 2013 2:47:59 AM UTC+2, Rick Muller wrote: > > You're right. I guess I see the world through a numeric lens that I don't > even notice anymore. > > On Sunday, July 14, 2013 5:59:47 PM UTC-6, Aaron Meurer wrote: >> >> That paper mainly deals with numeric methods, and maintaining >> numerical stability, which are not issues for symbolic matrices, but >> the Jordan method is described (briefly) as method 16. It does >> actually give a closed form for the exponential of a Jordan block, >> which can be built much more efficiently by using the form of it than >> by taking the powers of the matrices directly. >> >> But maybe some other method there is also useful for symbolic >> computation. >> >> Aaron Meurer >> >> On Sun, Jul 14, 2013 at 6:21 PM, Rick Muller <[email protected]> wrote: >> > There's a great article from SIAM Review of matrix exponentiation >> called 19 >> > Dubious Ways to Exponentiate a Matrix that's fun reading if people >> aren't >> > already familiar with it. May have some useful tricks. >> > >> > >> > On Sunday, July 14, 2013 8:35:32 AM UTC-6, F. B. 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.
