Adds data redistribution capabilities and makes sim_fibo_ad_cp parallel.

With this commit we add the possibility to start with a global representation
of a simulator that is read on each process and afterwards this presentation
is redistributed among the processors together with the properties and
state data needed to initialize the simulation.

There still is no parallel well handling and no parallel output. But with the
equilibrium example of @dr-robertk and deactivated output we can already
perform parallel runs.
This commit is contained in:
Markus Blatt
2015-02-05 15:05:38 +01:00
parent fc137afcd5
commit 01ea7bacba
6 changed files with 271 additions and 9 deletions

View File

@@ -77,6 +77,7 @@ BlackoilPropsAdFromDeck::BlackoilPropsAdFromDeck(const BlackoilPropsAdFromDeck&
OPM_THROW(std::runtime_error, "The number of cells is has to be larger than 0.");
// Copy properties that do not depend on the postion within the grid.
rock_ = props.rock_;
satprops_ = props.satprops_;
phase_usage_ = props.phase_usage_;
props_ = props.props_;
densities_ = props.densities_;
@@ -87,7 +88,6 @@ BlackoilPropsAdFromDeck::BlackoilPropsAdFromDeck(const BlackoilPropsAdFromDeck&
// and initialize with obviously bogus numbers.
cellPvtRegionIdx_.resize(number_of_cells, std::numeric_limits<int>::min());
pvtTableIdx_.resize(number_of_cells, std::numeric_limits<int>::min());
satOilMax_.resize(number_of_cells, -std::numeric_limits<double>::max());
}
/// Initializes the properties.