Go to the documentation of this file.
29 #ifndef __PASO_SHAREDCOMPONENTS_H__
30 #define __PASO_SHAREDCOMPONENTS_H__
36 struct SharedComponents;
41 struct SharedComponents
45 const std::vector<index_t>& offset,
57 if (!neighbours.empty() && !offset.empty()) {
63 #pragma omp parallel for
64 for (
dim_t i = 0; i < offset[neighbours.size()]; i++) {
65 const index_t itmp = m * sharedArray[i] + b;
66 for (
dim_t j = 0; j < m; ++j)
99 #endif // __PASO_SHAREDCOMPONENTS_H__
dim_t local_length
local array length shared
Definition: SharedComponents.h:94
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:57
~SharedComponents()
Definition: SharedComponents.h:88
dim_t numSharedComponents
= offsetInShared[numNeighbours]
Definition: SharedComponents.h:108
std::vector< int > neighbour
list of the processors sharing values with this processor
Definition: SharedComponents.h:97
index_t dim_t
Definition: DataTypes.h:93
boost::shared_ptr< SharedComponents > SharedComponents_ptr
Definition: SharedComponents.h:50
index_t * shared
Definition: SharedComponents.h:105
boost::shared_ptr< const SharedComponents > const_SharedComponents_ptr
Definition: SharedComponents.h:52
int index_t
type for array/matrix indices used both globally and on each rank
Definition: DataTypes.h:88
std::vector< index_t > offsetInShared
Definition: SharedComponents.h:101
#define PASO_DLL_API
Definition: Paso.h:60
Definition: BiCGStab.cpp:26