opm-simulators
Loading...
Searching...
No Matches
Opm::CollectDataOnIORank< Grid, EquilGrid, GridView > Class Template Reference

Public Types

enum  { ioRank = 0 }
using CollectiveCommunication = typename Grid::Communication
using P2PCommunicatorType = Dune::Point2PointCommunicator<Dune::SimpleMessageBuffer>
using IndexMapType = std::vector<int>
using IndexMapStorageType = std::vector<IndexMapType>

Public Member Functions

 CollectDataOnIORank (const Grid &grid, const EquilGrid *equilGrid, const GridView &gridView, const Dune::CartesianIndexMapper< Grid > &cartMapper, const Dune::CartesianIndexMapper< EquilGrid > *equilCartMapper, const std::set< std::string > &fipRegionsInterregFlow={})
void collect (const data::Solution &localCellData, const std::map< std::pair< std::string, int >, double > &localBlockData, std::map< std::pair< std::string, int >, double > &localExtraBlockData, const data::Wells &localWellData, const data::WellBlockAveragePressures &localWBPData, const data::GroupAndNetworkValues &localGroupAndNetworkData, const data::Aquifers &localAquiferData, const WellTestState &localWellTestState, const InterRegFlowMap &interRegFlows, const std::array< FlowsData< double >, 3 > &localFlowsn, const std::array< FlowsData< double >, 3 > &localFloresn)
const std::map< std::pair< std::string, int >, double > & globalBlockData () const
const data::Solution & globalCellData () const
data::Solution & globalCellData ()
const data::Wells & globalWellData () const
const data::WellBlockAveragePressures & globalWBPData () const
const data::GroupAndNetworkValues & globalGroupAndNetworkData () const
const data::Aquifers & globalAquiferData () const
const WellTestState & globalWellTestState () const
InterRegFlowMapglobalInterRegFlows ()
const InterRegFlowMapglobalInterRegFlows () const
const std::array< FlowsData< double >, 3 > & globalFlowsn () const
const std::array< FlowsData< double >, 3 > & globalFloresn () const
bool isIORank () const
bool isParallel () const
int localIdxToGlobalIdx (unsigned localIdx) const
const std::vector< int > & localIdxToGlobalIdxMapping () const
bool doesNeedReordering () const
std::size_t numCells () const
const std::vector< int > & globalRanks () const
bool isCartIdxOnThisRank (int cartIdx) const

Static Public Attributes

static constexpr int dimension = Grid::dimension
static const bool needsReordering

Protected Attributes

P2PCommunicatorType toIORankComm_
InterRegFlowMap globalInterRegFlows_
IndexMapType globalCartesianIndex_
IndexMapType localIndexMap_
IndexMapStorageType indexMaps_
std::vector< int > globalRanks_
data::Solution globalCellData_
std::map< std::pair< std::string, int >, double > globalBlockData_
data::Wells globalWellData_
data::WellBlockAveragePressures globalWBPData_
data::GroupAndNetworkValues globalGroupAndNetworkData_
data::Aquifers globalAquiferData_
WellTestState globalWellTestState_
std::vector< int > localIdxToGlobalIdx_
std::array< FlowsData< double >, 3 > globalFlowsn_
std::array< FlowsData< double >, 3 > globalFloresn_
std::vector< int > sortedCartesianIdx_
 sorted list of cartesian indices present-

Member Data Documentation

◆ needsReordering

template<class Grid, class EquilGrid, class GridView>
const bool Opm::CollectDataOnIORank< Grid, EquilGrid, GridView >::needsReordering
static
Initial value:
=
!std::is_same<Grid, EquilGrid>::value

◆ sortedCartesianIdx_

template<class Grid, class EquilGrid, class GridView>
std::vector<int> Opm::CollectDataOnIORank< Grid, EquilGrid, GridView >::sortedCartesianIdx_
protected

sorted list of cartesian indices present-

non-empty only when running in parallel


The documentation for this class was generated from the following files: