Commit 384b27d4 authored by Praetorius, Simon's avatar Praetorius, Simon
Browse files

compatibility with dune 2.6.0 of all dependend modules

parent c7869272
...@@ -7,5 +7,5 @@ Module: amdis ...@@ -7,5 +7,5 @@ Module: amdis
Version: 0.1 Version: 0.1
Maintainer: simon.praetorius@tu-dresden.de Maintainer: simon.praetorius@tu-dresden.de
#depending on #depending on
Depends: dune-common dune-geometry dune-localfunctions dune-typetree dune-grid dune-functions Depends: dune-common (>= 2.6) dune-geometry (>= 2.6) dune-localfunctions (>= 2.6) dune-typetree (>= 2.6) dune-grid (>= 2.6) dune-functions (>= 2.6)
#Suggests: dune-uggrid dune-alugrid dune-foamgrid #Suggests: dune-uggrid dune-alugrid dune-foamgrid
...@@ -36,15 +36,11 @@ int main(int argc, char** argv) ...@@ -36,15 +36,11 @@ int main(int argc, char** argv)
return {-20.0 * std::exp(-10.0 * dot(x,x)) * x}; return {-20.0 * std::exp(-10.0 * dot(x,x)) * x};
}; };
using Grid = Dune::YaspGrid<AMDIS_DIM>; ElliptProblem prob("ellipt");
auto gridPtr = MeshCreator<Grid>::create("mesh");
auto basis = makeBasis(gridPtr->leafGridView(), lagrange<1>());
auto prob = makeProblemStat("ellipt", *gridPtr, basis);
prob.initialize(INIT_ALL); prob.initialize(INIT_ALL);
auto opL = makeOperator(tag::gradtest_gradtrial{}, 1.0); auto opL = makeOperator(tag::gradtest_gradtrial{}, 1.0);
prob.addMatrixOperator(opL); prob.addMatrixOperator(opL, _0, _0);
auto opForce = makeOperator(tag::test{}, f, 6); auto opForce = makeOperator(tag::test{}, f, 6);
prob.addVectorOperator(opForce, _0); prob.addVectorOperator(opForce, _0);
...@@ -60,7 +56,7 @@ int main(int argc, char** argv) ...@@ -60,7 +56,7 @@ int main(int argc, char** argv)
std::vector<double> widths; widths.reserve(numLevels); std::vector<double> widths; widths.reserve(numLevels);
for (int i = 0; i < numLevels; ++i) { for (int i = 0; i < numLevels; ++i) {
prob.getGrid()->globalRefine(1); prob.getGrid()->globalRefine(1);
auto gridView = prob.getGlobalBasis()->gridView(); auto gridView = prob.gridView();
double h = 0; double h = 0;
for (auto const& e : edges(gridView)) for (auto const& e : edges(gridView))
...@@ -76,7 +72,7 @@ int main(int argc, char** argv) ...@@ -76,7 +72,7 @@ int main(int argc, char** argv)
errH1.push_back(std::sqrt(errorH1)); errH1.push_back(std::sqrt(errorH1));
#if WRITE_FILES #if WRITE_FILES
Dune::VTKWriter<typename ElliptProblem::GridView> vtkWriter(prob.getGlobalBasis()->gridView()); Dune::VTKWriter<typename ElliptProblem::GridView> vtkWriter(gridView);
vtkWriter.addVertexData(prob.getSolution(_0), Dune::VTK::FieldInfo("u", Dune::VTK::FieldInfo::Type::scalar, 1)); vtkWriter.addVertexData(prob.getSolution(_0), Dune::VTK::FieldInfo("u", Dune::VTK::FieldInfo::Type::scalar, 1));
vtkWriter.write("u_" + std::to_string(i)); vtkWriter.write("u_" + std::to_string(i));
#endif #endif
......
...@@ -13,44 +13,44 @@ ...@@ -13,44 +13,44 @@
using namespace AMDiS; using namespace AMDiS;
// 1 component with polynomial degree 1
//using Grid = Dune::AlbertaGrid<AMDIS_DIM, AMDIS_DOW>;
using HeatParam = YaspGridBasis<AMDIS_DIM, 2>;
using HeatProblem = ProblemStat<HeatParam>;
using HeatProblemInstat = ProblemInstat<HeatParam>;
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
AMDiS::init(argc, argv); AMDiS::init(argc, argv);
using Grid = Dune::YaspGrid<AMDIS_DIM>; HeatProblem prob("heat");
auto gridPtr = MeshCreator<Grid>::create("mesh");
auto basis = makeBasis(gridPtr->leafGridView(), lagrange<2>());
auto prob = makeProblemStat("heat", *gridPtr, basis);
prob.initialize(INIT_ALL); prob.initialize(INIT_ALL);
auto probInstat = makeProblemInstat("heat", prob); HeatProblemInstat probInstat("heat", prob);
probInstat.initialize(INIT_UH_OLD); probInstat.initialize(INIT_UH_OLD);
AdaptInfo adaptInfo("adapt"); AdaptInfo adaptInfo("adapt");
double* invTau = probInstat.getInvTau(); double* invTau = probInstat.getInvTau();
auto _ = Dune::TypeTree::hybridTreePath();
auto opTimeLhs = makeOperator(tag::test_trial{}, std::ref(*invTau)); auto opTimeLhs = makeOperator(tag::test_trial{}, std::ref(*invTau));
prob.addMatrixOperator(opTimeLhs, _, _); prob.addMatrixOperator(opTimeLhs, 0, 0);
auto opL = makeOperator(tag::gradtest_gradtrial{}, 1.0); auto opL = makeOperator(tag::gradtest_gradtrial{}, 1.0);
prob.addMatrixOperator(opL, _, _); prob.addMatrixOperator(opL, 0, 0);
auto opTimeRhs = makeOperator(tag::test{}, auto opTimeRhs = makeOperator(tag::test{},
invokeAtQP([invTau](double u) { return u * (*invTau); }, prob.getSolution()), 2); invokeAtQP([invTau](double u) { return u * (*invTau); }, prob.getSolution(0)), 2);
prob.addVectorOperator(opTimeRhs, _); prob.addVectorOperator(opTimeRhs, 0);
auto opForce = makeOperator(tag::test{}, [](auto const& x) { return -1.0; }, 0); auto opForce = makeOperator(tag::test{}, [](auto const& x) { return -1.0; }, 0);
prob.addVectorOperator(opForce, _); prob.addVectorOperator(opForce, 0);
// set boundary condition // set boundary condition
auto predicate = [](auto const& p){ return p[0] < 1.e-8 || p[1] < 1.e-8; }; auto predicate = [](auto const& p){ return p[0] < 1.e-8 || p[1] < 1.e-8; };
auto dbcValues = [](auto const& p){ return 0.0; }; auto dbcValues = [](auto const& p){ return 0.0; };
prob.addDirichletBC(predicate, _, _, dbcValues); prob.addDirichletBC(predicate, 0, 0, dbcValues);
AdaptInstationary adapt("adapt", prob, adaptInfo, probInstat, adaptInfo); AdaptInstationary adapt("adapt", prob, adaptInfo, probInstat, adaptInfo);
adapt.adapt(); adapt.adapt();
......
...@@ -12,20 +12,23 @@ ...@@ -12,20 +12,23 @@
using namespace AMDiS; using namespace AMDiS;
int main(int argc, char** argv) struct NavierStokesBasis
{ {
AMDiS::init(argc, argv);
using Grid = Dune::YaspGrid<AMDIS_DIM>; using Grid = Dune::YaspGrid<AMDIS_DIM>;
auto gridPtr = MeshCreator<Grid>::create("mesh"); using GlobalBasis = typename TaylorHoodBasis<Grid::LeafGridView>::GlobalBasis;
};
using StokesProblem = ProblemStat<NavierStokesBasis>;
using StokesProblemInstat = ProblemInstat<NavierStokesBasis>;
auto preBasis = compose(repeat<AMDIS_DOW>(lagrange<2>()), lagrange<1>()); int main(int argc, char** argv)
auto basis = makeBasis(gridPtr->leafGridView(), preBasis); {
AMDiS::init(argc, argv);
auto prob = makeProblemStat("stokes", *gridPtr, basis); StokesProblem prob("stokes");
prob.initialize(INIT_ALL); prob.initialize(INIT_ALL);
auto probInstat = makeProblemInstat("stokes", prob); StokesProblemInstat probInstat("stokes", prob);
probInstat.initialize(INIT_UH_OLD); probInstat.initialize(INIT_UH_OLD);
double viscosity = 1.0; double viscosity = 1.0;
......
...@@ -13,16 +13,17 @@ ...@@ -13,16 +13,17 @@
using namespace AMDiS; using namespace AMDiS;
// 3 components: velocity with polynomial degree 2 and pressure with polynomial degree 1
using Grid = Dune::YaspGrid<AMDIS_DIM>;
using StokesParam = TaylorHoodBasis<Grid::LeafGridView>;
using StokesProblem = ProblemStat<StokesParam>;
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
AMDiS::init(argc, argv); AMDiS::init(argc, argv);
using Grid = Dune::YaspGrid<AMDIS_DIM>; StokesProblem prob("stokes");
auto gridPtr = MeshCreator<Grid>::create("mesh");
auto preBasis = compose(repeat<AMDIS_DOW>(lagrange<2>()), lagrange<1>());
auto basis = makeBasis(gridPtr->leafGridView(), preBasis);
auto prob = makeProblemStat("stokes", *gridPtr, basis);
prob.initialize(INIT_ALL); prob.initialize(INIT_ALL);
double viscosity = 1.0; double viscosity = 1.0;
......
...@@ -13,17 +13,17 @@ ...@@ -13,17 +13,17 @@
using namespace AMDiS; using namespace AMDiS;
// 3 components: velocity with polynomial degree 2 and pressure with polynomial degree 1
using Grid = Dune::YaspGrid<AMDIS_DIM>;
using StokesParam = TaylorHoodBasis<Grid::LeafGridView>;
using StokesProblem = ProblemStat<StokesParam>;
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
AMDiS::init(argc, argv); AMDiS::init(argc, argv);
using Grid = Dune::YaspGrid<AMDIS_DIM>; StokesProblem prob("stokes");
auto gridPtr = MeshCreator<Grid>::create("mesh");
auto preBasis = compose(repeat<AMDIS_DOW>(lagrange<2>()), lagrange<1>());
auto basis = makeBasis(gridPtr->leafGridView(), preBasis);
auto prob = makeProblemStat("stokes", *gridPtr, basis);
prob.initialize(INIT_ALL); prob.initialize(INIT_ALL);
double viscosity = 1.0; double viscosity = 1.0;
......
...@@ -9,17 +9,15 @@ ...@@ -9,17 +9,15 @@
using namespace AMDiS; using namespace AMDiS;
using Grid = Dune::YaspGrid<AMDIS_DIM>;
using StokesParam = TaylorHoodBasis<Grid::LeafGridView>;
using StokesProblem = ProblemStat<StokesParam>;
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
AMDiS::init(argc, argv); AMDiS::init(argc, argv);
using Grid = Dune::YaspGrid<AMDIS_DIM>; StokesProblem prob("stokes");
auto gridPtr = MeshCreator<Grid>::create("mesh");
auto preBasis = compose(repeat<AMDIS_DOW>(lagrange<2>()), lagrange<1>());
auto basis = makeBasis(gridPtr->leafGridView(), preBasis);
auto prob = makeProblemStat("stokes", *gridPtr, basis);
prob.initialize(INIT_ALL); prob.initialize(INIT_ALL);
double viscosity = 1.0; double viscosity = 1.0;
...@@ -40,12 +38,12 @@ int main(int argc, char** argv) ...@@ -40,12 +38,12 @@ int main(int argc, char** argv)
auto not_left = [](auto const& x) { return x[0] > 1.0 - 1.e-8 || x[1] < 1.e-8 || x[1] > 1.0 - 1.e-8; }; auto not_left = [](auto const& x) { return x[0] > 1.0 - 1.e-8 || x[1] < 1.e-8 || x[1] > 1.0 - 1.e-8; };
// define boundary values // define boundary values
auto parabolic_y = [](auto const& x) -> Dune::FieldVector<double,2> auto parabolic_y = [](auto const& x) -> FieldVector<double,2>
{ {
return {0.0, x[1]*(1.0 - x[1])}; return {0.0, x[1]*(1.0 - x[1])};
}; };
auto zero = [](auto const& x) -> Dune::FieldVector<double,2> auto zero = [](auto const& x) -> FieldVector<double,2>
{ {
return {0.0, 0.0}; return {0.0, 0.0};
}; };
......
...@@ -6,17 +6,16 @@ ...@@ -6,17 +6,16 @@
using namespace AMDiS; using namespace AMDiS;
// 1 component with polynomial degree 1
//using Grid = Dune::AlbertaGrid<AMDIS_DIM, AMDIS_DOW>;
using ElliptParam = YaspGridBasis<AMDIS_DIM, 2,2>;
using ElliptProblem = ProblemStat<ElliptParam>;
int main(int argc, char** argv) int main(int argc, char** argv)
{ {
AMDiS::init(argc, argv); AMDiS::init(argc, argv);
using Grid = Dune::YaspGrid<AMDIS_DIM>; ElliptProblem prob("ellipt");
auto gridPtr = MeshCreator<Grid>::create("mesh");
auto preBasis = repeat<2>(lagrange<2>());
auto basis = makeBasis(gridPtr->leafGridView(), preBasis);
auto prob = makeProblemStat("stokes", *gridPtr, basis);
prob.initialize(INIT_ALL); prob.initialize(INIT_ALL);
AdaptInfo adaptInfo("adapt"); AdaptInfo adaptInfo("adapt");
......
...@@ -37,7 +37,7 @@ void Assembler<Traits>::assemble( ...@@ -37,7 +37,7 @@ void Assembler<Traits>::assemble(
auto geometry = element.geometry(); auto geometry = element.geometry();
// traverse type-tree of global-basis // traverse type-tree of global-basis
AMDiS::forEachNode_(localView.tree(), [&,this](auto const& rowNode, auto rowTreePath) forEachNode_(localView.tree(), [&,this](auto const& rowNode, auto rowTreePath)
{ {
auto rowBasis = Dune::Functions::subspaceBasis(globalBasis_, rowTreePath); auto rowBasis = Dune::Functions::subspaceBasis(globalBasis_, rowTreePath);
auto rowLocalView = rowBasis.localView(); auto rowLocalView = rowBasis.localView();
...@@ -55,7 +55,7 @@ void Assembler<Traits>::assemble( ...@@ -55,7 +55,7 @@ void Assembler<Traits>::assemble(
this->assembleElementOperators(element, rhsOp, vecAssembler); this->assembleElementOperators(element, rhsOp, vecAssembler);
} }
AMDiS::forEachNode_(localView.tree(), [&,this](auto const& colNode, auto colTreePath) forEachNode_(localView.tree(), [&,this](auto const& colNode, auto colTreePath)
{ {
auto& matOp = matrixOperators_[rowNode][colNode]; auto& matOp = matrixOperators_[rowNode][colNode];
if (matOp.doAssemble(asmMatrix) && !matOp.empty()) { if (matOp.doAssemble(asmMatrix) && !matOp.empty()) {
...@@ -95,9 +95,9 @@ void Assembler<Traits>::assemble( ...@@ -95,9 +95,9 @@ void Assembler<Traits>::assemble(
} }
// unbind all operators // unbind all operators
AMDiS::forEachNode_(localView.tree(), [&,this](auto const& rowNode, auto&&) { forEachNode_(localView.tree(), [&,this](auto const& rowNode, auto&&) {
rhsOperators_[rowNode].unbind(); rhsOperators_[rowNode].unbind();
AMDiS::forEachNode_(localView.tree(), [&,this](auto const& colNode, auto&&) { forEachNode_(localView.tree(), [&,this](auto const& colNode, auto&&) {
matrixOperators_[rowNode][colNode].unbind(); matrixOperators_[rowNode][colNode].unbind();
}); });
}); });
...@@ -151,7 +151,7 @@ void Assembler<Traits>::initMatrixVector( ...@@ -151,7 +151,7 @@ void Assembler<Traits>::initMatrixVector(
rhs = 0; rhs = 0;
auto localView = globalBasis_.localView(); auto localView = globalBasis_.localView();
AMDiS::forEachNode_(localView.tree(), [&,this](auto const& rowNode, auto rowTreePath) forEachNode_(localView.tree(), [&,this](auto const& rowNode, auto rowTreePath)
{ {
#ifdef HAVE_EXTENDED_DUNE_FUNCTIONS #ifdef HAVE_EXTENDED_DUNE_FUNCTIONS
if (rowNode.isLeaf) if (rowNode.isLeaf)
...@@ -160,7 +160,7 @@ void Assembler<Traits>::initMatrixVector( ...@@ -160,7 +160,7 @@ void Assembler<Traits>::initMatrixVector(
auto rowBasis = Dune::Functions::subspaceBasis(globalBasis_, rowTreePath); auto rowBasis = Dune::Functions::subspaceBasis(globalBasis_, rowTreePath);
AMDiS::forEachNode_(localView.tree(), [&,this](auto const& colNode, auto colTreePath) forEachNode_(localView.tree(), [&,this](auto const& colNode, auto colTreePath)
{ {
auto colBasis = Dune::Functions::subspaceBasis(globalBasis_, colTreePath); auto colBasis = Dune::Functions::subspaceBasis(globalBasis_, colTreePath);
...@@ -183,14 +183,14 @@ std::size_t Assembler<Traits>::finishMatrixVector( ...@@ -183,14 +183,14 @@ std::size_t Assembler<Traits>::finishMatrixVector(
matrix.finish(); matrix.finish();
auto localView = globalBasis_.localView(); auto localView = globalBasis_.localView();
AMDiS::forEachNode_(localView.tree(), [&,this](auto const& rowNode, auto rowTreePath) forEachNode_(localView.tree(), [&,this](auto const& rowNode, auto rowTreePath)
{ {
auto rowBasis = Dune::Functions::subspaceBasis(globalBasis_, rowTreePath); auto rowBasis = Dune::Functions::subspaceBasis(globalBasis_, rowTreePath);
auto& rhsOp = rhsOperators_[rowNode]; auto& rhsOp = rhsOperators_[rowNode];
if (rhsOp.doAssemble(asmVector)) if (rhsOp.doAssemble(asmVector))
rhsOp.assembled = true; rhsOp.assembled = true;
AMDiS::forEachNode_(localView.tree(), [&,this](auto const& colNode, auto colTreePath) forEachNode_(localView.tree(), [&,this](auto const& colNode, auto colTreePath)
{ {
auto colBasis = Dune::Functions::subspaceBasis(globalBasis_, colTreePath); auto colBasis = Dune::Functions::subspaceBasis(globalBasis_, colTreePath);
auto& matOp = matrixOperators_[rowNode][colNode]; auto& matOp = matrixOperators_[rowNode][colNode];
......
...@@ -5,9 +5,13 @@ ...@@ -5,9 +5,13 @@
#include <type_traits> #include <type_traits>
#include <vector> #include <vector>
#include <dune/common/hybridutilities.hh>
#include <dune/functions/functionspacebases/interpolate.hh>
#include <amdis/Output.hpp> #include <amdis/Output.hpp>
#include <amdis/common/Concepts.hpp> #include <amdis/common/Concepts.hpp>
#include <amdis/common/ValueCategory.hpp> #include <amdis/common/ValueCategory.hpp>
#include <amdis/linear_algebra/mtl/MTLDenseVector.hpp>
#include <amdis/utility/RangeType.hpp> #include <amdis/utility/RangeType.hpp>
#include <amdis/utility/TreeData.hpp> #include <amdis/utility/TreeData.hpp>
...@@ -75,7 +79,18 @@ namespace AMDiS ...@@ -75,7 +79,18 @@ namespace AMDiS
test_exit_dbg(initialized_, "Boundary condition not initialized!"); test_exit_dbg(initialized_, "Boundary condition not initialized!");
auto columns = matrix.applyDirichletBC(dirichletNodes_); auto columns = matrix.applyDirichletBC(dirichletNodes_);
finishImpl(matrix, rhs, solution, rowBasis, colBasis, ValueCategory_t<Range>{}); using Dune::Functions::interpolate;
Dune::Hybrid::ifElse(std::is_same<RangeType_t<typename RowBasis::LocalView::Tree>, Range>{},
[&](auto id) {
auto rhsWrapper = wrapper(rhs.getVector());
interpolate(id(rowBasis), rhsWrapper, values_, dirichletNodes_);
});
Dune::Hybrid::ifElse(std::is_same<RangeType_t<typename ColBasis::LocalView::Tree>, Range>{},
[&](auto id) {
auto solutionWrapper = wrapper(solution.getVector());
interpolate(id(colBasis), solutionWrapper, values_, dirichletNodes_);
});
// subtract columns of dirichlet nodes from rhs // subtract columns of dirichlet nodes from rhs
// for (auto const& triplet : columns) // for (auto const& triplet : columns)
...@@ -96,16 +111,6 @@ namespace AMDiS ...@@ -96,16 +111,6 @@ namespace AMDiS
template <class RB, class RowNodeTag> template <class RB, class RowNodeTag>
void initImpl(RB const&, RowNodeTag) {} void initImpl(RB const&, RowNodeTag) {}
template <class Matrix, class VectorX, class VectorB, class RowBasis, class ColBasis, class ValueCat>
void finishImpl(Matrix& matrix, VectorX& rhs, VectorB& solution,
RowBasis const& rowBasis, ColBasis const& colBasis,
ValueCat);
template <class Matrix, class VectorX, class VectorB, class RowBasis, class ColBasis>
void finishImpl(Matrix& matrix, VectorX& rhs, VectorB& solution,
RowBasis const& rowBasis, ColBasis const& colBasis,
tag::unknown) {}
private: private:
std::function<bool(Domain)> predicate_; std::function<bool(Domain)> predicate_;
std::function<Range(Domain)> values_; std::function<Range(Domain)> values_;
......
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
#include <dune/functions/functionspacebases/subspacebasis.hh> #include <dune/functions/functionspacebases/subspacebasis.hh>
#include <amdis/LinearAlgebra.hpp> #include <amdis/LinearAlgebra.hpp>
#include <amdis/linear_algebra/HierarchicWrapper.hpp> #include <amdis/linear_algebra/HierarchicWrapper.hpp>
#include <amdis/linear_algebra/mtl/MTLDenseVector.hpp>
namespace AMDiS namespace AMDiS
{ {
...@@ -13,7 +14,7 @@ namespace AMDiS ...@@ -13,7 +14,7 @@ namespace AMDiS
RowBasis const& rowBasis, Dune::TypeTree::LeafNodeTag) RowBasis const& rowBasis, Dune::TypeTree::LeafNodeTag)
{ {
using Dune::Functions::interpolate; using Dune::Functions::interpolate;
interpolate(rowBasis, hierarchicVectorWrapper(dirichletNodes_), predicate_); interpolate(rowBasis, dirichletNodes_, predicate_);
} }
template <class WorldVector, class Range> template <class WorldVector, class Range>
...@@ -46,19 +47,4 @@ namespace AMDiS ...@@ -46,19 +47,4 @@ namespace AMDiS
}); });
} }
template <class WorldVector, class Range>
template <class Matrix, class VectorX, class VectorB, class RowBasis, class ColBasis, class ValueCat>
void DirichletBC<WorldVector, Range>::finishImpl(
Matrix& matrix, VectorX& solution, VectorB& rhs,
RowBasis const& rowBasis, ColBasis const& colBasis, ValueCat)
{
using Dune::Functions::interpolate;
interpolate(rowBasis, hierarchicVectorWrapper(rhs.getVector()), values_,
hierarchicVectorWrapper(dirichletNodes_));
interpolate(colBasis, hierarchicVectorWrapper(solution.getVector()), values_,
hierarchicVectorWrapper(dirichletNodes_));
}
} // end namespace AMDiS } // end namespace AMDiS
...@@ -45,7 +45,7 @@ void ProblemInstat<Traits>::createUhOld() ...@@ -45,7 +45,7 @@ void ProblemInstat<Traits>::createUhOld()
if (oldSolution) if (oldSolution)
warning("oldSolution already created\n"); warning("oldSolution already created\n");
else // create oldSolution else // create oldSolution
oldSolution.reset(new SystemVector(*problemStat.getGlobalBasis(), name + "_uOld")); oldSolution.reset(new SystemVector(*problemStat.globalBasis(), name + "_uOld"));
} }
......
...@@ -67,7 +67,6 @@ namespace AMDiS ...@@ -67,7 +67,6 @@ namespace AMDiS
using LinearSolverType = LinearSolverInterface<typename SystemMatrix::BaseMatrix, typename SystemVector::BaseVector>; using LinearSolverType = LinearSolverInterface<typename SystemMatrix::BaseMatrix, typename SystemVector::BaseVector>;
public: public:
#if 0
/** /**
* \brief Constructor. Takes the name of the problem that is used to * \brief Constructor. Takes the name of the problem that is used to
* access values corresponding to this problem in the parameter file. * access values corresponding to this problem in the parameter file.
...@@ -94,7 +93,6 @@ namespace AMDiS ...@@ -94,7 +93,6 @@ namespace AMDiS
globalBasis_ = Dune::stackobject_to_shared_ptr(globalBasis); globalBasis_ = Dune::stackobject_to_shared_ptr(globalBasis);
initGlobalBasis(*globalBasis_); initGlobalBasis(*globalBasis_);
} }
#endif
/// \brief Constructor taking a grid reference and a basis reference. /// \brief Constructor taking a grid reference and a basis reference.
/// Stores pointers to both. /// Stores pointers to both.
...@@ -211,7 +209,6 @@ namespace AMDiS ...@@ -211,7 +209,6 @@ namespace AMDiS
/// Return a pointer to the grid, \ref grid