diff --git a/python/dune/perftool/sumfact/basis.py b/python/dune/perftool/sumfact/basis.py index 4657cded8e573d3f366d38978341ef686ab9049d..a2e774e4e566fcdef747da4418539f9f612dc637 100644 --- a/python/dune/perftool/sumfact/basis.py +++ b/python/dune/perftool/sumfact/basis.py @@ -109,7 +109,7 @@ def pymbolic_coefficient_gradient(element, restriction, component, coeff_func, v for i, buf in enumerate(buffers): # Write solution from sumfactorization to gradient variable assignee = prim.Subscript(prim.Variable(name), i) - expression = prim.Subscript(buf, tuple(prim.Variable(i) for i in quadrature_inames())) + expression = prim.Subscript(buf, vsf.quadrature_index(sf)) instruction(assignee=assignee, expression=expression, forced_iname_deps=frozenset(get_backend("quad_inames")()), @@ -141,7 +141,7 @@ def pymbolic_coefficient(element, restriction, component, coeff_func, visitor): var, _ = realize_sum_factorization_kernel(vsf) return prim.Subscript(var, - tuple(prim.Variable(i) for i in quadrature_inames()) + vsf.vec_index_tuple(sf) + vsf.quadrature_index(sf) ), visitor.indices