Go to the documentation of this file.
20#ifndef DUNE_CPGRID_ZOLTANPARTITION_HEADER
21#define DUNE_CPGRID_ZOLTANPARTITION_HEADER
23#include <unordered_set>
68std::tuple<std::vector<int>, std::vector<std::pair<std::string,bool>>,
69 std::vector<std::tuple<int,int,char> >,
70 std::vector<std::tuple<int,int,char,int> >,
73 const Dune::Communication<MPI_Comm>& cc,
74 const std::vector<Dune::cpgrid::OpmWellType> * wells,
75 const std::unordered_map<std::string, std::set<int>>& possibleFutureConnections,
80 const Id* exportLocalGids,
81 const Id* exportGlobalGids,
82 const int* exportToPart,
83 const Id* importGlobalGids,
84 bool allowDistributedWells = false);
87std::tuple<int, std::vector<Id> >
89 const int* exportToPart, int root,
90 const Dune::Communication<MPI_Comm>& cc);
94#if defined(HAVE_ZOLTAN) && defined(HAVE_MPI)
132std::tuple<std::vector<int>,std::vector<std::pair<std::string,bool>>,
133 std::vector<std::tuple<int,int,char> >,
134 std::vector<std::tuple<int,int,char,int> >,
136zoltanGraphPartitionGridOnRoot( const CpGrid& grid,
137 const std::vector<OpmWellType> * wells,
138 const std::unordered_map<std::string, std::set<int>>& possibleFutureConnections,
139 const double* transmissibilities,
140 const Communication<MPI_Comm>& cc,
142 const double zoltanImbalanceTol,
143 bool allowDistributedWells,
144 const std::map<std::string,std::string>& params);
179std::tuple<std::vector<int>, std::vector<std::pair<std::string,bool>>,
180 std::vector<std::tuple<int,int,char> >,
181 std::vector<std::tuple<int,int,char,int> >,
183zoltanSerialGraphPartitionGridOnRoot( const CpGrid& grid,
184 const std::vector<OpmWellType> * wells,
185 const std::unordered_map<std::string, std::set<int>>& possibleFutureConnections,
186 const double* transmissibilities,
187 const Communication<MPI_Comm>& cc,
189 const double zoltanImbalanceTol,
190 bool allowDistributedWells,
191 const std::map<std::string,std::string>& params);
216zoltanGraphPartitionGridForJac( const CpGrid& cpgrid,
217 const std::vector<OpmWellType> * wells,
218 const std::unordered_map<std::string, std::set<int>>& possibleFutureConnections,
219 const double* transmissibilities,
220 const Communication<MPI_Comm>& cc,
222 int numParts, const double zoltanImbalanceTol);
[ provides Dune::Grid ] Definition: CpGrid.hpp:198
A graph repesenting a grid together with the well completions. Definition: ZoltanGraphFunctions.hpp:138
std::tuple< int, std::vector< Id > > scatterExportInformation(int numExport, const Id *exportGlobalGids, const int *exportToPart, int root, const Dune::Communication< MPI_Comm > &cc)
std::tuple< std::vector< int >, std::vector< std::pair< std::string, bool > >, std::vector< std::tuple< int, int, char > >, std::vector< std::tuple< int, int, char, int > >, WellConnections > makeImportAndExportLists(const Dune::CpGrid &cpgrid, const Dune::Communication< MPI_Comm > &cc, const std::vector< Dune::cpgrid::OpmWellType > *wells, const std::unordered_map< std::string, std::set< int > > &possibleFutureConnections, const Dune::cpgrid::CombinedGridWellGraph *gridAndWells, int root, int numExport, int numImport, const Id *exportLocalGids, const Id *exportGlobalGids, const int *exportToPart, const Id *importGlobalGids, bool allowDistributedWells=false) Creates all the information needed from the partitioning.
The namespace Dune is the main namespace for all Dune code. Definition: common/CartesianIndexMapper.hpp:10
EdgeWeightMethod enum for choosing Methods for weighting graph-edges correspoding to cell interfaces in Zoltan's or Me... Definition: GridEnums.hpp:34
|