title: Quickly and efficiently calculating an eigenvector for known eigenvalue
body: <p><strong>Short version of my question</strong>:</p>
  
  <p>What would be the optimal way of calculating an eigenvector for a matrix <code>A</code>, if we already know the eigenvalue belonging to the eigenvector?</p>
  
  <p><strong>Longer explanation</strong>:</p>
  
  <p>I have a large stochastic matrix <code>A</code> which, because it is stochastic, has a non-negative left eigenvector <code>x</code> (such that <code>A^Tx=x</code>). </p>
  
  <p>I'm looking for quick and efficient methods of numerically calculating this vector. (Preferrably in MATLAB or numpy/scipy - since both of these wrap around ARPACK/LAPACK, any one would be fine).</p>
  
  <p>I know that <code>1</code> is the largest eigenvalue of <code>A</code>, so I know that calling something like this Python code:</p>
  
  <pre><code>from scipy.sparse.linalg import eigs
  vals, vecs = eigs(A, k=1)
  </code></pre>
  
  <p>will result in <code>vals = 1</code> and <code>vecs</code> equalling the vector I need.</p>
  
  <p>However, the thing that bothers me here is that calculating eigenvalues is, in general, a more difficult operation than solving a linear system, and, in general, if a matrix <code>M</code> has eigenvalue <code>l</code>, then finding the appropriate eigenvector is a matter of solving the equation <code>(M - 1 * I) * x = 0</code>, which is, in theory at least, an operation that is simpler than calculating an eigenvalue, since we are only solving a linear system, more specifically, finding the nullspace of a matrix.</p>
  
  <p>However, I find that all methods of nullspace calculation in <code>MATLAB</code> rely on <code>svd</code> calculation, a process I cannot afford to perform on a matrix of my size. I also cannot call solvers on the linear equation, because they all only find one solution, and that solution is <code>0</code> (which, yes, is a solution, but not the one I need). </p>
  
  <p>Is there any way to avoid calls to <code>eigs</code>-like function to solve my problem more quickly than by calculating the largest eigenvalue and accompanying eigenvector?</p>