From 0e62186132462fe6a3886e0ec7fa434f34fd1e47 Mon Sep 17 00:00:00 2001 From: Timo Koch <timo.koch@iws.uni-stuttgart.de> Date: Wed, 28 Nov 2018 00:33:33 +0100 Subject: [PATCH] Revert "[veloutput] Remove numDofs function" This reverts commit 17e2a139adcd46fa007c10a8cf026d2410c3504a. --- dumux/io/vtkoutputmodule.hh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/dumux/io/vtkoutputmodule.hh b/dumux/io/vtkoutputmodule.hh index 916226f3ac..94b74580ba 100644 --- a/dumux/io/vtkoutputmodule.hh +++ b/dumux/io/vtkoutputmodule.hh @@ -81,6 +81,7 @@ class VtkOutputModule using VolVarsVector = Dune::FieldVector<Scalar, dimWorld>; static constexpr bool isBox = FVGridGeometry::discMethod == DiscretizationMethod::box; + static constexpr int dofCodim = isBox ? dim : 0; struct VolVarScalarDataInfo { std::function<Scalar(const VV&)> get; std::string name; }; struct VolVarVectorDataInfo { std::function<VolVarsVector(const VV&)> get; std::string name; }; @@ -277,7 +278,7 @@ private: || addProcessRank) { const auto numCells = fvGridGeometry().gridView().size(0); - const auto numDofs = fvGridGeometry().numDofs(); + const auto numDofs = numDofs_(); // get fields for all volume variables if (!volVarScalarDataInfo_.empty()) @@ -456,7 +457,7 @@ private: || addProcessRank) { const auto numCells = fvGridGeometry().gridView().size(0); - const auto numDofs = fvGridGeometry().numDofs(); + const auto numDofs = numDofs_(); // get fields for all volume variables if (!volVarScalarDataInfo_.empty()) @@ -598,6 +599,9 @@ private: template<class Vector, typename std::enable_if_t<!IsIndexable<decltype(std::declval<Vector>()[0])>::value, int> = 0> std::size_t getNumberOfComponents_(const Vector& v) { return 1; } + //! return the number of dofs, we only support vertex and cell data + std::size_t numDofs_() const { return dofCodim == dim ? fvGridGeometry().vertexMapper().size() : fvGridGeometry().elementMapper().size(); } + const GridVariables& gridVariables_; const SolutionVector& sol_; -- GitLab