From 0c647f06cf6e0730567c49085a753b2b1a666fe8 Mon Sep 17 00:00:00 2001
From: Marcel Koch <marcel.koch@uni-muenster.de>
Date: Thu, 30 Nov 2017 13:49:27 +0100
Subject: [PATCH] adjust subsamplingvtkwriter to changes in dune-grid 2.6

Additionally, uses the right number of subrefined intervals in the blockstructured case
---
 python/dune/perftool/pdelab/driver/vtk.py | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/python/dune/perftool/pdelab/driver/vtk.py b/python/dune/perftool/pdelab/driver/vtk.py
index 824f24de..6b8b52ad 100644
--- a/python/dune/perftool/pdelab/driver/vtk.py
+++ b/python/dune/perftool/pdelab/driver/vtk.py
@@ -1,6 +1,7 @@
 from dune.perftool.generation import (include_file,
                                       preamble,
                                       )
+from dune.perftool.options import get_option
 from dune.perftool.pdelab.driver import (get_formdata,
                                          get_trial_element,
                                          name_initree,
@@ -44,19 +45,21 @@ def define_subsamplinglevel(name):
     degree = get_trial_element().degree()
     if isinstance(degree, tuple):
         degree = max(degree)
-    return "int {} = {}.get<int>(\"vtk.subsamplinglevel\", {});".format(name, ini, max(degree - 1, 0))
+    if get_option("blockstructured"):
+        degree *= get_option("number_of_blocks")
+    return "Dune::RefinementIntervals {}({}.get<int>(\"vtk.subsamplinglevel\", {}));".format(name, ini, max(degree, 1))
 
 
-def name_subsamplinglevel():
-    define_subsamplinglevel("sublevel")
-    return "sublevel"
+def name_subsamplingintervals():
+    define_subsamplinglevel("subint")
+    return "subint"
 
 
 @preamble
 def define_vtkwriter(name):
     _type = type_vtkwriter()
     gv = name_leafview()
-    subsamp = name_subsamplinglevel()
+    subsamp = name_subsamplingintervals()
     return "{} {}({}, {});".format(_type, name, gv, subsamp)
 
 
-- 
GitLab