|
ParallelIstlInformation.hpp
Go to the documentation of this file.
Class that encapsulates the parallelization information needed by the ISTL solvers. Definition: ParallelIstlInformation.hpp:44 void copyOwnerToAll(const T &source, T &dest) const Communcate the dofs owned by us to the other process. Dune::OwnerOverlapCopyCommunication< int, int >::RemoteIndices RemoteIndices The type of the remote indices information used. Definition: ParallelIstlInformation.hpp:49 std::shared_ptr< ParallelIndexSet > indexSet() const Get a pointer to the underlying index set. Definition: ParallelIstlInformation.hpp:72 std::shared_ptr< RemoteIndices > remoteIndices() const Get a pointer to the remote indices information. Definition: ParallelIstlInformation.hpp:78 ParallelISTLInformation() Constructs an empty parallel information object using MPI_COMM_WORLD. ParallelISTLInformation(const ParallelISTLInformation &other) Copy constructor. const std::vector< double > & getOwnerMask() const Get the owner Mask. Definition: ParallelIstlInformation.hpp:109 const std::vector< double > & updateOwnerMask(const T &container) const void copyValuesTo(ParallelIndexSet &indexSet, RemoteIndices &remoteIndices, std::size_t local_component_size=0, std::size_t num_components=1) const Copy the information stored to the specified objects. void computeReduction(const Container &container, BinaryOperator binaryOperator, T &value) const Compute one or more global reductions. Parallel::Communication communicator() const Get the Collective MPI communicator that we use. Definition: ParallelIstlInformation.hpp:84 ParallelISTLInformation(MPI_Comm communicator) Constructs an empty parallel information object using a communicator. Dune::OwnerOverlapCopyCommunication< int, int >::ParallelIndexSet ParallelIndexSet The type of the parallel index set used. Definition: ParallelIstlInformation.hpp:47 ParallelISTLInformation(const std::shared_ptr< ParallelIndexSet > &indexSet, const std::shared_ptr< RemoteIndices > &remoteIndices, MPI_Comm communicator) Constructs a parallel information object from the specified information. Dune::Communication< MPIComm > Communication Definition: ParallelCommunication.hpp:30 MaskIDOperator< detail::MaxAbsFunctor< T > > makeLInfinityNormFunctor() Create a functor for computing a global L infinity norm. Definition: ParallelIstlInformation.hpp:375 auto makeGlobalMinFunctor() Create a functor for computing a global minimum. Definition: ParallelIstlInformation.hpp:384 auto makeGlobalMaxFunctor() Create a functor for computing a global maximum. Definition: ParallelIstlInformation.hpp:328 MaskIDOperator< std::plus< T > > makeGlobalSumFunctor() Create a functor for computing a global sum. Definition: ParallelIstlInformation.hpp:320 InnerProductFunctor< T > makeInnerProductFunctor() Definition: ParallelIstlInformation.hpp:398 Definition: blackoilbioeffectsmodules.hh:45 auto accumulateMaskedValues(const T1 &container, const std::vector< double > *maskContainer) -> decltype(container[0] *(*maskContainer)[0]) Accumulates entries masked with 1. An operator for computing a parallel inner product. Definition: ParallelIstlInformation.hpp:191 T operator()(const T &t1, const T &t2, const T1 &mask) Apply the underlying binary operator according to the mask. Definition: ParallelIstlInformation.hpp:199 std::plus< T > localOperator() Definition: ParallelIstlInformation.hpp:209 V getInitialValue() Definition: ParallelIstlInformation.hpp:214 T maskValue(const T &t, const T1 &mask) Definition: ParallelIstlInformation.hpp:205 An operator that only uses values where mask is 1. Definition: ParallelIstlInformation.hpp:158 T operator()(const T &t1, const T &t2, const T1 &mask) Apply the underlying binary operator according to the mask. Definition: ParallelIstlInformation.hpp:166 BinaryOperator & localOperator() Definition: ParallelIstlInformation.hpp:175 T getInitialValue() Definition: ParallelIstlInformation.hpp:180 T maskValue(const T &t, const T1 &mask) Definition: ParallelIstlInformation.hpp:171 An operator that converts the values where mask is 0 to the maximum value. Definition: ParallelIstlInformation.hpp:276 MaskToMaxOperator(BinaryOperator b) Definition: ParallelIstlInformation.hpp:277 T getInitialValue() Definition: ParallelIstlInformation.hpp:308 BinaryOperator & localOperator() Definition: ParallelIstlInformation.hpp:303 T operator()(const T &t1, const T &t2, const T1 &mask) Apply the underlying binary operator according to the mask. Definition: ParallelIstlInformation.hpp:287 T maskValue(const T &t, const T1 &mask) Definition: ParallelIstlInformation.hpp:292 An operator that converts the values where mask is 0 to the minimum value. Definition: ParallelIstlInformation.hpp:227 MaskToMinOperator(BinaryOperator b) Definition: ParallelIstlInformation.hpp:228 T operator()(const T &t1, const T &t2, const T1 &mask) Apply the underlying binary operator according to the mask. Definition: ParallelIstlInformation.hpp:238 BinaryOperator & localOperator() Get the underlying binary operator. Definition: ParallelIstlInformation.hpp:263 T maskValue(const T &t, const T1 &mask) Definition: ParallelIstlInformation.hpp:243 T getInitialValue() Definition: ParallelIstlInformation.hpp:255 result_type operator()(const T &t1, const T &t2) Definition: ParallelIstlInformation.hpp:362 T result_type Definition: ParallelIstlInformation.hpp:361 Computes the maximum of the absolute values of two values. Definition: ParallelIstlInformation.hpp:346 result_type operator()(const T &t1, const T &t2) Definition: ParallelIstlInformation.hpp:348 T result_type Definition: ParallelIstlInformation.hpp:347 |