title: scipy.sparse for numpy.random_multivariate_normal
body: <p>I wanted to save a bit of memory, and thought I'd create a <code>scipy.sparse</code> identity matrix (<code>dim</code> is in the thousands, not terrible, but also not frugal). Notice its shape passes the <code>assert</code>:</p>
  
  <pre><code>cov = sigma_0 * sparse.identity(dim, dtype=np.float32)
  assert (dim, dim) == cov.shape
  result = np.random.multivariate_normal(mu, cov)
  </code></pre>
  
  <blockquote>
  <pre><code>E   ValueError: cov must be 2 dimensional and square
  </code></pre>
  </blockquote>
  
  <p>The following, however, works fine:</p>
  
  <pre><code>cov = sigma_0 * np.identity(dim, dtype=np.float32)
  assert (dim, dim) == cov.shape
  result = np.random.multivariate_normal(mu, cov)
  </code></pre>
  
  <p>Did I miss it, somewhere, in the docs to say that sparse covariance matrices are expected fail with a <code>ValueError</code>?</p>