From 23ff178c3f06718c067f55c51de47568d34dcc05 Mon Sep 17 00:00:00 2001
From: Dominic Kempf <dominic.kempf@iwr.uni-heidelberg.de>
Date: Tue, 17 Jan 2017 14:07:10 +0100
Subject: [PATCH] [bugfix] SpatialCoordinate on facets should return direct
 global coords

... not going to the cell first.
---
 python/dune/perftool/pdelab/__init__.py  | 6 +++---
 python/dune/perftool/sumfact/__init__.py | 6 +++---
 python/dune/perftool/ufl/visitor.py      | 2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/python/dune/perftool/pdelab/__init__.py b/python/dune/perftool/pdelab/__init__.py
index 76f894bf..8529eb1e 100644
--- a/python/dune/perftool/pdelab/__init__.py
+++ b/python/dune/perftool/pdelab/__init__.py
@@ -24,7 +24,7 @@ from dune.perftool.pdelab.parameter import (cell_parameter_function,
                                             intersection_parameter_function,
                                             )
 from dune.perftool.pdelab.quadrature import (pymbolic_quadrature_weight,
-                                             pymbolic_quadrature_position_in_cell,
+                                             pymbolic_quadrature_position,
                                              quadrature_inames,
                                              )
 from dune.perftool.pdelab.spaces import (lfs_inames,
@@ -94,8 +94,8 @@ class PDELabInterface(object):
     # Geometry related generator functions
     #
 
-    def pymbolic_spatial_coordinate(self, restriction):
-        return to_global(pymbolic_quadrature_position_in_cell(restriction))
+    def pymbolic_spatial_coordinate(self):
+        return to_global(pymbolic_quadrature_position())
 
     def name_facet_jacobian_determinant(self):
         return name_facet_jacobian_determinant()
diff --git a/python/dune/perftool/sumfact/__init__.py b/python/dune/perftool/sumfact/__init__.py
index 60b120ce..0389416b 100644
--- a/python/dune/perftool/sumfact/__init__.py
+++ b/python/dune/perftool/sumfact/__init__.py
@@ -3,7 +3,7 @@ from dune.perftool.pdelab.argument import (name_applycontainer,
                                            )
 from dune.perftool.sumfact.quadrature import (quadrature_inames,
                                               quadrature_weight,
-                                              pymbolic_quadrature_position_in_cell,
+                                              pymbolic_quadrature_position,
                                               )
 
 from dune.perftool.sumfact.basis import (lfs_inames,
@@ -53,6 +53,6 @@ class SumFactInterface(PDELabInterface):
     def pymbolic_quadrature_weight(self):
         return quadrature_weight()
 
-    def pymbolic_spatial_coordinate(self, restriction):
+    def pymbolic_spatial_coordinate(self):
         from dune.perftool.pdelab.geometry import to_global
-        return to_global(pymbolic_quadrature_position_in_cell(restriction))
+        return to_global(pymbolic_quadrature_position())
diff --git a/python/dune/perftool/ufl/visitor.py b/python/dune/perftool/ufl/visitor.py
index f8129bf2..f8d1f7d0 100644
--- a/python/dune/perftool/ufl/visitor.py
+++ b/python/dune/perftool/ufl/visitor.py
@@ -315,7 +315,7 @@ class UFL2LoopyVisitor(ModifiedTerminalTracker):
         if get_global_context_value("driver", False):
             return prim.Variable("x")
         else:
-            return self.interface.pymbolic_spatial_coordinate(self.restriction)
+            return self.interface.pymbolic_spatial_coordinate()
 
     def facet_normal(self, o):
         # The normal must be restricted to be well-defined
-- 
GitLab