Merge pull request #3671 from joakim-hove/broadcast-mult-update

Broadcast mult update
This commit is contained in:
Joakim Hove authored and GitHub committed 2021-11-09 14:50:11 +01:00
commit c97447892e
4 files changed
+18 -5

No files matched your search

@@ -34,6 +34,7 @@
#include <opm/parser/eclipse/EclipseState/Schedule/Well/WListManager.hpp>
#include <opm/parser/eclipse/EclipseState/Schedule/Well/WellTestState.hpp>
#include <opm/parser/eclipse/EclipseState/SummaryConfig/SummaryConfig.hpp>
#include <opm/parser/eclipse/EclipseState/Grid/TransMult.hpp>
#include <ebos/eclmpiserializer.hh>
@@ -57,9 +58,15 @@ void eclStateBroadcast(Parallel::Communication comm, EclipseState& eclState, Sch
ser.broadcast(wtestState);
}
void eclScheduleBroadcast(Parallel::Communication comm, Schedule& schedule)
template <class T>
void eclBroadcast(Parallel::Communication comm, T& data)
{
Opm::EclMpiSerializer ser(comm);
ser.broadcast(schedule);
ser.broadcast(data);
}
template void eclBroadcast<TransMult>(Parallel::Communication, TransMult&);
template void eclBroadcast<Schedule>(Parallel::Communication, Schedule&);
}
@@ -28,6 +28,7 @@ class Schedule;
class SummaryConfig;
class UDQState;
class WellTestState;
class TransMult;
namespace Action {
class State;
@@ -45,8 +46,10 @@ void eclStateBroadcast(Parallel::Communication comm, EclipseState& eclState, Sc
Action::State& actionState,
WellTestState& wtestState);
/// \brief Broadcasts an schedule from root node in parallel runs.
void eclScheduleBroadcast(Parallel::Communication comm, Schedule& schedule);
template <class T>
void eclBroadcast(Parallel::Communication comm, T& );
} // end namespace Opm