diff --git a/kwant/builder.py b/kwant/builder.py index b07409f285e48ae2f09956f9bc81d182cad93584..137114ef97462589fea841735c64162d4431ee88 100644 --- a/kwant/builder.py +++ b/kwant/builder.py @@ -1349,9 +1349,11 @@ class Builder: done.append(tail) if len(done) > max_sites: # The graph has unbalanced edges: delete it. - del self.H + self.H = {} + self.leads = [] raise RuntimeError("Maximal number of sites (max_sites " - "parameter of fill()) added.") + "parameter of fill()) added.\n" + "All sites have been deleted.") # Make an iterator over head-value-pairs. shift = templ_sym.which(tail) @@ -1497,8 +1499,10 @@ class Builder: def shape(site): domain, = sym.which(site) if domain < min_dom: + self.H = {} raise ValueError('Builder does not interrupt the lead,' - ' this lead cannot be attached.') + ' this lead cannot be attached.\n' + 'All sites have been deleted.') return domain <= max_dom + 1 # We start flood-fill from the first domain that doesn't belong to the