diff --git a/meshmode/mesh/refinement.py b/meshmode/mesh/refinement.py index a57d5233524e16da29c90e54046adbb875fe66cb..7e9f7c1e23740fb88957ea9a38bba2edf8725235 100644 --- a/meshmode/mesh/refinement.py +++ b/meshmode/mesh/refinement.py @@ -692,10 +692,12 @@ class Refiner(object): for ivertex in grp[iel_grp]: element_to_element[element_index].update( vertex_to_element[ivertex]) - if self.hanging_vertex_element[ivertex] != -1: + if self.hanging_vertex_element[ivertex] != -1 and element_index != self.hanging_vertex_element[ivertex]: element_to_element[element_index].update([self.hanging_vertex_element[ivertex]]) element_to_element[self.hanging_vertex_element[ivertex]].update([element_index]) element_index += 1 + for iel, neighbors in enumerate(element_to_element): + neighbors.remove(iel) #print self.ray_elements ''' for ray in self.rays: