diff --git a/meshmode/discretization/connection/refinement.py b/meshmode/discretization/connection/refinement.py index 4477a9bfd0fdbf4e24659c059997e1e6156fb894..5ef91fe7e41dc464061e73438796afa174756560 100644 --- a/meshmode/discretization/connection/refinement.py +++ b/meshmode/discretization/connection/refinement.py @@ -51,6 +51,8 @@ def _map_unit_nodes_to_children(unit_nodes, tesselation): """ ref_vertices = np.array(tesselation.ref_vertices, dtype=np.float) + assert len(unit_nodes.shape) == 2 + for child_element in tesselation.children: center = np.vstack(ref_vertices[child_element[0]]) # Scale by 1/2 since sides in the tesselation have length 2. diff --git a/meshmode/discretization/poly_element.py b/meshmode/discretization/poly_element.py index a5319bc84f47ab6689f502629ff6009893033832..54aaabef97ac5f9bfc97b642ebe1a476608e0603 100644 --- a/meshmode/discretization/poly_element.py +++ b/meshmode/discretization/poly_element.py @@ -144,7 +144,13 @@ class QuadratureSimplexElementGroup(PolynomialSimplexElementGroupBase): @property @memoize_method def unit_nodes(self): - return self._quadrature_rule().nodes + result = self._quadrature_rule().nodes + if len(result.shape) == 1: + result = np.array([result]) + + dim2, nunit_nodes = result.shape + assert dim2 == self.mesh_el_group.dim + return result @property @memoize_method