eigenvalues problem
- Subject: eigenvalues problem
- From: Bernhard Stoevesandt
- Date: Tue, 25 Aug 2009 15:08:12 +0200
O.k., now i got the source code from version 5.17 and compiled. This
works. Obviously there is a problem with the version on ubuntu 8.10. on
64bit.
Thanks for the help!
Bernhard
Bernhard Stoevesandt schrieb:
> Hi, hm no. It doesn't work. Now i get:
> (%i1)
> A:2*matrix([(2*m1^2+2*m2*m4+2*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^2+2*m2*m4+2*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^2+2*m3*m7+2*m6*m8]);
> [ 2 ]
> [ 2 (2 m3 m7 + 2 m2 m4 + 2 m1 ) ]
> (%o1) Col 1 = [ ]
> [ 2 (m3 m8 + m6 m7 + m4 m5 + m2 m5 + m1 m4 + m1 m2) ]
> [ ]
> [ 2 (m7 m9 + m3 m9 + m4 m8 + m1 m7 + m2 m6 + m1 m3) ]
> [ 2 (m3 m8 + m6 m7 + m4 m5 + m2 m5 + m1 m4 + m1 m2) ]
> [ ]
> Col 2 = [ 2 ]
> [ 2 (2 m6 m8 + 2 m5 + 2 m2 m4) ]
> [ ]
> [ 2 (m8 m9 + m6 m9 + m5 m8 + m2 m7 + m5 m6 + m3 m4) ]
> [ 2 (m7 m9 + m3 m9 + m4 m8 + m1 m7 + m2 m6 + m1 m3) ]
> [ ]
> Col 3 = [ 2 (m8 m9 + m6 m9 + m5 m8 + m2 m7 + m5 m6 + m3 m4) ]
> [ ]
> [ 2 ]
> [ 2 (2 m9 + 2 m6 m8 + 2 m3 m7) ]
> (%i2) eigenvalues(A)$
> Maxima encountered a Lisp error:
>
> Error in CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER [or a callee]:
> Couldn't protect
>
> Automatically continuing.
> To reenable the Lisp debugger set *debugger-hook* to nil
>
>
> The version is for Ubuntu 8.10
> Maxima version: 5.13.0
> Maxima build date: 3:56 12/15/2007
> host type: x86_64-unknown-linux-gnu
> lisp-implementation-type: GNU Common Lisp (GCL)
> lisp-implementation-version: GCL 2.6.8
>
> Bernhard
>
>
> Stefano Ferri schrieb:
>> 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
>>>
>
>
--
---------------------------------------------------------------------------------------
Dipl. Phys. Bernhard Stoevesandt
ForWind + AG TWiSt
Fakult?t V
Carl-von-Ossietzky Universit?t Oldenburg
Carl-von-Ossietzky-Str.9
26111 Oldenburg
Tel: 0441/798-3577 Fax:0441/798-3579
---------------------------------------------------------------------------------------