From a55fcfdc69375631f5d720ea7d57b41144c65b1c Mon Sep 17 00:00:00 2001 From: Kilian Weishaupt <kilian.weishaupt@iws.uni-stuttgart.de> Date: Fri, 18 Nov 2016 16:45:51 +0100 Subject: [PATCH] [staggeredGrid][geometryHelper] Add more info *Add index of parallel element *Rename outerParallel to outerParallelFaceDofIdx --- .../discretization/staggered/staggeredgeometryhelper.hh | 9 ++++++--- test/discretization/staggered/test_staggered.cc | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/dumux/discretization/staggered/staggeredgeometryhelper.hh b/dumux/discretization/staggered/staggeredgeometryhelper.hh index 46baf40989..614507c36c 100644 --- a/dumux/discretization/staggered/staggeredgeometryhelper.hh +++ b/dumux/discretization/staggered/staggeredgeometryhelper.hh @@ -36,7 +36,8 @@ namespace Dumux template<class Scalar> struct PairData { - int outerParallel; + int outerParallelFaceDofIdx; + int outerParallelElementDofIdx; std::pair<int,int> normalPair; int globalCommonEntIdx; Scalar parallelDistance; @@ -131,7 +132,8 @@ public: // initialize values that could remain unitialized if the intersection lies on a boundary for(auto& data : pairData_) { - data.outerParallel = 0; + data.outerParallelFaceDofIdx = 0; + data.outerParallelElementDofIdx = 0; data.normalDistance = 0; data.parallelDistance = 0; } @@ -204,7 +206,8 @@ public: { if(globalCommonEntIdx == pairData_[pairIdx].globalCommonEntIdx) { - pairData_[pairIdx].outerParallel = gridView_.indexSet().subIndex(diagonalNeighbor, dIs.indexInInside(), dim-1) + offset_; + pairData_[pairIdx].outerParallelFaceDofIdx = gridView_.indexSet().subIndex(diagonalNeighbor, dIs.indexInInside(), dim-1) + offset_; + pairData_[pairIdx].outerParallelElementDofIdx = dIs.indexInOutside(); const auto& selfFacet = element_.template subEntity <1> (indexInInside); const auto& parallelFacet = diagonalNeighbor.template subEntity <1> (dIs.indexInInside()); pairData_[pairIdx].parallelDistance = (selfFacet.geometry().center() - parallelFacet.geometry().center()).two_norm(); diff --git a/test/discretization/staggered/test_staggered.cc b/test/discretization/staggered/test_staggered.cc index 9195ad7674..dabcd115e0 100644 --- a/test/discretization/staggered/test_staggered.cc +++ b/test/discretization/staggered/test_staggered.cc @@ -148,8 +148,8 @@ int main (int argc, char *argv[]) try << "; dist self/oppo " << std::setw(3) << scvf.selfToOppositeDistance() << ", norm1 in/out " << std::setw(3) << scvf.pairData(0).normalPair.first << "/" << std::setw(3) << scvf.pairData(0).normalPair.second << ", norm2 in/out " << std::setw(3) << scvf.pairData(1).normalPair.first << "/" << std::setw(3) << scvf.pairData(1).normalPair.second - << ", par1 in/out " << std::setw(3) << scvf.dofIndexSelf() << "/" << std::setw(3) << scvf.pairData(0).outerParallel - << ", par2 in/out " << std::setw(3) << scvf.dofIndexSelf() << "/" << std::setw(3) << scvf.pairData(1).outerParallel + << ", par1 in/out " << std::setw(3) << scvf.dofIndexSelf() << "/" << std::setw(3) << scvf.pairData(0).outerParallelFaceDofIdx + << ", par2 in/out " << std::setw(3) << scvf.dofIndexSelf() << "/" << std::setw(3) << scvf.pairData(1).outerParallelFaceDofIdx << ", normDist1 " << std::setw(3) << scvf.pairData(0).normalDistance << ", normDist2 " << std::setw(3) << scvf.pairData(1).normalDistance << ", parDist1 " << std::setw(3) << scvf.pairData(0).parallelDistance -- GitLab