diff --git a/python/dune/perftool/pdelab/driver/instationary.py b/python/dune/perftool/pdelab/driver/instationary.py
index 13a47e4dbd68251803c6e279ec612e3722adedbb..62b05366c644b43465a3227465ab844030b57b75 100644
--- a/python/dune/perftool/pdelab/driver/instationary.py
+++ b/python/dune/perftool/pdelab/driver/instationary.py
@@ -32,7 +32,7 @@ from dune.perftool.pdelab.driver.solve import (print_matrix,
                                                )
 from dune.perftool.pdelab.driver.vtk import (name_vtk_sequence_writer,
                                              visualize_initial_condition,
-                                             )
+                                             name_predicate)
 from dune.perftool.options import (get_form_option,
                                    get_option,
                                    )
@@ -58,12 +58,12 @@ def time_loop():
     vector_type = type_vector(get_form_ident())
     vector = name_vector(get_form_ident())
     interpolate_dirichlet_data(vector)
+    gfs = name_trial_gfs()
 
     is_dirichlet = preprocess_leaf_data(element, "is_dirichlet")
     assemble_new_constraints = ""
     if has_dirichlet_constraints(is_dirichlet):
         bctype = name_bctype_function(element, is_dirichlet)
-        gfs = name_trial_gfs()
         cc = name_constraintscontainer()
         assemble_new_constraints = ("  // Assemble constraints for new time step\n"
                                     "  {}.setTime({}+dt);\n"
@@ -89,6 +89,8 @@ def time_loop():
     visualize_initial_condition()
     vtk_sequence_writer = name_vtk_sequence_writer()
 
+    predicate = name_predicate()
+
     return ["",
             "double T = {}.get<double>(\"instat.T\", 1.0);".format(ini),
             "double dt = {}.get<double>(\"instat.dt\", 0.1);".format(ini),
@@ -107,6 +109,9 @@ def time_loop():
             "  step_number += 1;",
             "  if (step_number%output_every_nth == 0){",
             "    // Output to VTK File",
+            "    {}.vtkWriter()->clear();".format(vtk_sequence_writer),
+            "    Dune::PDELab::addSolutionToVTKWriter(vtkSequenceWriter, {}, {},".format(gfs, vector),
+            "                                         Dune::PDELab::vtk::defaultNameScheme(), {});".format(predicate),
             "    {}.write({}, Dune::VTK::appendedraw);".format(vtk_sequence_writer, time),
             "  }",
             "}",