Go to the documentation of this file.
29 #ifndef __PASO_SHAREDCOMPONENTS_H__
30 #define __PASO_SHAREDCOMPONENTS_H__
36 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:80
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:43
Definition: SharedComponents.h:42
~SharedComponents()
Definition: SharedComponents.h:74
dim_t numSharedComponents
= offsetInShared[numNeighbours]
Definition: SharedComponents.h:94
std::vector< int > neighbour
list of the processors sharing values with this processor
Definition: SharedComponents.h:83
index_t dim_t
Definition: DataTypes.h:65
boost::shared_ptr< SharedComponents > SharedComponents_ptr
Definition: SharedComponents.h:36
index_t * shared
Definition: SharedComponents.h:91
boost::shared_ptr< const SharedComponents > const_SharedComponents_ptr
Definition: SharedComponents.h:38
int index_t
type for array/matrix indices used both globally and on each rank
Definition: DataTypes.h:60
std::vector< index_t > offsetInShared
Definition: SharedComponents.h:87
#define PASO_DLL_API
Definition: Paso.h:60
Definition: BiCGStab.cpp:26