Skip to content
Snippets Groups Projects
Commit b1d53d02 authored by akbib's avatar akbib Committed by akbib
Browse files

Use LeafBoundaryPatch members instead of prolongating the LevelPatches from the base class

[[Imported from SVN: r12673]]
parent 79521693
No related branches found
No related tags found
No related merge requests found
...@@ -71,10 +71,8 @@ computeP2DofsPerFace(std::map<Dune::GeometryType, std::vector<std::vector<int> > ...@@ -71,10 +71,8 @@ computeP2DofsPerFace(std::map<Dune::GeometryType, std::vector<std::vector<int> >
} }
template <class field_type, class GridType0, class GridType1> template <class field_type, class GridType0, class GridType1>
void LeafP2MortarCoupling<field_type, GridType0,GridType1>::setup(const BasisGridFunction<P2NodalBasis<typename GridType0::LeafGridView, field_type>, void LeafP2MortarCoupling<field_type, GridType0,GridType1>::setup(const BasisGridFunction<P2Basis0, VectorType0>& sol0,
Dune::BlockVector<Dune::FieldVector<field_type, GridType0::dimension> > >& sol0, const BasisGridFunction<P2Basis1, VectorType1>& sol1)
const BasisGridFunction<P2NodalBasis<typename GridType1::LeafGridView, field_type>,
Dune::BlockVector<Dune::FieldVector<field_type, GridType0::dimension> > >& sol1)
{ {
using namespace Dune; using namespace Dune;
...@@ -85,22 +83,16 @@ void LeafP2MortarCoupling<field_type, GridType0,GridType1>::setup(const BasisGri ...@@ -85,22 +83,16 @@ void LeafP2MortarCoupling<field_type, GridType0,GridType1>::setup(const BasisGri
typedef typename GridType0::LeafGridView GridView0; typedef typename GridType0::LeafGridView GridView0;
typedef typename GridType1::LeafGridView GridView1; typedef typename GridType1::LeafGridView GridView1;
GridView0 gridView0 = this->grid0_->leafGridView(); const GridView0& gridView0 = nmBoundary_.gridView();
GridView1 gridView1 = this->grid1_->leafGridView(); const GridView1& gridView1 = mBoundary_.gridView();
typedef Dune::GridGlue::Codim1Extractor<GridView0> Extractor0; typedef Dune::GridGlue::Codim1Extractor<GridView0> Extractor0;
typedef Dune::GridGlue::Codim1Extractor<GridView1> Extractor1; typedef Dune::GridGlue::Codim1Extractor<GridView1> Extractor1;
typedef ::GridGlue<Extractor0,Extractor1> GlueType; typedef ::GridGlue<Extractor0,Extractor1> GlueType;
BoundaryPatch<GridView0> leafNonmortarBoundary(gridView0); BoundaryPatchFaceDescriptor<GridView0> desc0(&nmBoundary_);
BoundaryPatch<GridView0> leafMortarBoundary(gridView1); BoundaryPatchFaceDescriptor<GridView1> desc1(&mBoundary_);
BoundaryPatchProlongator<GridType0>::prolong((*this->nonmortarBoundary_)[0],leafNonmortarBoundary);
BoundaryPatchProlongator<GridType1>::prolong((*this->mortarBoundary_)[0],leafMortarBoundary);
BoundaryPatchFaceDescriptor<GridView0> desc0(&leafNonmortarBoundary);
BoundaryPatchFaceDescriptor<GridView1> desc1(&leafMortarBoundary);
Extractor0 extract0(gridView0,desc0); Extractor0 extract0(gridView0,desc0);
Extractor1 extract1(gridView1,desc1); Extractor1 extract1(gridView1,desc1);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment