Re: Eigenvalues works very slow

*To*: mathgroup at smc.vnet.net*Subject*: [mg128513] Re: Eigenvalues works very slow*From*: Michael Weyrauch <michael.weyrauch at gmx.de>*Date*: Thu, 25 Oct 2012 23:36:07 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*Delivered-to*: l-mathgroup@wolfram.com*Delivered-to*: mathgroup-newout@smc.vnet.net*Delivered-to*: mathgroup-newsend@smc.vnet.net*References*: <k685fc$m70$1@smc.vnet.net>

Hello, there is a very simple solution to this: Eigenvalues[N[q4 + h0]] Reason: If you want to use numerical algorithms as most likely the other system does automatically (because it doesen't know better), then you need to give numerical input to the function Eigenvalues. Unlike most other systems, Mathematica is smart enough to chose different algorithms depending on the input it receives. Michael Am 24.10.2012 09:30, schrieb jure lapajne: > Hello, > I'm trying to calculate eigenvalues of different sized matrices (from 10x10 to 1000x1000) using mathematica's built-in function - Eigenvalues. For smaller matrices it works ok, but for larger matrices it's just too slow. I tried writing the code in another system and it finds eigenvalues very quickly (in a second or two at most) even for big matrices. I'm not sure whether am I doing something wrong or is the speed difference really this big. > My code (you only need to change d to change the size of matrix): > d = 25; > q = Table[Table[1/2*Sqrt[i + j + 1]*KroneckerDelta[Abs[i - j], 1], {j, 0, d-1}],{i, 0, d - 1}]; > h0 = Table[Table[(i + 1/2)*KroneckerDelta[i, j], {j, 0, d - 1}], {i, 0,d-1}]; > lambda = 1/2; > q4 = lambda*q.q.q.q; > N[Eigenvalues[q4 + h0]] > > Thanks for help. >