mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
add mpi serialization for PlyvmhTable
This commit is contained in:
parent
c819c0fd43
commit
0e6881ec6e
@ -460,6 +460,7 @@ HANDLE_AS_POD(DenT::entry)
|
||||
HANDLE_AS_POD(Eqldims)
|
||||
HANDLE_AS_POD(MLimits)
|
||||
HANDLE_AS_POD(PlmixparRecord)
|
||||
HANDLE_AS_POD(PlyvmhRecord)
|
||||
HANDLE_AS_POD(PVTWRecord)
|
||||
HANDLE_AS_POD(PVCDORecord)
|
||||
HANDLE_AS_POD(Regdims)
|
||||
@ -863,6 +864,7 @@ std::size_t packSize(const TableManager& data, Dune::MPIHelper::MPICommunicator
|
||||
packSize(data.getPvtwTable(), comm) +
|
||||
packSize(data.getPvcdoTable(), comm) +
|
||||
packSize(data.getDensityTable(), comm) +
|
||||
packSize(data.getPlyvmhTable(), comm) +
|
||||
packSize(data.getRockTable(), comm) +
|
||||
packSize(data.getPlmixparTable(), comm) +
|
||||
packSize(data.getTlmixparTable(), comm) +
|
||||
@ -1833,6 +1835,11 @@ std::size_t packSize(const PlmixparTable& data, Dune::MPIHelper::MPICommunicator
|
||||
return packSize(static_cast<const std::vector<PlmixparRecord>&>(data), comm);
|
||||
}
|
||||
|
||||
std::size_t packSize(const PlyvmhTable& data, Dune::MPIHelper::MPICommunicator comm)
|
||||
{
|
||||
return packSize(static_cast<const std::vector<PlyvmhRecord>&>(data), comm);
|
||||
}
|
||||
|
||||
////// pack routines
|
||||
|
||||
template<class T>
|
||||
@ -2510,6 +2517,7 @@ void pack(const TableManager& data, std::vector<char>& buffer, int& position,
|
||||
pack(data.getPvtwTable(), buffer, position, comm);
|
||||
pack(data.getPvcdoTable(), buffer, position, comm);
|
||||
pack(data.getDensityTable(), buffer, position, comm);
|
||||
pack(data.getPlyvmhTable(), buffer, position, comm);
|
||||
pack(data.getRockTable(), buffer, position, comm);
|
||||
pack(data.getPlmixparTable(), buffer, position, comm);
|
||||
pack(data.getTlmixparTable(), buffer, position, comm);
|
||||
@ -3548,6 +3556,12 @@ void pack(const PlmixparTable& data, std::vector<char>& buffer, int& position,
|
||||
pack(static_cast<const std::vector<PlmixparRecord>&>(data), buffer, position, comm);
|
||||
}
|
||||
|
||||
void pack(const PlyvmhTable& data, std::vector<char>& buffer, int& position,
|
||||
Dune::MPIHelper::MPICommunicator comm)
|
||||
{
|
||||
pack(static_cast<const std::vector<PlyvmhRecord>&>(data), buffer, position, comm);
|
||||
}
|
||||
|
||||
/// unpack routines
|
||||
|
||||
template<class T>
|
||||
@ -4451,6 +4465,7 @@ void unpack(TableManager& data, std::vector<char>& buffer, int& position,
|
||||
PvtwTable pvtwTable;
|
||||
PvcdoTable pvcdoTable;
|
||||
DensityTable densityTable;
|
||||
PlyvmhTable plyvmhTable;
|
||||
RockTable rockTable;
|
||||
ViscrefTable viscrefTable;
|
||||
PlmixparTable plmixparTable;
|
||||
@ -4482,6 +4497,7 @@ void unpack(TableManager& data, std::vector<char>& buffer, int& position,
|
||||
unpack(pvtwTable, buffer, position, comm);
|
||||
unpack(pvcdoTable, buffer, position, comm);
|
||||
unpack(densityTable, buffer, position, comm);
|
||||
unpack(plyvmhTable, buffer, position, comm);
|
||||
unpack(rockTable, buffer, position, comm);
|
||||
unpack(plmixparTable, buffer, position, comm);
|
||||
unpack(tlmixparTable, buffer, position, comm);
|
||||
@ -4515,7 +4531,7 @@ void unpack(TableManager& data, std::vector<char>& buffer, int& position,
|
||||
|
||||
data = TableManager(simpleTables, pvtgTables, pvtoTables, rock2dTables,
|
||||
rock2dtrTables, pvtwTable, pvcdoTable, densityTable,
|
||||
rockTable, plmixparTable, tlmixparTable, viscrefTable,
|
||||
plyvmhTable, rockTable, plmixparTable, tlmixparTable, viscrefTable,
|
||||
watdentTable, pvtwsaltTables, bdensityTables, sdensityTables,
|
||||
plymwinjTables, skprwatTables, skprpolyTables, tabdims,
|
||||
regdims, eqldims, aqudims, hasImptvd, hasEntpvd, hasEqlnum,
|
||||
@ -5979,6 +5995,14 @@ void unpack(PlmixparTable& data, std::vector<char>& buffer, int& position,
|
||||
data = PlmixparTable(pdata);
|
||||
}
|
||||
|
||||
void unpack(PlyvmhTable& data, std::vector<char>& buffer, int& position,
|
||||
Dune::MPIHelper::MPICommunicator comm)
|
||||
{
|
||||
std::vector<PlyvmhRecord> pdata;
|
||||
unpack(pdata, buffer, position, comm);
|
||||
data = PlyvmhTable(pdata);
|
||||
}
|
||||
|
||||
#define INSTANTIATE_PACK_VECTOR(...) \
|
||||
template std::size_t packSize(const std::vector<__VA_ARGS__>& data, \
|
||||
Dune::MPIHelper::MPICommunicator comm); \
|
||||
|
@ -109,6 +109,8 @@ struct NNCdata;
|
||||
class OilVaporizationProperties;
|
||||
class Phases;
|
||||
class PlymwinjTable;
|
||||
class PlyvmhRecord;
|
||||
class PlyvmhTable;
|
||||
class PolyInjTable;
|
||||
class PVCDORecord;
|
||||
class PvcdoTable;
|
||||
@ -568,6 +570,8 @@ ADD_PACK_PROTOTYPES(Phases)
|
||||
ADD_PACK_PROTOTYPES(PlmixparRecord)
|
||||
ADD_PACK_PROTOTYPES(PlmixparTable)
|
||||
ADD_PACK_PROTOTYPES(PlymwinjTable)
|
||||
ADD_PACK_PROTOTYPES(PlyvmhRecord)
|
||||
ADD_PACK_PROTOTYPES(PlyvmhTable)
|
||||
ADD_PACK_PROTOTYPES(PolyInjTable)
|
||||
ADD_PACK_PROTOTYPES(PolymerConfig)
|
||||
ADD_PACK_PROTOTYPES(PVCDORecord)
|
||||
|
@ -1219,6 +1219,7 @@ BOOST_AUTO_TEST_CASE(TableManager)
|
||||
Opm::PvtwTable({Opm::PVTWRecord{1.0, 2.0, 3.0, 4.0, 5.0}}),
|
||||
Opm::PvcdoTable({Opm::PVCDORecord{1.0, 2.0, 3.0, 4.0, 5.0}}),
|
||||
Opm::DensityTable({Opm::DENSITYRecord{1.0, 2.0, 3.0}}),
|
||||
Opm::PlyvmhTable({Opm::PlyvmhRecord{1.0, 2.0, 3.0, 4.0}}),
|
||||
Opm::RockTable({Opm::ROCKRecord{1.0,2.0}}),
|
||||
Opm::PlmixparTable({Opm::PlmixparRecord{1.0}}),
|
||||
Opm::TlmixparTable({Opm::TlmixparRecord{1.0, 2.0}}),
|
||||
|
Loading…
Reference in New Issue
Block a user