From de4f2cabf477feea61adcb7bc5cc09fae2789ced Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20He=C3=9F?= <rene.hess@iwr.uni-heidelberg.de> Date: Mon, 31 Oct 2016 14:03:35 +0100 Subject: [PATCH] No temporary for quadrature position --- python/dune/perftool/pdelab/quadrature.py | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/python/dune/perftool/pdelab/quadrature.py b/python/dune/perftool/pdelab/quadrature.py index c4bfa744..23ab380e 100644 --- a/python/dune/perftool/pdelab/quadrature.py +++ b/python/dune/perftool/pdelab/quadrature.py @@ -65,6 +65,7 @@ def quadrature_preamble(code, **kw): def name_quadrature_point(): + # Note: Used for qp_in_inside/qp_in_outside return "qp" @@ -118,29 +119,15 @@ def name_quadrature_points(): return name -def define_quadrature_position(name): - # TODO - # qp = name_quadrature_point() +def pymbolic_quadrature_position(): quad_points = name_quadrature_points() quad_iname = quadrature_iname() - return quadrature_preamble(code="{} = {}[{}];".format(name, quad_points, quad_iname), - assignees=frozenset({name}), - ) + from pymbolic.primitives import Subscript, Variable + return Subscript(Variable(quad_points), (Variable(quad_iname),)) def name_quadrature_position(): - name = "pos" - # To determine the shape, I do query global information here for lack of good alternatives - from dune.perftool.generation import get_global_context_value - it = get_global_context_value("integral_type") - from dune.perftool.pdelab.geometry import name_dimension, name_intersection_dimension - if it == 'cell': - shape = (name_dimension(),) - else: - shape = (name_intersection_dimension(),) - temporary_variable(name, shape=shape, shape_impl=("fv",)) - define_quadrature_position(name) - return name + return str(pymbolic_quadrature_position()) def name_quadrature_position_in_cell(restriction): -- GitLab