Gottfried Helms on Fri, 05 Feb 2010 23:29:31 +0100

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: error finding eigenspaces

Am 12.01.2010 23:18 schrieb Eliot Brenner:
> When trying to find eigenspaces of a matrix with mateigen() command, I
> get the error message
>   ***   missing eigenspace. Compute the matrix to higher accuracy, then
>   ***   restart eigen at the current precision.
> can you tell me what this means and how to address it?
> Thanks,
> Eliot
> -- 
> Eliot Brenner

In addition to Bill's reply:
I've got it especially, when I tried to eigenanalyze vandermonde-
like matrices. A characteristic was: having precision 200 digits - I
was able to use, say, 20x20-matrices. With 24x24 that message occured.
I increased precision to 400 - then I could proceed to, say 24x24-
matrices. I was unable to arrive at, say 32x32-matrices even if I
increased precision to 1200 or the like.
Well - two problems added up here: after I recomputed the vandermonde-
like matrix with that precision too (involving recomputations of logarithms
and the like as parameters for the vandermonde matrix), I could solve
even for that matrix-size. Meaning: even if you increase the precision
of the eigensystem-framework, the entries of the matrix remain unaffected
by this...

But even if you recomputed the matrix, I think that's only a very limited
workaround for a small range of extension. Possibly you can do better if
you use another problem-specific eigen-solver; my own final workaround was
a) an own solver which works iteratively giving one eigenvector per run
   and simply stops, if maximum precision is exhausted (and does not
   throw away the whole partial result so far)
b) a problem-specific solution which is usable with that problem-specific
   types of matrices.
Happily b) helps me perfectly for 99.9% of my current suits, so I nearly
forgot about a)... :-)