diff --git a/dumux/multidomain/2cnistokes2p2cni/stokesncnicouplinglocalresidual.hh b/dumux/multidomain/2cnistokes2p2cni/stokesncnicouplinglocalresidual.hh index 671ae29efa979d4db488e6a41fb3d0d408e135b9..948499aa359c902e163b35a59a5869a4e9c0d97c 100644 --- a/dumux/multidomain/2cnistokes2p2cni/stokesncnicouplinglocalresidual.hh +++ b/dumux/multidomain/2cnistokes2p2cni/stokesncnicouplinglocalresidual.hh @@ -158,16 +158,13 @@ public: for (int compIdx = 0; compIdx < numComponents; compIdx++) { int eqIdx = conti0EqIdx + compIdx; - if (eqIdx != massBalanceIdx) + if ((eqIdx != massBalanceIdx) && bcTypes.isCouplingDirichlet(eqIdx)) { - if (bcTypes.isCouplingDirichlet(eqIdx)) - { - if(useMoles) - this->residual_[scvIdx][eqIdx] = volVars.moleFraction(compIdx); - else - this->residual_[scvIdx][eqIdx] = volVars.massFraction(compIdx); - Valgrind::CheckDefined(this->residual_[scvIdx][compIdx]); - } + if(useMoles) + this->residual_[scvIdx][eqIdx] = volVars.moleFraction(compIdx); + else + this->residual_[scvIdx][eqIdx] = volVars.massFraction(compIdx); + Valgrind::CheckDefined(this->residual_[scvIdx][compIdx]); } } diff --git a/dumux/multidomain/2cstokes2p2c/localoperator.hh b/dumux/multidomain/2cstokes2p2c/localoperator.hh index 733d4c0f9dc9420c309e192041d52c3f54a88f0c..f43d9da119fb263b015ec0aa8bb85d596b27c0e2 100644 --- a/dumux/multidomain/2cstokes2p2c/localoperator.hh +++ b/dumux/multidomain/2cstokes2p2c/localoperator.hh @@ -432,6 +432,11 @@ public: const Scalar normalMassFlux1 = boundaryVars1.normalVelocity() * cParams.elemVolVarsCur1[vertInElem1].density(); + if (std::abs(bfNormal1[1]) < 1e-10) + { + DUNE_THROW(Dune::NotImplemented, "The coupling conditions are not implemented for vertical interfaces."); + } + // MASS Balance // Neumann-like conditions if (cParams.boundaryTypes1.isCouplingNeumann(massBalanceIdx1)) diff --git a/dumux/multidomain/2cstokes2p2c/stokesnccouplinglocalresidual.hh b/dumux/multidomain/2cstokes2p2c/stokesnccouplinglocalresidual.hh index c32b05c77609991240852e7b351e4f74b63e4a3c..ec2f7bcf18c1effb516c2ce4c55d3ff2fb6d877e 100644 --- a/dumux/multidomain/2cstokes2p2c/stokesnccouplinglocalresidual.hh +++ b/dumux/multidomain/2cstokes2p2c/stokesnccouplinglocalresidual.hh @@ -168,15 +168,13 @@ public: for (int compIdx = 0; compIdx < numComponents; compIdx++) { int eqIdx = conti0EqIdx + compIdx; - if (eqIdx != massBalanceIdx) + if ((eqIdx != massBalanceIdx) && bcTypes.isCouplingDirichlet(eqIdx)) { - if (bcTypes.isCouplingDirichlet(eqIdx)) - { - if(useMoles) - this->residual_[scvIdx][eqIdx] = volVars.moleFraction(compIdx); - else - this->residual_[scvIdx][eqIdx] = volVars.massFraction(compIdx); - } + if (useMoles) + this->residual_[scvIdx][eqIdx] = volVars.moleFraction(compIdx); + else + this->residual_[scvIdx][eqIdx] = volVars.massFraction(compIdx); + Valgrind::CheckDefined(this->residual_[scvIdx][compIdx]); } } }