Go to the documentation of this file.
28 #ifndef __PASO_SHAREDCOMPONENTS_H__
29 #define __PASO_SHAREDCOMPONENTS_H__
35 struct SharedComponents;
40 struct SharedComponents
44 const std::vector<index_t>& offset,
56 if (!neighbours.empty() && !offset.empty()) {
62 #pragma omp parallel for
63 for (
dim_t i = 0; i < offset[neighbours.size()]; i++) {
64 const index_t itmp = m * sharedArray[i] + b;
65 for (
dim_t j = 0; j < m; ++j)
98 #endif // __PASO_SHAREDCOMPONENTS_H__
dim_t local_length
local array length shared
Definition: SharedComponents.h:90
SharedComponents(dim_t localLength, const std::vector< int > &neighbours, const index_t *sharedArray, const std::vector< index_t > &offset, index_t m=1, index_t b=0)
Definition: SharedComponents.h:53
~SharedComponents()
Definition: SharedComponents.h:84
dim_t numSharedComponents
= offsetInShared[numNeighbours]
Definition: SharedComponents.h:104
std::vector< int > neighbour
list of the processors sharing values with this processor
Definition: SharedComponents.h:93
index_t dim_t
Definition: DataTypes.h:87
boost::shared_ptr< SharedComponents > SharedComponents_ptr
Definition: SharedComponents.h:46
index_t * shared
Definition: SharedComponents.h:101
boost::shared_ptr< const SharedComponents > const_SharedComponents_ptr
Definition: SharedComponents.h:48
int index_t
type for array/matrix indices used both globally and on each rank
Definition: DataTypes.h:82
std::vector< index_t > offsetInShared
Definition: SharedComponents.h:97
#define PASO_DLL_API
Definition: Paso.h:58
Definition: BiCGStab.cpp:25