From f3cf167443c6f822644b533943af1730e91e75bb Mon Sep 17 00:00:00 2001
From: Oliver Sander <oliver.sander@tu-dresden.de>
Date: Mon, 1 Feb 2016 10:18:54 +0100
Subject: [PATCH] Writing VTK functions using dune-functions-2.4 needs a bit of
 special-casing

---
 src/gradient-flow.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/gradient-flow.cc b/src/gradient-flow.cc
index 596bf93a..ddc43007 100644
--- a/src/gradient-flow.cc
+++ b/src/gradient-flow.cc
@@ -10,6 +10,7 @@
 #include <dune/common/bitsetvector.hh>
 #include <dune/common/parametertree.hh>
 #include <dune/common/parametertreeparser.hh>
+#include <dune/common/version.hh>
 
 #include <dune/grid/uggrid.hh>
 #include <dune/grid/onedgrid.hh>
@@ -18,6 +19,7 @@
 #include <dune/grid/io/file/gmshreader.hh>
 #include <dune/grid/io/file/vtk.hh>
 
+#include <dune/functions/common/vtkadapter.hh>
 #include <dune/functions/gridfunctions/discreteglobalbasisfunction.hh>
 #include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
@@ -31,7 +33,9 @@
 #include <dune/solvers/solvers/iterativesolver.hh>
 #include <dune/solvers/norms/energynorm.hh>
 
+#if DUNE_VERSION_NEWER(DUNE_FUNCTIONS, 2, 5)
 #include <dune/gfe/unitvector.hh>
+#endif
 #include <dune/gfe/localgeodesicfeadolcstiffness.hh>
 #include <dune/gfe/geodesicfeassembler.hh>
 #include <dune/gfe/riemanniantrsolver.hh>
@@ -240,7 +244,11 @@ int main (int argc, char *argv[]) try
                                                                                                    xEmbedded);
 
     SubsamplingVTKWriter<GridType::LeafGridView> vtkWriter(grid->leafGridView(),0);
+#if DUNE_VERSION_NEWER(DUNE_FUNCTIONS, 2, 5)
     vtkWriter.addVertexData(xFunction, VTK::FieldInfo("orientation", VTK::FieldInfo::Type::scalar, xEmbedded[0].size()));
+#else
+    vtkWriter.addVertexData(vtkFunction(xFunction), VTK::FieldInfo("orientation", VTK::FieldInfo::Type::scalar, xEmbedded[0].size()));
+#endif
     vtkWriter.write("gradientflow_result_" + std::to_string(i));
   }
 
-- 
GitLab