|
[Date Index]
[Thread Index]
[Author Index]
Re: Eigenvectors
In article <68l3q8$mfu@smc.vnet.net>, David Djajaputra
<dd4b@virginia.edu> wrote:
> Is there a simple command that can give me the <b>normalized</b>
> eigenvectors
> of a hermitian matrix? Or the unitary matrix that diagonalizes it?
>
> Thanks.
>
> David
So far as I can see the eigenvectors returned by Mathematica 3.0 *are*
normalized.
Given a (square) matrix m whose eigenvectors are to be u_n with
eigenvalues g_n, try
u = Transpose[Eigenvectors[m]]; u // MatrixForm
(The eigenvectors u_n will in the *columns* of the matrix u)
uDag = Transpose[Conjugate[u]]
(Calculates the hermitian adjoint of u; complex-conjugated eigenvectors
are in the *rows* of uDag)
g = DiagonalMatrix[Eigenvalues[m]]
(The eigenvalues of m are on the diagonal of g)
uTest = m . u - u . g ; utest // MatrixForm // Chop
(A test that "m u = gamma u"; uTest should be all zeros.)
uNorm = uDag . u ; uNorm // MatrixForm
(The dot products of the eigenvectors are the diagonal elements of
uNorm, and should be all 1.'s; if the matrix m is hermitian, the
off-diagonal elements should be 0, otherwise not.)
--AES
Prev by Date:
Re: Making multiple plots
Next by Date:
ANNOUNCE: Math::ematica 1.100 - Perl talks to Mathematica
Prev by thread:
Re: Eigenvectors
Next by thread:
Re: a problem applying Rule
|