title: how does numpy.linalg.eigh vs numpy.linalg.svd?
body: <h1>problem description</h1>
  
  <p>For a square matrix, one can obtain the SVD </p>
  
  <pre><code>X= USV'
  </code></pre>
  
  <p>decomposition, by using simply <strong>numpy.linalg.svd</strong></p>
  
  <pre><code>u,s,vh = numpy.linalg.svd(X)     
  </code></pre>
  
  <p>routine or <strong>numpy.linalg.eigh</strong>, to compute the eig decomposition on Hermitian matrix <strong>X'X</strong>  and <strong>XX'</strong></p>
  
  <p>Are they using the same algorithm? Calling the same Lapack routine?</p>
  
  <p>Is there any difference in terms of speed? and stability?</p>