Re: Matrix Diagonalization



On Sat, 14 Mar 2009 10:41:22 +0000 (GMT), nmm1@xxxxxxxxx wrote:

In article <8208a$49bb86df$d55d2be5$2068@xxxxxxxxxxxxxx>,
Jan Gerrit Kootstra <jan.gerrit@xxxxxxxxxxxxxxx> wrote:

Also the simple case of all eigenvalues being equal is not at all simple.
Much better to try the case of all eigenvalues having differing values.
Not as not simple as:

( 1 0 )
( 1 1 )

LAPACK and virtually everything else get that one wrong!
Lambda would equal one with multiplicity two. What makes it problematic?

Run it, extracting all eigenvectors, and see :-)

The problem is that it has only one eigenvector. LAPACK will return
all eigenvalues and eigenvectors without comment, but one of the
latter is invalid (i.e. all zeroes). If you aren't expecting that,
your code can go bananas.

The all zeroes is not invalid, it is the 'generilized' eigenvector. So
it is not what one should expect from a classical point of view.

Without the specification stating that, I stand by my point!

It's not unreasonable behaviour, but should be documented if it is
a feature. I haven't checked carefully enough to see if it is set
to all zeroes explicitly and reliably, or it just happened to be
what dropped out of the code. If the latter, it is DEFINITELY a
bug in the error detection; if the former, in the documentation.

Obviously, I saw no error return stating "Only N eigenvectors exist"
and ran a test to see what happened, using the classic example that
I was taught as an undergraduate :-)


Regards,
Nick Maclaren.

Well, this is enticing enough for me to code up now. I can't remember
whether I succeeded the last time I tried.

Elliot Chandler is posting now, and I think he knows how to talk a person
through it with g95.

Now I remember. It was right after I sustained a massive concussion in a
car onto bike assault on Nov. 7th of last year. (Thank goodness i had a
helmet on.)

If I have lapack compiled correctly on my machine, what intermediate files
would exist?
--
larry gates

Execute! (I hope that's the right word...)
-- Larry Wall in <20040302065954.GA12495@xxxxxxxx>
.



Relevant Pages

  • Re: Matrix Diagonalization
    ... LAPACK and virtually everything else get that one wrong! ... Run it, extracting all eigenvectors, and see :-) ... then the routine will ignore the lower triangle of the ... input and diagonalize a unit matrix of dimension 2x2. ...
    (comp.lang.fortran)
  • Re: using a lapack routine
    ... I prefer to compile LAPACK and create a library. ... module with interfaces to LAPACK subroutines. ... real symmetric matrix. ... eigenvectors of a real matrix A I type v=eigVectors, ...
    (comp.lang.fortran)
  • Re: minimization of a matrix function
    ... It appears that you want the d lowest eigenvectors of the ... I think you need to study eigenvalue problems and perturbation ... LAPACK documentation would be a good place to start, ... can find the eigenvectors by minimizing ...
    (sci.math.num-analysis)
  • Re: Matrix Diagonalization
    ... LAPACK and virtually everything else get that one wrong! ... Run it, extracting all eigenvectors, and see :-) ... The all zeroes is not invalid, ... bug in the error detection; if the former, ...
    (comp.lang.fortran)
  • Re: eigenstructure from eig
    ... > If A is a symmetric matrix, ... how does it choose the eigenvectors? ... You'd need to look at the properties of your matrix A, find which LAPACK ... you'll need to check the LAPACK routines and/or the ...
    (comp.soft-sys.matlab)

Loading