mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
use compressed field property for fipnum
This commit is contained in:
parent
69959da143
commit
5a9340b5b1
@ -1744,24 +1744,20 @@ private:
|
|||||||
|
|
||||||
void createLocalFipnum_()
|
void createLocalFipnum_()
|
||||||
{
|
{
|
||||||
const std::vector<int> fipnumGlobal = simulator_.vanguard().eclState().fieldProps().get_global_int("FIPNUM");
|
|
||||||
// Get compressed cell fipnum.
|
|
||||||
const auto& gridView = simulator_.vanguard().gridView();
|
const auto& gridView = simulator_.vanguard().gridView();
|
||||||
unsigned numElements = gridView.size(/*codim=*/0);
|
if (simulator_.vanguard().eclState().fieldProps().has_int("FIPNUM"))
|
||||||
fipnum_.resize(numElements, 0.0);
|
fipnum_ = simulator_.vanguard().eclState().fieldProps().get_int("FIPNUM");
|
||||||
if (!fipnumGlobal.empty()) {
|
else
|
||||||
ElementContext elemCtx(simulator_);
|
fipnum_.resize(gridView.size(/*codim=*/0), 1);
|
||||||
ElementIterator elemIt = gridView.template begin</*codim=*/0>();
|
|
||||||
const ElementIterator& elemEndIt = gridView.template end</*codim=*/0>();
|
|
||||||
for (; elemIt != elemEndIt; ++elemIt) {
|
|
||||||
const Element& elem = *elemIt;
|
|
||||||
if (elem.partitionType() != Dune::InteriorEntity)
|
|
||||||
continue; // assign no fipnum regions to ghost elements
|
|
||||||
|
|
||||||
elemCtx.updatePrimaryStencil(elem);
|
ElementContext elemCtx(simulator_);
|
||||||
const unsigned elemIdx = elemCtx.globalSpaceIndex(/*spaceIdx=*/0, /*timeIdx=*/0);
|
ElementIterator elemIt = simulator_.gridView().template begin</*codim=*/0>();
|
||||||
fipnum_[elemIdx] = fipnumGlobal[simulator_.vanguard().cartesianIndex(elemIdx)];
|
const ElementIterator& elemEndIt = simulator_.gridView().template end</*codim=*/0>();
|
||||||
}
|
size_t elemIdx = 0;
|
||||||
|
for (; elemIt != elemEndIt; ++elemIt, ++elemIdx) {
|
||||||
|
const Element& elem = *elemIt;
|
||||||
|
if (elem.partitionType() != Dune::InteriorEntity)
|
||||||
|
fipnum_[elemIdx] = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user