diff --git a/python/dune/perftool/ufl/visitor.py b/python/dune/perftool/ufl/visitor.py index b82b7fc9b2b7c2c86a68389a8bca3a22ca0b6327..f4acf9d92527483532fefaaa48ea47480c67b937 100644 --- a/python/dune/perftool/ufl/visitor.py +++ b/python/dune/perftool/ufl/visitor.py @@ -232,7 +232,12 @@ class UFL2LoopyVisitor(ModifiedTerminalTracker): return self._index_or_fixed_index(o) def list_tensor(self, o): - return self.interface.pymbolic_list_tensor(o) + if all(isinstance(i, int) for i in self.indices): + index = self.indices[0] + self.indices = self.indices[1:] + return self.call(o.ufl_operands[index]) + else: + return self.interface.pymbolic_list_tensor(o) def identity(self, o): return self.interface.pymbolic_identity(o)