Just wondering if someone can help me solve this problem, or point me to some articles on the subject.
I have a function F that corresponds to a large N by N matrix, N is a very large number so the matrix itself cannot be written down. For an eigenvalue E, is there an efficient method for finding the corresponding eigenvectors $\vec{x}$?
$F\vec{x} = E\vec{x}$
The known conditions are:
- The matrix is its own's inverse, $ F F \vec{x} = \vec{x}$,
- the function can be called to operate on any vectors,
- $E = 1$,
- the are 3 solutions, one of there is known. Just need to find the other two.
You think for a little bit and you realise that:
So you can decompose $\Bbb R^N$ into the two eigenspaces of $F$ so for some $x$ you get:
$$Fx = F(v+w) = v - w,$$ where $x=v+w$, $Fv=v$ and $Fw = -w$. Thus:
$$x + Fx = v + w + v - w = 2v$$
is an eigenvector of $F$ with eigenvalue 1.
If you repeat this for a basis of $N$ vectors, you should get eigenvector a which span the eigenspace.