My Project
Loading...
Searching...
No Matches
Opm::CollectDataOnIORank< Grid, EquilGrid, GridView > Class Template Reference

Public Types

enum  { ioRank = 0 }
 
using CollectiveCommunication = typename Grid::CollectiveCommunication
 
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, 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: