From e284a28a2c7e953ffadab68cbda47e5de1a7102b Mon Sep 17 00:00:00 2001 From: Matt Wala <wala1@illinois.edu> Date: Mon, 19 Sep 2016 23:00:29 -0500 Subject: [PATCH] Ensure unit_nodes has the right shape for the 1d case of QuadratureSimplexElementGroup --- meshmode/discretization/connection/refinement.py | 2 ++ meshmode/discretization/poly_element.py | 8 +++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/meshmode/discretization/connection/refinement.py b/meshmode/discretization/connection/refinement.py index 4477a9bf..5ef91fe7 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 a5319bc8..54aaabef 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 -- GitLab