Class that stores a strided map. More...
#include <Xpetra_StridedMap.hpp>
Protected Attributes | |
| std::vector< size_t > | stridingInfo_ |
| vector with size of strided blocks (dofs) | |
| LocalOrdinal | stridedBlockId_ |
| member variable denoting which dofs are stored in map | |
| GlobalOrdinal | offset_ |
| offset for gids in map (default = 0). | |
Private Member Functions | |
| virtual bool | CheckConsistency ()=0 |
Constructor/Destructor Methods | |
| StridedMap (global_size_t numGlobalElements, GlobalOrdinal indexBase, std::vector< size_t > &stridingInfo, const Teuchos::RCP< const Teuchos::Comm< int > > &comm, LocalOrdinal stridedBlockId, GlobalOrdinal offset=0) | |
| StridedMap (global_size_t numGlobalElements, size_t numLocalElements, GlobalOrdinal indexBase, std::vector< size_t > &stridingInfo, const Teuchos::RCP< const Teuchos::Comm< int > > &comm, LocalOrdinal stridedBlockId, GlobalOrdinal offset=0) | |
| StridedMap (std::vector< size_t > &stridingInfo, LocalOrdinal stridedBlockId, GlobalOrdinal offset=0) | |
| StridedMap (global_size_t numGlobalElements, const Teuchos::ArrayView< const GlobalOrdinal > &elementList, GlobalOrdinal indexBase, std::vector< size_t > &stridingInfo, const Teuchos::RCP< const Teuchos::Comm< int > > &comm, LocalOrdinal stridedBlockId=-1) | |
| virtual | ~StridedMap () |
| Destructor. | |
Access functions for striding data | |
| std::vector< size_t > | getStridingData () const |
| void | setStridingData (std::vector< size_t > stridingInfo) |
| size_t | getFixedBlockSize () const |
| LocalOrdinal | getStridedBlockId () const |
| bool | isStrided () |
| returns true, if this is a strided map (i.e. more than 1 strided blocks) | |
| bool | isBlocked () |
| GlobalOrdinal | getOffset () const |
| void | setOffset (GlobalOrdinal offset) |
| size_t | GID2StridingBlockId (GlobalOrdinal gid) const |
Class that stores a strided map.
StridedMap extends the functionality of Xpetra::Map
It derives from Xpetra::Map and adds a std::vector, which contains the striding information. E.g. for a strided map with 3dofs per node (2 velocity dofs, 1 pressure dof) the striding information looks like: std::vector<size_t> stridingInformation; stridingInformation.push_back(2); // 2 velocity dofs stridingInformation.push_back(1); // 1 pressure dof
For this example the getFixedBlockSize() returns 3 (3 dofs per node). Providing a stridedBlockId parameter in the constructor the strided map only contains dofs of one strided block, e.g. with above stridingInformation the call
StridingMap M(33,0,stridiningInformation,comm,0); // striding block 0 (velocity dofs) returns a map with the gids 0, 1, 3, 4, 6, 7, ... (which contains only the velocity dofs)
and StridingMap M(33,0,stridiningInformation,comm,1); // striding block 1 (pressure dofs) creates a map with only the pressure dofs 2, 5, 8, ...
Definition at line 100 of file Xpetra_StridedMap.hpp.
| Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::StridedMap | ( | global_size_t | numGlobalElements, |
| GlobalOrdinal | indexBase, | ||
| std::vector< size_t > & | stridingInfo, | ||
| const Teuchos::RCP< const Teuchos::Comm< int > > & | comm, | ||
| LocalOrdinal | stridedBlockId, | ||
| GlobalOrdinal | offset = 0 |
||
| ) | [inline] |
Definition at line 109 of file Xpetra_StridedMap.hpp.
| Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::StridedMap | ( | global_size_t | numGlobalElements, |
| size_t | numLocalElements, | ||
| GlobalOrdinal | indexBase, | ||
| std::vector< size_t > & | stridingInfo, | ||
| const Teuchos::RCP< const Teuchos::Comm< int > > & | comm, | ||
| LocalOrdinal | stridedBlockId, | ||
| GlobalOrdinal | offset = 0 |
||
| ) | [inline] |
Definition at line 117 of file Xpetra_StridedMap.hpp.
| Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::StridedMap | ( | std::vector< size_t > & | stridingInfo, |
| LocalOrdinal | stridedBlockId, | ||
| GlobalOrdinal | offset = 0 |
||
| ) | [inline] |
Definition at line 126 of file Xpetra_StridedMap.hpp.
| Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::StridedMap | ( | global_size_t | numGlobalElements, |
| const Teuchos::ArrayView< const GlobalOrdinal > & | elementList, | ||
| GlobalOrdinal | indexBase, | ||
| std::vector< size_t > & | stridingInfo, | ||
| const Teuchos::RCP< const Teuchos::Comm< int > > & | comm, | ||
| LocalOrdinal | stridedBlockId = -1 |
||
| ) | [inline] |
Definition at line 131 of file Xpetra_StridedMap.hpp.
| virtual Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::~StridedMap | ( | ) | [inline, virtual] |
Destructor.
Definition at line 168 of file Xpetra_StridedMap.hpp.
| std::vector<size_t> Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::getStridingData | ( | ) | const [inline] |
Definition at line 175 of file Xpetra_StridedMap.hpp.
| void Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::setStridingData | ( | std::vector< size_t > | stridingInfo | ) | [inline] |
Definition at line 177 of file Xpetra_StridedMap.hpp.
| size_t Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::getFixedBlockSize | ( | ) | const [inline] |
Definition at line 179 of file Xpetra_StridedMap.hpp.
| LocalOrdinal Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::getStridedBlockId | ( | ) | const [inline] |
returns strided block id of the dofs stored in this map or -1 if full strided map is stored in this map
Definition at line 191 of file Xpetra_StridedMap.hpp.
| bool Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::isStrided | ( | ) | [inline] |
returns true, if this is a strided map (i.e. more than 1 strided blocks)
Definition at line 194 of file Xpetra_StridedMap.hpp.
| bool Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::isBlocked | ( | ) | [inline] |
returns true, if this is a blocked map (i.e. more than 1 dof per node) either strided or just 1 block per node
Definition at line 198 of file Xpetra_StridedMap.hpp.
| GlobalOrdinal Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::getOffset | ( | ) | const [inline] |
Definition at line 200 of file Xpetra_StridedMap.hpp.
| void Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::setOffset | ( | GlobalOrdinal | offset | ) | [inline] |
Definition at line 202 of file Xpetra_StridedMap.hpp.
| size_t Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::GID2StridingBlockId | ( | GlobalOrdinal | gid | ) | const [inline] |
Definition at line 205 of file Xpetra_StridedMap.hpp.
| virtual bool Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::CheckConsistency | ( | ) | [private, pure virtual] |
Implemented in Xpetra::StridedTpetraMap< LocalOrdinal, GlobalOrdinal, Node >, and Xpetra::StridedEpetraMap.
std::vector<size_t> Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::stridingInfo_ [protected] |
vector with size of strided blocks (dofs)
Definition at line 259 of file Xpetra_StridedMap.hpp.
LocalOrdinal Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::stridedBlockId_ [protected] |
member variable denoting which dofs are stored in map
Definition at line 260 of file Xpetra_StridedMap.hpp.
GlobalOrdinal Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node >::offset_ [protected] |
offset for gids in map (default = 0).
Definition at line 263 of file Xpetra_StridedMap.hpp.
1.7.6.1