Xpetra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Xpetra::EpetraMapT< long long, EpetraNode > Class Template Reference

#include <Xpetra_EpetraMap.hpp>

Inheritance diagram for Xpetra::EpetraMapT< long long, EpetraNode >:
Xpetra::Map< int, long long, EpetraNode >

Public Types

typedef LocalOrdinal local_ordinal_type
 
typedef GlobalOrdinal global_ordinal_type
 
typedef Node node_type
 
typedef Map< LocalOrdinal,
GlobalOrdinal, Node >
::global_indices_array_type 
global_indices_array_type
 
- Public Types inherited from Xpetra::Map< int, long long, EpetraNode >
typedef int local_ordinal_type
 
typedef long long global_ordinal_type
 
typedef EpetraNode node_type
 
typedef Kokkos::View< const
global_ordinal_type
*, typename
EpetraNode::device_type > 
global_indices_array_device_type
 
typedef Tpetra::Map< int, long
long, EpetraNode >
::local_map_type 
local_map_type
 

Public Member Functions

GlobalOrdinal getGlobalElement (LocalOrdinal localIndex) const
 Return the global index for a given local index. Note that this returns -1 if not found on this processor. (This is different than Epetra's behavior!) More...
 
- Public Member Functions inherited from Xpetra::Map< int, long long, EpetraNode >
virtual RCP< const Xpetra::Map
< int, long long, EpetraNode > > 
getMap () const
 
virtual ~Map ()
 Destructor. More...
 

Protected Attributes

RCP< const Epetra_BlockMap > map_
 

Private Types

typedef int LocalOrdinal
 
typedef long long GlobalOrdinal
 
typedef EpetraNode Node
 

Constructors and destructor

 EpetraMapT (global_size_t numGlobalElements, GlobalOrdinal indexBase, const Teuchos::RCP< const Teuchos::Comm< int > > &comm, LocalGlobal lg=GloballyDistributed)
 Constructor with Tpetra-defined contiguous uniform distribution. More...
 
 EpetraMapT (global_size_t numGlobalElements, size_t numLocalElements, GlobalOrdinal indexBase, const Teuchos::RCP< const Teuchos::Comm< int > > &comm)
 Constructor with a user-defined contiguous distribution. More...
 
 EpetraMapT (global_size_t numGlobalElements, const Teuchos::ArrayView< const GlobalOrdinal > &elementList, GlobalOrdinal indexBase, const Teuchos::RCP< const Teuchos::Comm< int > > &comm)
 Constructor with user-defined arbitrary (possibly noncontiguous) distribution. More...
 

Attributes

global_size_t getGlobalNumElements () const
 The number of elements in this Map. More...
 
size_t getLocalNumElements () const
 The number of elements belonging to the calling process. More...
 
GlobalOrdinal getIndexBase () const
 The index base for this Map. More...
 
LocalOrdinal getMinLocalIndex () const
 The minimum local index. More...
 
LocalOrdinal getMaxLocalIndex () const
 The maximum local index on the calling process. More...
 
GlobalOrdinal getMinGlobalIndex () const
 The minimum global index owned by the calling process. More...
 
GlobalOrdinal getMaxGlobalIndex () const
 The maximum global index owned by the calling process. More...
 
GlobalOrdinal getMinAllGlobalIndex () const
 The minimum global index over all processes in the communicator. More...
 
GlobalOrdinal getMaxAllGlobalIndex () const
 The maximum global index over all processes in the communicator. More...
 
LocalOrdinal getLocalElement (GlobalOrdinal globalIndex) const
 The local index corresponding to the given global index. More...
 
LookupStatus getRemoteIndexList (const Teuchos::ArrayView< const GlobalOrdinal > &GIDList, const Teuchos::ArrayView< int > &nodeIDList, const Teuchos::ArrayView< LocalOrdinal > &LIDList) const
 Return the process ranks and corresponding local indices for the given global indices. More...
 
LookupStatus getRemoteIndexList (const Teuchos::ArrayView< const GlobalOrdinal > &GIDList, const Teuchos::ArrayView< int > &nodeIDList) const
 Return the process ranks for the given global indices. More...
 
Teuchos::ArrayView< const
GlobalOrdinal
getLocalElementList () const
 Return a view of the global indices owned by this process. More...
 
global_indices_array_device_type getMyGlobalIndicesDevice () const
 Return a view of the global indices owned by this process. More...
 

Boolean tests

bool isNodeLocalElement (LocalOrdinal localIndex) const
 Whether the given local index is valid for this Map on this process. More...
 
bool isNodeGlobalElement (GlobalOrdinal globalIndex) const
 Whether the given global index is valid for this Map on this process. More...
 
bool isContiguous () const
 True if this Map is distributed contiguously, else false. More...
 
bool isDistributed () const
 Whether this Map is globally distributed or locally replicated. More...
 
bool isCompatible (const Map< LocalOrdinal, GlobalOrdinal, Node > &map) const
 True if and only if map is compatible with this Map. More...
 
bool isSameAs (const Map< LocalOrdinal, GlobalOrdinal, Node > &map) const
 True if and only if map is identical to this Map. More...
 
Teuchos::RCP< const
Teuchos::Comm< int > > 
getComm () const
 Get this Map's Comm object. More...
 
std::string description () const
 Return a simple one-line description of this object. More...
 
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
 Print this object with the given verbosity level to the given Teuchos::FancyOStream. More...
 
RCP< const Map< int,
GlobalOrdinal, Node > > 
removeEmptyProcesses () const
 Return a new Map with processes with zero elements removed. More...
 
RCP< const Map< int,
GlobalOrdinal, Node > > 
replaceCommWithSubset (const Teuchos::RCP< const Teuchos::Comm< int > > &) const
 Replace this Map's communicator with a subset communicator. More...
 

Xpetra specific

using local_map_type = typename Map< LocalOrdinal, GlobalOrdinal, Node >::local_map_type
 
local_map_type localMap_
 
virtual ~EpetraMapT ()
 Destructor. More...
 
 EpetraMapT (const Teuchos::RCP< const Epetra_BlockMap > &map)
 EpetraMapT constructor to wrap a Epetra_Map object. More...
 
UnderlyingLib lib () const
 Get the library used by this object (Epetra or Epetra?) More...
 
const RCP< const Epetra_Map > & getEpetra_MapRCP () const
 Get the underlying Epetra map. More...
 
const Epetra_BlockMap & getEpetra_BlockMap () const
 
const Epetra_Map & getEpetra_Map () const
 
local_map_type getLocalMap () const
 Get the local Map for Kokkos kernels. More...
 

Detailed Description

template<>
class Xpetra::EpetraMapT< long long, EpetraNode >

Definition at line 766 of file Xpetra_EpetraMap.hpp.

Member Typedef Documentation

typedef int Xpetra::EpetraMapT< long long, EpetraNode >::LocalOrdinal
private

Definition at line 768 of file Xpetra_EpetraMap.hpp.

typedef long long Xpetra::EpetraMapT< long long, EpetraNode >::GlobalOrdinal
private

Definition at line 769 of file Xpetra_EpetraMap.hpp.

typedef EpetraNode Xpetra::EpetraMapT< long long, EpetraNode >::Node
private

Definition at line 770 of file Xpetra_EpetraMap.hpp.

Definition at line 773 of file Xpetra_EpetraMap.hpp.

Definition at line 774 of file Xpetra_EpetraMap.hpp.

typedef Node Xpetra::EpetraMapT< long long, EpetraNode >::node_type

Definition at line 775 of file Xpetra_EpetraMap.hpp.

Definition at line 1234 of file Xpetra_EpetraMap.hpp.

Constructor & Destructor Documentation

Xpetra::EpetraMapT< long long, EpetraNode >::EpetraMapT ( global_size_t  numGlobalElements,
GlobalOrdinal  indexBase,
const Teuchos::RCP< const Teuchos::Comm< int > > &  comm,
LocalGlobal  lg = GloballyDistributed 
)
inline

Constructor with Tpetra-defined contiguous uniform distribution.

Definition at line 782 of file Xpetra_EpetraMap.hpp.

Xpetra::EpetraMapT< long long, EpetraNode >::EpetraMapT ( global_size_t  numGlobalElements,
size_t  numLocalElements,
GlobalOrdinal  indexBase,
const Teuchos::RCP< const Teuchos::Comm< int > > &  comm 
)
inline

Constructor with a user-defined contiguous distribution.

Definition at line 833 of file Xpetra_EpetraMap.hpp.

Xpetra::EpetraMapT< long long, EpetraNode >::EpetraMapT ( global_size_t  numGlobalElements,
const Teuchos::ArrayView< const GlobalOrdinal > &  elementList,
GlobalOrdinal  indexBase,
const Teuchos::RCP< const Teuchos::Comm< int > > &  comm 
)
inline

Constructor with user-defined arbitrary (possibly noncontiguous) distribution.

Definition at line 926 of file Xpetra_EpetraMap.hpp.

virtual Xpetra::EpetraMapT< long long, EpetraNode >::~EpetraMapT ( )
inlinevirtual

Destructor.

Definition at line 1217 of file Xpetra_EpetraMap.hpp.

Xpetra::EpetraMapT< long long, EpetraNode >::EpetraMapT ( const Teuchos::RCP< const Epetra_BlockMap > &  map)
inline

EpetraMapT constructor to wrap a Epetra_Map object.

Definition at line 1220 of file Xpetra_EpetraMap.hpp.

Member Function Documentation

global_size_t Xpetra::EpetraMapT< long long, EpetraNode >::getGlobalNumElements ( ) const
inlinevirtual

The number of elements in this Map.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 943 of file Xpetra_EpetraMap.hpp.

size_t Xpetra::EpetraMapT< long long, EpetraNode >::getLocalNumElements ( ) const
inlinevirtual

The number of elements belonging to the calling process.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 949 of file Xpetra_EpetraMap.hpp.

GlobalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getIndexBase ( ) const
inlinevirtual

The index base for this Map.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 955 of file Xpetra_EpetraMap.hpp.

LocalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getMinLocalIndex ( ) const
inlinevirtual

The minimum local index.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 961 of file Xpetra_EpetraMap.hpp.

LocalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getMaxLocalIndex ( ) const
inlinevirtual

The maximum local index on the calling process.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 967 of file Xpetra_EpetraMap.hpp.

GlobalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getMinGlobalIndex ( ) const
inlinevirtual

The minimum global index owned by the calling process.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 973 of file Xpetra_EpetraMap.hpp.

GlobalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getMaxGlobalIndex ( ) const
inlinevirtual

The maximum global index owned by the calling process.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 979 of file Xpetra_EpetraMap.hpp.

GlobalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getMinAllGlobalIndex ( ) const
inlinevirtual

The minimum global index over all processes in the communicator.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 985 of file Xpetra_EpetraMap.hpp.

GlobalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getMaxAllGlobalIndex ( ) const
inlinevirtual

The maximum global index over all processes in the communicator.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 991 of file Xpetra_EpetraMap.hpp.

LocalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getLocalElement ( GlobalOrdinal  globalIndex) const
inlinevirtual

The local index corresponding to the given global index.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 997 of file Xpetra_EpetraMap.hpp.

LookupStatus Xpetra::EpetraMapT< long long, EpetraNode >::getRemoteIndexList ( const Teuchos::ArrayView< const GlobalOrdinal > &  GIDList,
const Teuchos::ArrayView< int > &  nodeIDList,
const Teuchos::ArrayView< LocalOrdinal > &  LIDList 
) const
inlinevirtual

Return the process ranks and corresponding local indices for the given global indices.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1003 of file Xpetra_EpetraMap.hpp.

LookupStatus Xpetra::EpetraMapT< long long, EpetraNode >::getRemoteIndexList ( const Teuchos::ArrayView< const GlobalOrdinal > &  GIDList,
const Teuchos::ArrayView< int > &  nodeIDList 
) const
inlinevirtual

Return the process ranks for the given global indices.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1009 of file Xpetra_EpetraMap.hpp.

Teuchos::ArrayView<const GlobalOrdinal> Xpetra::EpetraMapT< long long, EpetraNode >::getLocalElementList ( ) const
inlinevirtual

Return a view of the global indices owned by this process.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1015 of file Xpetra_EpetraMap.hpp.

global_indices_array_device_type Xpetra::EpetraMapT< long long, EpetraNode >::getMyGlobalIndicesDevice ( ) const
inlinevirtual

Return a view of the global indices owned by this process.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1021 of file Xpetra_EpetraMap.hpp.

bool Xpetra::EpetraMapT< long long, EpetraNode >::isNodeLocalElement ( LocalOrdinal  localIndex) const
inlinevirtual

Whether the given local index is valid for this Map on this process.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1036 of file Xpetra_EpetraMap.hpp.

bool Xpetra::EpetraMapT< long long, EpetraNode >::isNodeGlobalElement ( GlobalOrdinal  globalIndex) const
inlinevirtual

Whether the given global index is valid for this Map on this process.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1042 of file Xpetra_EpetraMap.hpp.

bool Xpetra::EpetraMapT< long long, EpetraNode >::isContiguous ( ) const
inlinevirtual

True if this Map is distributed contiguously, else false.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1048 of file Xpetra_EpetraMap.hpp.

bool Xpetra::EpetraMapT< long long, EpetraNode >::isDistributed ( ) const
inlinevirtual

Whether this Map is globally distributed or locally replicated.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1054 of file Xpetra_EpetraMap.hpp.

bool Xpetra::EpetraMapT< long long, EpetraNode >::isCompatible ( const Map< LocalOrdinal, GlobalOrdinal, Node > &  map) const
inlinevirtual

True if and only if map is compatible with this Map.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1060 of file Xpetra_EpetraMap.hpp.

bool Xpetra::EpetraMapT< long long, EpetraNode >::isSameAs ( const Map< LocalOrdinal, GlobalOrdinal, Node > &  map) const
inlinevirtual

True if and only if map is identical to this Map.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1066 of file Xpetra_EpetraMap.hpp.

Teuchos::RCP<const Teuchos::Comm<int> > Xpetra::EpetraMapT< long long, EpetraNode >::getComm ( ) const
inlinevirtual

Get this Map's Comm object.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1077 of file Xpetra_EpetraMap.hpp.

std::string Xpetra::EpetraMapT< long long, EpetraNode >::description ( ) const
inlinevirtual

Return a simple one-line description of this object.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1088 of file Xpetra_EpetraMap.hpp.

void Xpetra::EpetraMapT< long long, EpetraNode >::describe ( Teuchos::FancyOStream &  out,
const Teuchos::EVerbosityLevel  verbLevel = Teuchos::Describable::verbLevel_default 
) const
inlinevirtual

Print this object with the given verbosity level to the given Teuchos::FancyOStream.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1103 of file Xpetra_EpetraMap.hpp.

RCP<const Map<int, GlobalOrdinal, Node> > Xpetra::EpetraMapT< long long, EpetraNode >::removeEmptyProcesses ( ) const
inlinevirtual

Return a new Map with processes with zero elements removed.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1183 of file Xpetra_EpetraMap.hpp.

RCP<const Map<int, GlobalOrdinal, Node> > Xpetra::EpetraMapT< long long, EpetraNode >::replaceCommWithSubset ( const Teuchos::RCP< const Teuchos::Comm< int > > &  ) const
inlinevirtual

Replace this Map's communicator with a subset communicator.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1195 of file Xpetra_EpetraMap.hpp.

GlobalOrdinal Xpetra::EpetraMapT< long long, EpetraNode >::getGlobalElement ( LocalOrdinal  localIndex) const
inlinevirtual

Return the global index for a given local index. Note that this returns -1 if not found on this processor. (This is different than Epetra's behavior!)

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1203 of file Xpetra_EpetraMap.hpp.

UnderlyingLib Xpetra::EpetraMapT< long long, EpetraNode >::lib ( ) const
inlinevirtual

Get the library used by this object (Epetra or Epetra?)

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1226 of file Xpetra_EpetraMap.hpp.

const RCP<const Epetra_Map>& Xpetra::EpetraMapT< long long, EpetraNode >::getEpetra_MapRCP ( ) const
inline

Get the underlying Epetra map.

Definition at line 1229 of file Xpetra_EpetraMap.hpp.

const Epetra_BlockMap& Xpetra::EpetraMapT< long long, EpetraNode >::getEpetra_BlockMap ( ) const
inline

Definition at line 1230 of file Xpetra_EpetraMap.hpp.

const Epetra_Map& Xpetra::EpetraMapT< long long, EpetraNode >::getEpetra_Map ( ) const
inline

Definition at line 1231 of file Xpetra_EpetraMap.hpp.

local_map_type Xpetra::EpetraMapT< long long, EpetraNode >::getLocalMap ( ) const
inlinevirtual

Get the local Map for Kokkos kernels.

Implements Xpetra::Map< int, long long, EpetraNode >.

Definition at line 1236 of file Xpetra_EpetraMap.hpp.

Member Data Documentation

local_map_type Xpetra::EpetraMapT< long long, EpetraNode >::localMap_
mutableprivate

Definition at line 1241 of file Xpetra_EpetraMap.hpp.

RCP<const Epetra_BlockMap> Xpetra::EpetraMapT< long long, EpetraNode >::map_
protected

Definition at line 1251 of file Xpetra_EpetraMap.hpp.


The documentation for this class was generated from the following file: