From e09f0b28ead5031a0c1e5982e947b7288b78aa7f Mon Sep 17 00:00:00 2001 From: Lukas Riedel Date: Mon, 19 Feb 2018 13:31:38 +0000 Subject: [PATCH] Merge branch 'feature/41-enable-vtk-vertex-plotting' into 'master' Add new config key 'output.vertexData' for plotting vertex data Closes #41 See merge request dorie/dorie!21 (cherry picked from commit af1621229535e64f1b920641c41098512dd4e6b6) --- doc/default_files/parameters.xml | 11 +++++++++++ dune/dorie/interface/output.hh | 19 ++++++++++++++----- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/doc/default_files/parameters.xml b/doc/default_files/parameters.xml index 42775e2b..44a116a3 100644 --- a/doc/default_files/parameters.xml +++ b/doc/default_files/parameters.xml @@ -50,6 +50,17 @@ adding an empty line, make text **bold** or ``monospaced``. string + + Plot vertex based (``true``) or cell-centered (``false``) + data into VTK files. Vertex based data might render sharp + parameterization boundaries inappropriately. + System tests and plotting functions (``dorie plot``) require + cell-centered data. + + true, false + false + + Defines whether VTK files should be written as ASCII (``true``) or binary (``false``). ASCII is easier to parse in case you want to write diff --git a/dune/dorie/interface/output.hh b/dune/dorie/interface/output.hh index d5c0aa46..fb2130cf 100644 --- a/dune/dorie/interface/output.hh +++ b/dune/dorie/interface/output.hh @@ -77,11 +77,20 @@ public: auto waterdgf_vtk = std::make_shared>(waterdgf,"theta_w"); auto satdgf_vtk = std::make_shared>(satdgf,"Theta"); - vtkwriter.addCellData(udgf_vtk); - vtkwriter.addCellData(fluxdgf_vtk); - vtkwriter.addCellData(condgf_vtk); - vtkwriter.addCellData(waterdgf_vtk); - vtkwriter.addCellData(satdgf_vtk); + if (_inifile.get("output.vertexData")) { + vtkwriter.addVertexData(udgf_vtk); + vtkwriter.addVertexData(fluxdgf_vtk); + vtkwriter.addVertexData(condgf_vtk); + vtkwriter.addVertexData(waterdgf_vtk); + vtkwriter.addVertexData(satdgf_vtk); + } + else { + vtkwriter.addCellData(udgf_vtk); + vtkwriter.addCellData(fluxdgf_vtk); + vtkwriter.addCellData(condgf_vtk); + vtkwriter.addCellData(waterdgf_vtk); + vtkwriter.addCellData(satdgf_vtk); + } } /// Write the VTK files for the current solution unew -- GitLab