removing the completions after createGrid in eclbasegridmanager

This commit is contained in:
Kai Bao 2018-02-07 11:21:57 +01:00
parent d3cb81a7ba
commit 2c298b2b99
4 changed files with 27 additions and 1 deletions

View File

@ -196,6 +196,11 @@ protected:
new CartesianIndexMapper(*grid_, cartesianDimension_, cartesianCellId_); new CartesianIndexMapper(*grid_, cartesianDimension_, cartesianCellId_);
} }
void filterCompletions_()
{
// not handling the removal of completions for this type of grid yet.
}
Grid* grid_; Grid* grid_;
EquilGrid* equilGrid_; EquilGrid* equilGrid_;
std::vector<int> cartesianCellId_; std::vector<int> cartesianCellId_;

View File

@ -194,6 +194,7 @@ public:
} }
asImp_().createGrids_(); asImp_().createGrids_();
asImp_().filterCompletions_();
asImp_().finalizeInit_(); asImp_().finalizeInit_();
} }
@ -219,6 +220,10 @@ public:
return *schedule_; return *schedule_;
} }
Opm::Schedule& schedule() {
return *schedule_;
}
const Opm::SummaryConfig& summaryConfig() const { const Opm::SummaryConfig& summaryConfig() const {
return *summaryConfig_; return *summaryConfig_;
} }
@ -316,7 +321,7 @@ private:
static Opm::Deck* externalDeck_; static Opm::Deck* externalDeck_;
static Opm::EclipseState* externalEclState_; static Opm::EclipseState* externalEclState_;
static Opm::Schedule* externalSchedule_; static Opm::Schedule* externalSchedule_;
static Opm::SummaryConfig* externalSummaryConfig_; static Opm::SummaryConfig* externalSummaryConfig_;
std::unique_ptr<Opm::Deck> internalDeck_; std::unique_ptr<Opm::Deck> internalDeck_;
std::unique_ptr<Opm::EclipseState> internalEclState_; std::unique_ptr<Opm::EclipseState> internalEclState_;
std::unique_ptr<Opm::Schedule> internalSchedule_; std::unique_ptr<Opm::Schedule> internalSchedule_;

View File

@ -31,6 +31,7 @@
#include "ecltransmissibility.hh" #include "ecltransmissibility.hh"
#include <dune/grid/CpGrid.hpp> #include <dune/grid/CpGrid.hpp>
#include <dune/grid/cpgrid/GridHelpers.hpp>
#include <dune/grid/common/mcmgmapper.hh> #include <dune/grid/common/mcmgmapper.hh>
@ -257,6 +258,16 @@ protected:
globalTrans_ = nullptr; globalTrans_ = nullptr;
} }
// removing some completions located in inactive grid cells
void filterCompletions_()
{
assert(grid_);
Grid grid = *grid_;
grid.switchToGlobalView();
const auto eclipseGrid = Opm::UgGridHelpers::createEclipseGrid(grid, this->eclState().getInputGrid());
this->schedule().filterCompletions(eclipseGrid);
}
Grid* grid_; Grid* grid_;
EquilGrid* equilGrid_; EquilGrid* equilGrid_;
CartesianIndexMapper* cartesianIndexMapper_; CartesianIndexMapper* cartesianIndexMapper_;

View File

@ -151,6 +151,11 @@ protected:
cartesianIndexMapper_ = new CartesianIndexMapper(*grid_); cartesianIndexMapper_ = new CartesianIndexMapper(*grid_);
} }
void filterCompletions_()
{
// not handling the removal of completions for this type of grid yet.
}
GridPointer grid_; GridPointer grid_;
CartesianIndexMapperPointer cartesianIndexMapper_; CartesianIndexMapperPointer cartesianIndexMapper_;
}; };