ParallelWellInfo.hpp
Go to the documentation of this file.
50 };
Class checking that all connections are on active cells. Definition: ParallelWellInfo.hpp:341 void connectionFound(std::size_t index) Inidicate that the i-th completion was found. bool checkAllConnectionsFound() CheckDistributedWellConnections(const Well &well, const ParallelWellInfo< Scalar > &info) Class to facilitate getting values associated with the above/below perforation. Definition: ParallelWellInfo.hpp:40 std::vector< Scalar > communicateBelow(Scalar first_value, const Scalar *current, std::size_t size) Creates an array of values for the perforation below. int numLocalPerfs() const CommunicateAboveBelow(const Parallel::Communication &comm) void pushBackEclIndex(int above, int current, bool owner=true) Adds information about original index of the perforations in ECL Schedule. Dune::ParallelLocalIndex< Attribute > LocalIndex Definition: ParallelWellInfo.hpp:51 const IndexSet & getIndexSet() const Get index set for the local perforations. std::vector< Scalar > communicateAbove(Scalar first_value, const Scalar *current, std::size_t size) Creates an array of values for the perforation above. void beginReset() Indicates that we will add the index information. void partialSumPerfValues(RAIterator begin, RAIterator end) const Do a (in place) partial sum on values attached to all perforations. Dune::ParallelIndexSet< int, LocalIndex, 50 > IndexSet Definition: ParallelWellInfo.hpp:52 A factory for creating a global data representation for distributed wells. Definition: ParallelWellInfo.hpp:136 GlobalPerfContainerFactory(const IndexSet &local_indices, const Parallel::Communication comm, int num_local_perfs) Constructor. int numGlobalPerfs() const std::vector< Scalar > createGlobal(const std::vector< Scalar > &local_perf_container, std::size_t num_components) const Creates a container that holds values for all perforations. void copyGlobalToLocal(const std::vector< Scalar > &global, std::vector< Scalar > &local, std::size_t num_components) const Copies the values of the global perforation to the local representation. typename CommunicateAboveBelow< Scalar >::Attribute Attribute Definition: ParallelWellInfo.hpp:139 typename IndexSet::IndexPair::GlobalIndex GlobalIndex Definition: ParallelWellInfo.hpp:140 typename CommunicateAboveBelow< Scalar >::IndexSet IndexSet Definition: ParallelWellInfo.hpp:138 Class encapsulating some information about parallel wells. Definition: ParallelWellInfo.hpp:186 std::vector< Scalar > communicateBelowValues(Scalar last_value, const Scalar *current, std::size_t size) const Creates an array of values for the perforation below. std::vector< Scalar > communicateBelowValues(Scalar last_value, const std::vector< Scalar > ¤t) const Creates an array of values for the perforation above. ParallelWellInfo(const std::string &name={""}, bool hasLocalCells=true) Constructs object using MPI_COMM_SELF. const std::string & name() const Name of the well. Definition: ParallelWellInfo.hpp:258 T broadcastFirstPerforationValue(const T &t) const ParallelWellInfo(const std::pair< std::string, bool > &well_info, Parallel::Communication allComm) Constructs object with communication between all rank sharing a well. std::vector< Scalar > communicateAboveValues(Scalar first_value, const Scalar *current, std::size_t size) const Creates an array of values for the perforation above. void beginReset() Inidicate that we will reset the ecl index information. void pushBackEclIndex(int above, int current) Adds information about the ecl indices of the perforations. bool hasLocalCells() const Whether local cells are perforated somewhen. Definition: ParallelWellInfo.hpp:264 It::value_type sumPerfValues(It begin, It end) const Sum all the values of the perforations. void partialSumPerfValues(RAIterator begin, RAIterator end) const Do a (in place) partial sum on values attached to all perforations. Definition: ParallelWellInfo.hpp:293 const GlobalPerfContainerFactory< Scalar > & getGlobalPerfContainerFactory() const Get a factor to create a global representation of peforation data. void communicateFirstPerforation(bool hasFirst) Collectively decide which rank has first perforation. static constexpr int INVALID_ECL_INDEX Definition: ParallelWellInfo.hpp:188 std::vector< Scalar > communicateAboveValues(Scalar first_value, const std::vector< Scalar > ¤t) const Creates an array of values for the perforation above. void endReset() Inidicate completion of reset of the ecl index information. const Parallel::Communication & communication() const Definition: ParallelWellInfo.hpp:203 Dune::Communication< MPIComm > Communication Definition: ParallelCommunication.hpp:30 Definition: blackoilboundaryratevector.hh:37 bool operator<(const ParallelWellInfo< Scalar > &well1, const ParallelWellInfo< Scalar > &well2) bool operator==(const aligned_allocator< T1, Alignment > &, const aligned_allocator< T2, Alignment > &) noexcept Definition: alignedallocator.hh:210 bool operator!=(const aligned_allocator< T1, Alignment > &, const aligned_allocator< T2, Alignment > &) noexcept Definition: alignedallocator.hh:218 |