Jason S Guest
|
Posted: Mon Oct 13, 2008 6:07 pm Post subject: stretching along an eigenvector |
|
|
I think I have this correct but am just looking for verification/
clarification/understanding.
Suppose I have an arbitrary mx1 unit vector "u" and a scaling factor
lambda, and I want to create an mxm matrix A such that:
u is one of A>s eigenvectors and the corresponding eigenvalue is
lambda
the remaining eigenvalues are 1.
In other words, if we have another arbitrary vector v, the value Av
takes the component in the u-direction and stretches it by a factor
lambda, but the other orthogonal components are left unchanged.
I think Householder reflections are the key here and I want to
construct
A = I + (lambda-1)*u*transpose(u)
If lambda = -1 then this produces the standard Householder reflection.
it seems to work empirically but I am having trouble grasping how a
Householder reflection actually works. I would have thought you would
actually have to go and construct a set of unit vectors that are
perpendicular to u, which seems like a pain, but the Householder
reflection avoids having to do that somehow. |
|
Peter Spellucci Guest
|
Posted: Tue Oct 14, 2008 10:52 am Post subject: Re: stretching along an eigenvector |
|
|
In article <9af1ff91-251d-424a-bec1-8f4d9aecd929@l76g2000hse.googlegroups.com>,
Jason S <jmsachs@gmail.com> writes:
[quote]I think I have this correct but am just looking for verification/
clarification/understanding.
Suppose I have an arbitrary mx1 unit vector "u" and a scaling factor
lambda, and I want to create an mxm matrix A such that:
u is one of A>s eigenvectors and the corresponding eigenvalue is
lambda
the remaining eigenvalues are 1.
In other words, if we have another arbitrary vector v, the value Av
takes the component in the u-direction and stretches it by a factor
lambda, but the other orthogonal components are left unchanged.
I think Householder reflections are the key here and I want to
construct
A = I + (lambda-1)*u*transpose(u)
[/quote]
correct
[quote]If lambda = -1 then this produces the standard Householder reflection.
it seems to work empirically but I am having trouble grasping how a
Householder reflection actually works.
[/quote]
what is empirically here?
"your" A is hermitian, hence has an orthonormal system of eigenvectors.
Multiplying A by u , you get (since u'*u=1) lambda*u, as desired.
Now, all other eigenvectors will be orthonormal to u. take v with
v'*v=1 and v'*u=0: then A*v =v , hence you have a n-1 dimensional
subspace of eigenvectors for the eigenvalue 1, again as desired.
But you can obtain your A without knowing beforehand that Householder formula
beforehand:
from the spectral decomposition theorem , from your wishes w.r.t to
A it follows that
A = lambda*u*u' + sum_{i=1 to n-1} v_i*v_i'
there (u,v_1,...,v_{n-1}) is an orthonormal system of eigenvectors.
Now adding u*u' to the sum and subtracting this again you get tyuor formula
since for a complete orthonormal system
(u, v_1,...,v_{n-1})*(u,v_1,...,v_[n-1})' = I
holds.
[quote]I would have thought you would
actually have to go and construct a set of unit vectors that are
perpendicular to u, which seems like a pain, but the Householder
reflection avoids having to do that somehow.
[/quote]
you only need the knowledge of orthogonal complements and their bases
hth
peter |
|