mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
effectiveExtent: Fix out-of-bounds indexing
Commit 96cf137 introduced support for Peaceman index calculation that honoured general completion directions (X,Y,Z). This was accomplished through a permutation index that reordered the permeability and geometric extent components according to a local coordinate system along the completion. In a complete breakdown of logic, however, the d-component extent vector was indexed as though it were a d-by-d matrix. This commit restores sanity to the processing. Pointy hat: @bska.
This commit is contained in:
parent
402044a54a
commit
66293e8aed
@ -221,12 +221,11 @@ namespace WellsManagerDetail
|
||||
extent[2] *= ntg;
|
||||
|
||||
const auto p = directionIndices(direction);
|
||||
const std::array<double,3>::size_type d = extent.size();
|
||||
|
||||
std::array<double,3>
|
||||
D = {{ extent[ p[0]*(d + 1) ] ,
|
||||
extent[ p[1]*(d + 1) ] ,
|
||||
extent[ p[2]*(d + 1) ] }};
|
||||
D = {{ extent[ p[0] ] ,
|
||||
extent[ p[1] ] ,
|
||||
extent[ p[2] ] }};
|
||||
|
||||
return D;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user