Do not store collective communication in the wells object.

Instead of this we rely on the default constructor of
WellSwitchingLogger. This finally fixes the compile
issues with DUNE 2.3.
This commit is contained in:
Markus Blatt 2016-10-07 10:46:54 +02:00
parent 3e6b1949ea
commit 828f118801
5 changed files with 6 additions and 14 deletions

View File

@ -142,7 +142,7 @@ namespace Opm {
MultisegmentWells::
MultisegmentWells(const Wells* wells_arg,
const std::vector< const Well* >& wells_ecl,
const int time_step, const Communication& comm)
const int time_step)
: wells_multisegment_( createMSWellVector(wells_arg, wells_ecl, time_step) )
, wops_ms_(wells_multisegment_)
, num_phases_(wells_arg ? wells_arg->number_of_phases : 0)
@ -158,7 +158,6 @@ namespace Opm {
, segment_comp_surf_volume_current_(num_phases_, ADB::null())
, segment_mass_flow_rates_(ADB::null())
, segment_viscosities_(ADB::null())
, comm_(comm)
{
const int nw = wells_multisegment_.size();
int nperf_total = 0;

View File

@ -90,8 +90,7 @@ namespace Opm {
// TODO: it should use const Wells or something else later.
MultisegmentWells(const Wells* wells_arg,
const std::vector< const Well* >& wells_ecl,
const int time_step,
const Communication& comm=Communication());
const int time_step);
std::vector<WellMultiSegmentConstPtr> createMSWellVector(const Wells* wells_arg,
const std::vector< const Well* >& wells_ecl,
@ -312,7 +311,6 @@ namespace Opm {
Vector well_perforation_densities_;
Vector well_perforation_pressure_diffs_;
Communication comm_;
};
} // namespace Opm

View File

@ -824,7 +824,7 @@ namespace Opm
MultisegmentWells::
updateWellControls(WellState& xw) const
{
wellhelpers::WellSwitchingLogger logger(comm_);
wellhelpers::WellSwitchingLogger logger;
if( msWells().empty() ) return ;

View File

@ -70,8 +70,7 @@ namespace Opm {
Eigen::Dynamic,
Eigen::RowMajor>;
// --------- Public methods ---------
explicit StandardWells(const Wells* wells_arg,
const Communication& comm=Communication());
explicit StandardWells(const Wells* wells_arg);
void init(const BlackoilPropsAdInterface* fluid_arg,
const std::vector<bool>* active_arg,
@ -211,8 +210,6 @@ namespace Opm {
bool store_well_perforation_fluxes_;
Vector well_perforation_fluxes_;
Communication comm_;
// protected methods
template <class SolutionState, class WellState>
void computePropertiesForWellConnectionPressures(const SolutionState& state,

View File

@ -71,8 +71,7 @@ namespace Opm
StandardWells::StandardWells(const Wells* wells_arg,
const Communication& comm)
StandardWells::StandardWells(const Wells* wells_arg)
: wells_active_(wells_arg!=nullptr)
, wells_(wells_arg)
, wops_(wells_arg)
@ -83,7 +82,6 @@ StandardWells::StandardWells(const Wells* wells_arg,
, well_perforation_densities_(Vector())
, well_perforation_pressure_diffs_(Vector())
, store_well_perforation_fluxes_(false)
, comm_(comm)
{
}
@ -708,7 +706,7 @@ StandardWells::StandardWells(const Wells* wells_arg,
StandardWells::
updateWellControls(WellState& xw) const
{
wellhelpers::WellSwitchingLogger logger(comm_);
wellhelpers::WellSwitchingLogger logger;
if( !localWellsActive() ) return ;