diff --git a/python/dune/perftool/sumfact/amatrix.py b/python/dune/perftool/sumfact/amatrix.py index 1f2e81e2e155c64661e75e480ac6d47bdd683ae2..1d3fa814f18dba7b819783cdfdfd27bd5e898433 100644 --- a/python/dune/perftool/sumfact/amatrix.py +++ b/python/dune/perftool/sumfact/amatrix.py @@ -204,12 +204,13 @@ def construct_theta(name, transpose, derivative): polynomials = name_polynomials() qp = name_oned_quadrature_points() - access = "j,i" if transpose else "i,j" + # access = "j,i" if transpose else "i,j" basispol = "dp" if derivative else "p" + polynomial_access = "i,{}[j]".format(qp) if transpose else "j,{}[i]".format(qp) return ["for (std::size_t i=0; i<{}; i++){{".format(shape[0]), " for (std::size_t j=0; j<{}; j++){{".format(shape[1]), - " {}.colmajoraccess({}) = {}.{}(j,{}[i]);".format(name, access, polynomials, basispol, qp), + " {}.colmajoraccess(i,j) = {}.{}({});".format(name, polynomials, basispol, polynomial_access), " }", "}"] diff --git a/python/dune/perftool/sumfact/quadrature.py b/python/dune/perftool/sumfact/quadrature.py index b59aa21f23c0f72508a5c08a708e3d7c2a0a2146..dfc6a81db86734c327379d08cd267b984c0dff36 100644 --- a/python/dune/perftool/sumfact/quadrature.py +++ b/python/dune/perftool/sumfact/quadrature.py @@ -7,7 +7,7 @@ from dune.perftool.generation import (backend, temporary_variable, ) -from dune.perftool.sumfact.amatrix import (name_number_of_basis_functions_per_direction, +from dune.perftool.sumfact.amatrix import (name_number_of_quadrature_points_per_direction, name_oned_quadrature_points, name_oned_quadrature_weights, ) @@ -71,7 +71,7 @@ def pymbolic_base_weight(): @iname def sumfact_quad_iname(d, context): name = "quad_{}_{}".format(context, d) - domain(name, name_number_of_basis_functions_per_direction()) + domain(name, name_number_of_quadrature_points_per_direction()) return name