From 7c79923a84da11153564efaac6fe1234b294cdee Mon Sep 17 00:00:00 2001 From: Timo Koch <timo.koch@iws.uni-stuttgart.de> Date: Fri, 22 Mar 2019 13:29:56 +0100 Subject: [PATCH] [geometry][fixup] Fix intersecting entities for Cartesian grids with ijk numbering --- dumux/common/geometry/intersectingentities.hh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dumux/common/geometry/intersectingentities.hh b/dumux/common/geometry/intersectingentities.hh index 6cf916c02b..c82558f20b 100644 --- a/dumux/common/geometry/intersectingentities.hh +++ b/dumux/common/geometry/intersectingentities.hh @@ -73,8 +73,9 @@ intersectingEntityCartesian(const Dune::FieldVector<ctype, dimworld>& point, min[2] - eps2 <= point[2] && point[2] <= max[2] + eps2) { auto ijk = point-min; + using std::min; using std::max; for (int i = 0; i < dimworld; ++i) - ijk[i] = std::floor(ijk[i]*cells[i]/dist[i]); + ijk[i] = max(min(std::floor(ijk[i]*cells[i]/dist[i]), cells[i]-1), 0.0); return std::make_pair(true, (unsigned int)(cells[1]*cells[0]*int(ijk[2]) + cells[0]*int(ijk[1]) + int(ijk[0]))); } -- GitLab