Skip to content

Commit

Permalink
Only impute eigenvecs/eigenvals for eigsh when necessary
Browse files Browse the repository at this point in the history
  • Loading branch information
HannesHolste committed Mar 5, 2018
1 parent 8e068a7 commit 6d59299
Showing 1 changed file with 13 additions and 10 deletions.
23 changes: 13 additions & 10 deletions mdsa/algorithms/eigsh.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,15 +60,18 @@ def _impute_eigendecomposition_results(eigenvectors, eigenvalues,
eigenvalues = np.array(eigenvalues)
eigenvectors = np.array(eigenvectors)

# impute missing eigenvectors, composed of NaN entries
nan_eigenvecs = np.array([[np.nan] * eigenvectors.shape[1]] *
(expected_num_results -
len(eigenvectors)))
eigenvectors = np.concatenate((eigenvectors, nan_eigenvecs),
axis=0)
if len(eigenvectors) != expected_num_results:
# impute missing eigenvectors, composed of NaN entries
nan_eigenvecs = np.array([[np.nan] * eigenvectors.shape[1]] *
(expected_num_results -
len(eigenvectors)))
eigenvectors = np.concatenate((eigenvectors, nan_eigenvecs),
axis=0)

if len(eigenvalues) != expected_num_results:
# impute missing eigenvalues as NaNs
nan_eigenvals = [[np.nan] * (expected_num_results -
len(eigenvalues))]
eigenvalues = np.append(eigenvalues, nan_eigenvals)

# impute missing eigenvalues as NaNs
nan_eigenvals = [[np.nan] * (expected_num_results -
len(eigenvalues))]
eigenvalues = np.append(eigenvalues, nan_eigenvals)
return eigenvectors, eigenvalues

0 comments on commit 6d59299

Please sign in to comment.