diff --git a/opm/simulators/wells/WellFilterCake.cpp b/opm/simulators/wells/WellFilterCake.cpp index 7a00d9e7c..ee12cb2a5 100644 --- a/opm/simulators/wells/WellFilterCake.cpp +++ b/opm/simulators/wells/WellFilterCake.cpp @@ -91,7 +91,8 @@ applyCleaning(const WellInterfaceGeneric& well, updateMultiplier(connection, perf); const Scalar rw = connection.getFilterCakeRadius(); switch (filter_cake.geometry) { - case FilterCake::FilterCakeGeometry::LINEAR: { + case FilterCake::FilterCakeGeometry::LINEAR: + case FilterCake::FilterCakeGeometry::LINRAD: { // Previous thickness adjusted to give correct cleaning multiplier at start of time step thickness_[perf] *= factor; break; @@ -184,6 +185,15 @@ updateSkinFactorsAndMultipliers(const WellInterfaceGeneric& well, delta_skin_factor = K / perm * std::log(rc / rc_prev); break; } + case FilterCake::FilterCakeGeometry::LINRAD: { + const auto prev_thickness = thickness_[perf]; + Scalar rc_prev = rw + prev_thickness; + thickness = thickness_[perf] + delta_thickness; + filtrate_data.thickness[perf] = thickness; + const Scalar rc = rw + thickness; + delta_skin_factor = K / perm * std::log(rc / rc_prev); + break; + } default: const auto geometry = FilterCake::filterCakeGeometryToString(filter_cake.geometry);