From d887ec02cbec0d8eeb30cbf2db04b722b2cac1d0 Mon Sep 17 00:00:00 2001
From: Simon Praetorius <simon.praetorius@tu-dresden.de>
Date: Wed, 4 Jul 2018 15:32:29 +0200
Subject: [PATCH] rebased to develop and added small corrections

---
 src/amdis/ProblemStat.hpp         | 27 +++++++--------------------
 src/amdis/common/ConceptsBase.hpp |  1 +
 src/amdis/utility/TreeData.hpp    |  4 ----
 3 files changed, 8 insertions(+), 24 deletions(-)

diff --git a/src/amdis/ProblemStat.hpp b/src/amdis/ProblemStat.hpp
index 9fd6901a..033a6b65 100644
--- a/src/amdis/ProblemStat.hpp
+++ b/src/amdis/ProblemStat.hpp
@@ -73,7 +73,7 @@ namespace AMDiS
      **/
     explicit ProblemStat(std::string name)
       : StandardProblemIteration(dynamic_cast<ProblemStatBase&>(*this))
-      , name(std::move(name))
+      , name_(std::move(name))
     {}
 
     /// Constructor taking additionally a reference to a grid that is used
@@ -94,19 +94,6 @@ namespace AMDiS
       initGlobalBasis(*globalBasis_);
     }
 
-    /// \brief Constructor taking a grid reference and a basis reference.
-    /// Stores pointers to both.
-    ProblemStat(std::string name, Grid& grid, GlobalBasis& globalBasis)
-      : StandardProblemIteration(dynamic_cast<ProblemStatBase&>(*this))
-      , name(std::move(name))
-    {
-      gridName = "";
-      Parameters::get(name + "->mesh", gridName);
-
-      globalBasis_ = Dune::stackobject_to_shared_ptr(globalBasis);
-      initGlobalBasis(*globalBasis_);
-    }
-
 
     /**
      * \brief Initialisation of the problem.
@@ -246,9 +233,9 @@ namespace AMDiS
 
     void createGlobalBasis(std::true_type)
     {
-      assert( bool(grid) );
+      assert( bool(grid_) );
       static_assert(std::is_same<GridView, typename Grid::LeafGridView>::value, "");
-      globalBasis_ = std::make_shared<GlobalBasis>(Traits::create(grid->leafGridView()));
+      globalBasis_ = std::make_shared<GlobalBasis>(Traits::create(grid_->leafGridView()));
     }
 
     void createGlobalBasis(std::false_type)
@@ -273,10 +260,10 @@ namespace AMDiS
 
     void initGlobalBasis(GlobalBasis const& globalBasis)
     {
-      localView_ = std::make_shared<typename GlobalBasis::LocalView>(globalBasis.localView());
-      matrixOperators.init(localView_->tree(), tag::store{});
-      rhsOperators.init(localView_->tree(), tag::store{});
-      constraints.init(localView_->tree(), tag::store{});
+      localView_ = std::make_shared<typename GlobalBasis::LocalView>(globalBasis_->localView());
+      matrixOperators_.init(localView_->tree(), tag::store{});
+      rhsOperators_.init(localView_->tree(), tag::store{});
+      constraints_.init(localView_->tree(), tag::store{});
     }
 
     void createMatricesAndVectors()
diff --git a/src/amdis/common/ConceptsBase.hpp b/src/amdis/common/ConceptsBase.hpp
index a42cd50c..86a2befd 100644
--- a/src/amdis/common/ConceptsBase.hpp
+++ b/src/amdis/common/ConceptsBase.hpp
@@ -1,6 +1,7 @@
 #pragma once
 
 #include <type_traits>
+#include <dune/common/typetraits.hh>
 
 #ifdef DOXYGEN
   #define REQUIRES(...)
diff --git a/src/amdis/utility/TreeData.hpp b/src/amdis/utility/TreeData.hpp
index 9325cf13..68ae7a11 100644
--- a/src/amdis/utility/TreeData.hpp
+++ b/src/amdis/utility/TreeData.hpp
@@ -252,11 +252,7 @@ namespace AMDiS
     void init(Tree const& tree, tag::store)
     {
       Super::init(tree, tag::store{});
-<<<<<<< c786927261d1c07223ce3f9feabd89e439f2f4bb
-      AMDiS::forEachNode_(tree, [&,this](auto const& node, auto&&)
-=======
       forEachNode_(tree, [&,this](auto const& node, auto&&)
->>>>>>> compatibility with dune 2.6.0 of all dependend modules
       {
         (*this)[node].init(tree, tag::store{});
       });
-- 
GitLab