diff --git a/python/dune/perftool/blockstructured/geometry.py b/python/dune/perftool/blockstructured/geometry.py
index 31f5ac01069f2feb552e1cebfe4700a43688d2c0..ce77c3d095316a71550bb46c6b3a7da243426869 100644
--- a/python/dune/perftool/blockstructured/geometry.py
+++ b/python/dune/perftool/blockstructured/geometry.py
@@ -312,6 +312,35 @@ def name_point_in_macro(point_in_micro):
     return name
 
 
+def apply_default_to_global_transformation(name, local):
+    dim = world_dimension()
+    temporary_variable(name, shape=(dim,), managed=True)
+    corners = name_element_corners()
+
+    if isinstance(local, str):
+        local = prim.Variable(local)
+
+    d_var = prim.Variable(component_iname('to_global'))
+
+    coeffs = bilinear_transformation_coefficients()
+
+    # global[d] = T(local)[d]
+    if dim == 2:
+        a_var, b_var, c_var = [prim.Variable(coeff) for coeff in coeffs]
+        expr = (prim.Subscript(a_var, (d_var)) * prim.Subscript(local, (0,)) * prim.Subscript(local, (1,)) +
+                prim.Subscript(b_var, (d_var,)) * prim.Subscript(local, (0,)) +
+                prim.Subscript(c_var, (d_var,)) * prim.Subscript(local, (1,)) +
+                prim.Subscript(prim.Variable(corners), (0, d_var)))
+
+    assignee = prim.Subscript(prim.Variable(name), (d_var,))
+
+    instruction(assignee=assignee, expression=expr,
+                within_inames=frozenset(sub_element_inames() + get_backend(interface="quad_inames")() + (d_var.name,)),
+                within_inames_is_final=True,
+                depends_on=frozenset({Writes(local.name), Writes(corners)})
+                )
+
+
 def apply_constant_to_global_transformation(name, local):
     dim = world_dimension()
     temporary_variable(name, shape=(dim,), managed=True)
@@ -344,6 +373,5 @@ def to_global(local):
     if get_form_option("constant_transformation_matrix"):
         apply_constant_to_global_transformation(name, prim.Variable(macro))
     else:
-        from dune.perftool.pdelab.geometry import apply_to_global_transformation
-        apply_to_global_transformation(name, prim.Variable(macro))
+        apply_default_to_global_transformation(name, prim.Variable(macro))
     return prim.Variable(name)