[Maxima] eigenvalues problem

Stefano Ferri ferriste at gmail.com
Tue Aug 25 06:43:17 CDT 2009


Hi, I've tryed with your matrix B and Maxima can compute eigenvalues,
but results are really long expressions, so most of the time is spent
printing the result. Only calculation took 16.8 seconds on an athlon
1900+, without printing the output. Output printing took about 4-5
minutes. Try with

eigenvalues(B)$

instead of eigenvalues(B);
I had no problem with your matrix C, no errors. Wich version of Maxima
are you using? Now I'm with Maxima 5.18.1, compiled with CLISP.
Stefano



2009/8/25 Bernhard Stoevesandt <bernhard.stoevesandt at uni-oldenburg.de>:
> Hi everyone,
>
> well, i do have a rather complicated matrix of which i would like to
> optain the eigenvalues. The problem is with maxima i don't get them.
> Here is what i do:
>
> (%i1) B:matrix([2*(m1*m1+m2*m4+m3*m7),m3*m8 + m6*m7 + m4*m5 + m2*m5 +
> m1*m4 + m1*m2,m1*m3+m1*m7+m2*m6+m4*m8+m3*m9+m7*m9], [m3*m8 + m6*m7 +
> m4*m5 + m2*m5 +
> m1*m4+m1*m2,2*(m5*m5+m2*m4+m6*m8),m2*m7+m4*m3+m5*m6+m5*m8+m6*m9+m8*m9]
> ,[m1*m3+m1*m7+m2*m6+m4*m8+m3*m9+m7*m9,m2*m7+m4*m3+m5*m6+m5*m8+m6*m9+m8*m9,2*(m9*m9+m3*m7+m6*m8)]);
>               [                                 2             ]
>               [            2 (m3 m7 + m2 m4 + m1 )            ]
> (%o1)  Col 1 = [                                               ]
>               [ m3 m8 + m6 m7 + m4 m5 + m2 m5 + m1 m4 + m1 m2 ]
>               [                                               ]
>               [ m7 m9 + m3 m9 + m4 m8 + m1 m7 + m2 m6 + m1 m3 ]
>         [ m3 m8 + m6 m7 + m4 m5 + m2 m5 + m1 m4 + m1 m2 ]
>         [                                               ]
>  Col 2 = [                         2                     ]
>         [            2 (m6 m8 + m5  + m2 m4)            ]
>         [                                               ]
>         [ m8 m9 + m6 m9 + m5 m8 + m2 m7 + m5 m6 + m3 m4 ]
>         [ m7 m9 + m3 m9 + m4 m8 + m1 m7 + m2 m6 + m1 m3 ]
>         [                                               ]
>  Col 3 = [ m8 m9 + m6 m9 + m5 m8 + m2 m7 + m5 m6 + m3 m4 ]
>         [                                               ]
>         [                 2                             ]
>         [            2 (m9  + m6 m8 + m3 m7)            ]
>
> if i type in:
>
> (%i2) eigenvalues(B);
>
> nothing happens. I mean nothing. I can still type, but i don't get any
> output. I i want to kill the process, there is no process to kill. Also,
> i cannot type in any new command. There is no promt. So i have to restart.
> Now, maybe this is to complicated. So i did:
>
> (%i1) C:matrix([2*(m1*m1+m2*m4+m3*m7),2,3],[4,5,6],[7,8,9]);
> (%i2) A:eigenvalues(C);
>
> i get:
>           sqrt(3) %i   1        - 3/2               4   4
> (%o2) [[(- ---------- - -) expt(3      sqrt(- 3328 m3  m7
>               2        2
>               3               2            3    3
>  - (13312 m2 m3  m4 + (13312 m1  - 53184) m3 ) m7
>            2   2   2            2                2
>  - (19968 m2  m3  m4  + (39936 m1  - 159552) m2 m3  m4
>            4            2             2    2
>  + (19968 m1  - 159552 m1  + 351300) m3 ) m7
>            3      3            2             2      2
>  - (13312 m2  m3 m4  + (39936 m1  - 159552) m2  m3 m4
>            4            2
>  + (39936 m1  - 319104 m1  + 702600) m2 m3 m4
>            6            4            2                           4   4
>  + (13312 m1  - 159552 m1  + 702600 m1  - 519140) m3) m7 - 3328 m2  m4
>            2            3   3            4            2             2   2
>  - (13312 m1  - 53184) m2  m4  - (19968 m1  - 159552 m1  + 351300) m2  m4
>            6            4            2                          8
>     6
>  - (13312 m1  - 159552 m1  + 702600 m1  - 519140) m2 m4 - 3328 m1  +
> 53184 m1
>            4            2                     3   3
>  - 351300 m1  + 519140 m1  - 274413)/2 + (16 m3  m7
>            2      2
>  + m2 (48 m3  m4 m7  - 336 m3 m4 m7 - 762 m4)
>     2       2   2                                                2   2
>  + m1  (48 m3  m7  + m2 (96 m3 m4 m7 - 336 m4) - 336 m3 m7 + 48 m2  m4
> - 762)
>         2   2     2          2            2      4
>  - 168 m3  m7  + m2  (48 m3 m4  m7 - 168 m4 ) + m1  (48 m3 m7 + 48 m2 m4
> - 168)
>                    3   3        6             1
>  - 762 m3 m7 + 16 m2  m4  + 16 m1  + 9601)/54, -)
>                                               3
>    sqrt(3) %i   1       2   2
>  + (---------- - -) (4 m3  m7  + m2 (8 m3 m4 m7 - 28 m4)
>        2        2
>     2                                           2   2       4
>  + m1  (8 m3 m7 + 8 m2 m4 - 28) - 28 m3 m7 + 4 m2  m4  + 4 m1  + 292)
>          - 3/2               4   4               3
> /(9 expt(3      sqrt(- 3328 m3  m7  - (13312 m2 m3  m4
>            2            3    3            2   2   2
>  + (13312 m1  - 53184) m3 ) m7  - (19968 m2  m3  m4
>            2                2               4            2
> 2    2
>  + (39936 m1  - 159552) m2 m3  m4 + (19968 m1  - 159552 m1  + 351300) m3
> ) m7
>            3      3            2             2      2
>  - (13312 m2  m3 m4  + (39936 m1  - 159552) m2  m3 m4
>            4            2
>  + (39936 m1  - 319104 m1  + 702600) m2 m3 m4
>            6            4            2                           4   4
>  + (13312 m1  - 159552 m1  + 702600 m1  - 519140) m3) m7 - 3328 m2  m4
>            2            3   3            4            2             2   2
>  - (13312 m1  - 53184) m2  m4  - (19968 m1  - 159552 m1  + 351300) m2  m4
>            6            4            2                          8
>     6
>  - (13312 m1  - 159552 m1  + 702600 m1  - 519140) m2 m4 - 3328 m1  +
> 53184 m1
>            4            2                     3   3
>  - 351300 m1  + 519140 m1  - 274413)/2 + (16 m3  m7
>            2      2
>  + m2 (48 m3  m4 m7  - 336 m3 m4 m7 - 762 m4)
>     2       2   2                                                2   2
>  + m1  (48 m3  m7  + m2 (96 m3 m4 m7 - 336 m4) - 336 m3 m7 + 48 m2  m4
> - 762)
>         2   2     2          2            2      4
>  - 168 m3  m7  + m2  (48 m3 m4  m7 - 168 m4 ) + m1  (48 m3 m7 + 48 m2 m4
> - 168)
>                    3   3        6             1
>  - 762 m3 m7 + 16 m2  m4  + 16 m1  + 9601)/54, -))
>                                               3
> Universal error handler called recursively (:ERROR NIL
>
> CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER
>                                            "" "Couldn't protect")
> Universal error handler called recursively (:ERROR NIL
>
> CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER
>                                            "" "Couldn't protect")
> Maxima encountered a Lisp error:
>
>  Error in CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER [or a callee]: Caught
> fatal error [memory may be damaged]
>
> Automatically continuing.
> To reenable the Lisp debugger set *debugger-hook* to nil.
>
> So what are the problems?
>
> Bernhard
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>



More information about the Maxima mailing list