Marcin Dulak 4768a2c
--- ase/neighborlist.py.orig	2020-04-03 23:41:21.000000000 +0000
Marcin Dulak 4768a2c
+++ ase/neighborlist.py	2020-05-07 19:35:07.257677128 +0000
Marcin Dulak 4768a2c
@@ -2,6 +2,7 @@
Marcin Dulak 4768a2c
 import itertools
Marcin Dulak 4768a2c
 from scipy import sparse as sp
Marcin Dulak 4768a2c
 from scipy.spatial import cKDTree
Marcin Dulak 4768a2c
+import scipy.sparse.csgraph as csgraph
Marcin Dulak 4768a2c
 
Marcin Dulak 4768a2c
 from ase.data import atomic_numbers, covalent_radii
Marcin Dulak 4768a2c
 from ase.geometry import complete_cell, find_mic, wrap_positions
Marcin Dulak 4768a2c
@@ -74,7 +75,7 @@
Marcin Dulak 4768a2c
     Why not dok_matrix like the connectivity-matrix? Because row-picking
Marcin Dulak 4768a2c
     is most likely and this is super fast with csr.
Marcin Dulak 4768a2c
     """
Marcin Dulak 4768a2c
-    mat = sp.csgraph.dijkstra(graph, directed=False, limit=limit)
Marcin Dulak 4768a2c
+    mat = csgraph.dijkstra(graph, directed=False, limit=limit)
Marcin Dulak 4768a2c
     mat[mat == np.inf] = 0
Marcin Dulak 4768a2c
     return sp.csr_matrix(mat, dtype=np.int8)
Marcin Dulak 4768a2c
 
Marcin Dulak 4768a2c
@@ -1050,6 +1051,10 @@
Marcin Dulak 4768a2c
         See :meth:`ase.neighborlist.PrimitiveNeighborList.get_neighbors` or
Marcin Dulak 4768a2c
         :meth:`ase.neighborlist.PrimitiveNeighborList.get_neighbors`.
Marcin Dulak 4768a2c
         """
Marcin Dulak 4768a2c
+        if self.nl.nupdates <= 0:
Marcin Dulak 4768a2c
+            raise RuntimeError('Must call update(atoms) on your neighborlist '
Marcin Dulak 4768a2c
+                               'first!')
Marcin Dulak 4768a2c
+
Marcin Dulak 4768a2c
         return self.nl.get_neighbors(a)
Marcin Dulak 4768a2c
 
Marcin Dulak 4768a2c
     def get_connectivity_matrix(self, sparse=True):