diff --git a/ebos/ecltransmissibility.hh b/ebos/ecltransmissibility.hh index a9231be1e..b686b433c 100644 --- a/ebos/ecltransmissibility.hh +++ b/ebos/ecltransmissibility.hh @@ -34,6 +34,8 @@ #include #include #include +#include + #include @@ -90,7 +92,10 @@ class EclTransmissibility public: EclTransmissibility(const Vanguard& vanguard) : vanguard_(vanguard) - {} + { + const Opm::UnitSystem& unitSystem = vanguard_.deck().getActiveUnitSystem(); + transmissibility_threshold_ = unitSystem.parse("Transmissibility").getSIScaling() * 1e-6; + } /*! * \brief Actually compute the transmissibilty over a face as a pre-compute step. @@ -345,6 +350,9 @@ public: outsideCartElemIdx, faceDir); + if (trans < transmissibility_threshold_) //remove trans less than 1e-6 in given unit + trans = 0.0; + trans_[isId_(elemIdx, outsideElemIdx)] = trans; } } @@ -752,6 +760,7 @@ private: } const Vanguard& vanguard_; + Scalar transmissibility_threshold_; std::vector permeability_; std::unordered_map trans_; std::map, Scalar> transBoundary_;