From bf5d00f2840250648879bd4d3f3fdcf3290f4c76 Mon Sep 17 00:00:00 2001 From: Kilian Weishaupt Date: Tue, 26 Jul 2016 11:36:18 +0200 Subject: [PATCH 1/4] [boxFvElementGeometry] Fix computeGeometries() for 1D * A one-dimensional array was accessed with index 1, causing a Valgrind error --- dumux/implicit/box/fvelementgeometry.hh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dumux/implicit/box/fvelementgeometry.hh b/dumux/implicit/box/fvelementgeometry.hh index f22f057ad9..ce9b48ce4e 100644 --- a/dumux/implicit/box/fvelementgeometry.hh +++ b/dumux/implicit/box/fvelementgeometry.hh @@ -85,9 +85,9 @@ public: GlobalPosition *edgeCoord, GlobalPosition *faceCoord) { - std::vector corners = {edgeCoord[0], fvGeometry.elementGlobal}; + std::vector corners = {fvGeometry.subContVol[0].global, fvGeometry.elementGlobal}; fvGeometry.subContVolGeometries.push_back(SCVGeometry(Dune::GeometryType(Dune::GeometryType::cube, 1), corners)); - corners = {fvGeometry.elementGlobal, edgeCoord[1]}; + corners = {fvGeometry.elementGlobal, fvGeometry.subContVol[1].global}; fvGeometry.subContVolGeometries.push_back(SCVGeometry(Dune::GeometryType(Dune::GeometryType::cube, 1), corners)); } }; -- GitLab From bb629a456fd5492bebe11a1f0e3ee3c62939ec2e Mon Sep 17 00:00:00 2001 From: Kilian Weishaupt Date: Tue, 26 Jul 2016 13:26:45 +0200 Subject: [PATCH 2/4] [io][plotOverLine2D] Use elemVolVars convenience functions * Accessing the fluidstate directly is error prone * Fixes the the Valgrind error in test_boxmpnckinetic --- dumux/io/plotoverline2d.hh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dumux/io/plotoverline2d.hh b/dumux/io/plotoverline2d.hh index c5a8102f50..cd3ab7cd21 100644 --- a/dumux/io/plotoverline2d.hh +++ b/dumux/io/plotoverline2d.hh @@ -167,13 +167,13 @@ public: if (isBetween(globalPosCurrent, pointOne, pointTwo)) { const Scalar time = problem.timeManager().time(); - const Scalar saturationW = elemVolVars[scvIdx].fluidState().saturation(wPhaseIdx); - const Scalar Tw = elemVolVars[scvIdx].fluidState().temperature(wPhaseIdx); - const Scalar Tn = elemVolVars[scvIdx].fluidState().temperature(nPhaseIdx); - const Scalar Ts = elemVolVars[scvIdx].fluidState().temperature(sPhaseIdx); - const Scalar xH2On = elemVolVars[scvIdx].fluidState().moleFraction(nPhaseIdx, wCompIdx); + const Scalar saturationW = elemVolVars[scvIdx].saturation(wPhaseIdx); + const Scalar Tw = elemVolVars[scvIdx].temperature(wPhaseIdx); + const Scalar Tn = elemVolVars[scvIdx].temperature(nPhaseIdx); + const Scalar Ts = elemVolVars[scvIdx].temperature(sPhaseIdx); + const Scalar xH2On = elemVolVars[scvIdx].moleFraction(nPhaseIdx, wCompIdx); const Scalar xH2OnEquil = elemVolVars[scvIdx].xEquil(nPhaseIdx, wCompIdx); - const Scalar xN2w = elemVolVars[scvIdx].fluidState().moleFraction(wPhaseIdx, nCompIdx); + const Scalar xN2w = elemVolVars[scvIdx].moleFraction(wPhaseIdx, nCompIdx); const Scalar xN2wEquil = elemVolVars[scvIdx].xEquil(wPhaseIdx, nCompIdx); // actual output into the text file -- GitLab From 62669d2161c2014308d3a81a7894bd220b168125 Mon Sep 17 00:00:00 2001 From: Kilian Weishaupt Date: Tue, 26 Jul 2016 15:45:35 +0200 Subject: [PATCH 3/4] [io][plotOverLine2D] Move file to test * Class can only be used for mpnc --- .../mpnc/implicit/evaporationatmosphereproblem.hh | 2 +- .../porousmediumflow/mpnc/implicit}/plotoverline2d.hh | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename {dumux/io => test/porousmediumflow/mpnc/implicit}/plotoverline2d.hh (100%) diff --git a/test/porousmediumflow/mpnc/implicit/evaporationatmosphereproblem.hh b/test/porousmediumflow/mpnc/implicit/evaporationatmosphereproblem.hh index 70911d4744..bb6ea7b66c 100644 --- a/test/porousmediumflow/mpnc/implicit/evaporationatmosphereproblem.hh +++ b/test/porousmediumflow/mpnc/implicit/evaporationatmosphereproblem.hh @@ -54,7 +54,7 @@ #include #include -#include +#include "plotoverline2d.hh" #include //#include diff --git a/dumux/io/plotoverline2d.hh b/test/porousmediumflow/mpnc/implicit/plotoverline2d.hh similarity index 100% rename from dumux/io/plotoverline2d.hh rename to test/porousmediumflow/mpnc/implicit/plotoverline2d.hh -- GitLab From 4f523ca99da4aec48fff0aa4ebaa1c58b0a6d099 Mon Sep 17 00:00:00 2001 From: Kilian Weishaupt Date: Wed, 27 Jul 2016 15:26:22 +0200 Subject: [PATCH 4/4] [2pMinc][model] Fix calculations of volume fractions * Vector was accessed out of range --- dumux/porousmediumflow/2pminc/implicit/model.hh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dumux/porousmediumflow/2pminc/implicit/model.hh b/dumux/porousmediumflow/2pminc/implicit/model.hh index da078024e8..3d6512f774 100644 --- a/dumux/porousmediumflow/2pminc/implicit/model.hh +++ b/dumux/porousmediumflow/2pminc/implicit/model.hh @@ -282,11 +282,13 @@ public: } //VOLUME FRACTION - for (int nC= 0; nC