From: "Bruno Luong" <b.luong@fogale.findmycountry>
Newsgroups: comp.soft-sys.matlab
Subject: Re: Eigenvectors with Identical Eigenvalues Lose orthogonality?
Date: Fri, 6 Aug 2010 17:37:04 +0000 (UTC)
Organization: FOGALE nanotech
Lines: 11
Message-ID: <i3hh80$qjg$>
References: <i3hcrc$g9o$>
Reply-To: "Bruno Luong" <b.luong@fogale.findmycountry>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: 1281116224 27248 (6 Aug 2010 17:37:04 GMT)
NNTP-Posting-Date: Fri, 6 Aug 2010 17:37:04 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 390839
Xref: comp.soft-sys.matlab:659822

"NIcholas " <> wrote in message <i3hcrc$g9o$>...
> Shouldn't the command "[V,D] = eig(A);" give an orthogonal basis V?
> If A has unique eigenvalues I find this to be true, but if A has identical eigenvalues (see code below) the eigenvectors with identical eigenvalues seem to lose orthogonality.  Is this a numerical issue with the eig command? and is there a way around it?

This is not an "issue": there is no warranty that EIG must return the orthogonal basis for multiple-order eigenspace even for Hermitian matrix. Any basis vectors within the multilple-order eigenspace are still *valid* eigen-vectors.

If you want to reorthonalize, use ORTH after EIG. Or you can call SVD

[V D V] = svd(A)