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