From: Bruno Luong on
"NIcholas " <dsfadfa(a)aol.com> wrote in message <i3hj6f$225$1(a)fred.mathworks.com>...

>
> Does MATLAB detect symmetry and use a different algorithm for eig?

Yes, not only for EIG but many other linear algebra functions.

Bruno
From: Roger Stafford on
"Matt J " <mattjacREMOVE(a)THISieee.spam> wrote in message <i3hf0q$3vk$1(a)fred.mathworks.com>...
> A repeated eigenvalue with multiplicity M has an M-dimensional space of eigenvectors. You can orthogonalize any basis for this M-dimensional space using Gram-Schmidt, but again eig() has no reason to add this processing, not knowing whether A is Hermitian.
- - - - - - - - - - -
The trouble with doing a Gram-Schmidt, or for that matter any other orthogonalization scheme, on the results from matlab's 'eig' as it stands is that it is quite possible for 'eig' to produce eigenvectors for two equal eigenvalues that are nearly parallel, even though the original matrix was Hermitian and very non-singular. I have seen this happen. This means that the eigenvector space corresponding to the repeated eigenvalue would not have been thoroughly explored in a sense. One could encounter excessive numerical errors in establishing a valid orthogonal basis of eigenvectors in such a case.

This would be all the more true in such cases if more than one multiplicity of eigenvalue were present. One would then have no way of accurately separating the "unexplored" eigenvector spaces for the differing multiple eigenvalues without referring back to the original matrix. The point is that 'eig' for repeated eigenvalues is in certain cases not passing on enough information in its eigenvector set to allow for an accurate orthogonalization of it. Whether this is so or not seems to be determined by the vagaries of the particular algorithm used in 'eig'. I see no inherent mathematical reason why this should be so.

Roger Stafford
From: Matt J on
"Roger Stafford" <ellieandrogerxyzzy(a)mindspring.com.invalid> wrote in message <i3hlu1$p1t$1(a)fred.mathworks.com>...

Whether this is so or not seems to be determined by the vagaries of the particular algorithm used in 'eig'. I see no inherent mathematical reason why this should be so.
===============

Then I guess SVD is the way to go...
First  |  Prev  | 
Pages: 1 2 3
Prev: for loop problem
Next: mxGetData gets garbage