Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

A class for partitioning distributed objects. More...

#include <Tpetra_Map_decl.hpp>

Inheritance diagram for Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

Constructor/Destructor Methods
 Map (global_size_t numGlobalElements, GlobalOrdinal indexBase, const Teuchos::RCP< const Teuchos::Comm< int > > &comm, LocalGlobal lg=GloballyDistributed, const Teuchos::RCP< Node > &node=Kokkos::DefaultNode::getDefaultNode())
 Map constructor with Tpetra-defined contiguous uniform distribution. The elements are distributed among nodes so that the subsets of global elements are non-overlapping and contiguous and as evenly distributed across the nodes as possible.
 Map (global_size_t numGlobalElements, size_t numLocalElements, GlobalOrdinal indexBase, const Teuchos::RCP< const Teuchos::Comm< int > > &comm, const Teuchos::RCP< Node > &node=Kokkos::DefaultNode::getDefaultNode())
 Map constructor with a user-defined contiguous distribution. The elements are distributed among the nodes so that the subsets of global elements are non-overlapping and contiguous.
 Map (global_size_t numGlobalElements, const Teuchos::ArrayView< const GlobalOrdinal > &elementList, GlobalOrdinal indexBase, const Teuchos::RCP< const Teuchos::Comm< int > > &comm, const Teuchos::RCP< Node > &node=Kokkos::DefaultNode::getDefaultNode())
 Map constructor with user-defined non-contiguous (arbitrary) distribution.
 ~Map ()
 Map destructor.
Map Attribute Methods
global_size_t getGlobalNumElements () const
 Returns the number of elements in this Map.
size_t getNodeNumElements () const
 Returns the number of elements belonging to the calling node.
GlobalOrdinal getIndexBase () const
 Returns the index base for this Map.
LocalOrdinal getMinLocalIndex () const
 Returns minimum local index.
LocalOrdinal getMaxLocalIndex () const
 Returns maximum local index.
GlobalOrdinal getMinGlobalIndex () const
 Returns minimum global index owned by this node.
GlobalOrdinal getMaxGlobalIndex () const
 Returns maximum global index owned by this node.
GlobalOrdinal getMinAllGlobalIndex () const
 Return the minimum global index over all nodes.
GlobalOrdinal getMaxAllGlobalIndex () const
 Return the maximum global index over all nodes.
LocalOrdinal getLocalElement (GlobalOrdinal globalIndex) const
 Return the local index for a given global index.
GlobalOrdinal getGlobalElement (LocalOrdinal localIndex) const
 Return the global index for a given local index.
LookupStatus getRemoteIndexList (const Teuchos::ArrayView< const GlobalOrdinal > &GIDList, const Teuchos::ArrayView< int > &nodeIDList, const Teuchos::ArrayView< LocalOrdinal > &LIDList) const
 Returns the node IDs and corresponding local indices for a given list of global indices.
LookupStatus getRemoteIndexList (const Teuchos::ArrayView< const GlobalOrdinal > &GIDList, const Teuchos::ArrayView< int > &nodeIDList) const
 Returns the node IDs for a given list of global indices.
Teuchos::ArrayView< const
GlobalOrdinal > 
getNodeElementList () const
 Return a list of the global indices owned by this node.
bool isNodeLocalElement (LocalOrdinal localIndex) const
 Returns true if the local index is valid for this Map on this node; returns false if it isn't.
bool isNodeGlobalElement (GlobalOrdinal globalIndex) const
 Returns true if the global index is found in this Map on this node; returns false if it isn't.
bool isContiguous () const
 Returns true if this Map is distributed contiguously; returns false otherwise.
bool isDistributed () const
 Returns true if this Map is distributed across more than one node; returns false otherwise.
Boolean Tests
bool isCompatible (const Map< LocalOrdinal, GlobalOrdinal, Node > &map) const
 Returns true if map is compatible with this Map.
bool isSameAs (const Map< LocalOrdinal, GlobalOrdinal, Node > &map) const
 Returns true if map is identical to this Map.
const Teuchos::RCP< const
Teuchos::Comm< int > > & 
getComm () const
 Get the Comm object for this Map.
const Teuchos::RCP< Node > & getNode () const
 Get the Node object for this Map.
std::string description () const
 Return a simple one-line description of this object.
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=verbLevel_default) const
 Print the object with some verbosity level to a FancyOStream object.

Detailed Description

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
class Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >

A class for partitioning distributed objects.

This class is templated on LocalOrdinal and GlobalOrdinal. The GlobalOrdinal type, if omitted, defaults to the LocalOrdinal type.


Constructor & Destructor Documentation

template<class LocalOrdinal, class GlobalOrdinal, class Node>
Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::Map ( global_size_t  numGlobalElements,
GlobalOrdinal  indexBase,
const Teuchos::RCP< const Teuchos::Comm< int > > &  comm,
LocalGlobal  lg = GloballyDistributed,
const Teuchos::RCP< Node > &  node = Kokkos::DefaultNode::getDefaultNode() 
)

Map constructor with Tpetra-defined contiguous uniform distribution. The elements are distributed among nodes so that the subsets of global elements are non-overlapping and contiguous and as evenly distributed across the nodes as possible.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::Map ( global_size_t  numGlobalElements,
size_t  numLocalElements,
GlobalOrdinal  indexBase,
const Teuchos::RCP< const Teuchos::Comm< int > > &  comm,
const Teuchos::RCP< Node > &  node = Kokkos::DefaultNode::getDefaultNode() 
)

Map constructor with a user-defined contiguous distribution. The elements are distributed among the nodes so that the subsets of global elements are non-overlapping and contiguous.

If numGlobalElements == Teuchos::OrdinalTraits<global_size_t>::invalid(), it will be computed via a global communication. Otherwise, it must be equal to the sum of the local elements across all nodes. This will only be verified if Trilinos was compiled with --enable-teuchos-debug. If this verification fails, a std::invalid_argument exception will be thrown.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::Map ( global_size_t  numGlobalElements,
const Teuchos::ArrayView< const GlobalOrdinal > &  elementList,
GlobalOrdinal  indexBase,
const Teuchos::RCP< const Teuchos::Comm< int > > &  comm,
const Teuchos::RCP< Node > &  node = Kokkos::DefaultNode::getDefaultNode() 
)

Map constructor with user-defined non-contiguous (arbitrary) distribution.

If numGlobalElements == Teuchos::OrdinalTraits<global_size_t>::invalid(), it will be computed via a global communication. Otherwise, it must be equal to the sum of the local elements across all nodes. This will only be verified if Trilinos was compiled with --enable-teuchos-debug. If this verification fails, a std::invalid_argument exception will be thrown.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::~Map (  ) 

Map destructor.


Member Function Documentation

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
global_size_t Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getGlobalNumElements (  )  const [inline]

Returns the number of elements in this Map.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
size_t Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getNodeNumElements (  )  const [inline]

Returns the number of elements belonging to the calling node.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
GlobalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getIndexBase (  )  const [inline]

Returns the index base for this Map.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
LocalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getMinLocalIndex (  )  const [inline]

Returns minimum local index.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
LocalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getMaxLocalIndex (  )  const [inline]

Returns maximum local index.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
GlobalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getMinGlobalIndex (  )  const [inline]

Returns minimum global index owned by this node.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
GlobalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getMaxGlobalIndex (  )  const [inline]

Returns maximum global index owned by this node.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
GlobalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getMinAllGlobalIndex (  )  const [inline]

Return the minimum global index over all nodes.

template<class LocalOrdinal, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType>
GlobalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getMaxAllGlobalIndex (  )  const [inline]

Return the maximum global index over all nodes.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
LocalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getLocalElement ( GlobalOrdinal  globalIndex  )  const

Return the local index for a given global index.

If the global index is not owned by this node, returns Teuchos::OrdinalTraits<LocalOrdinal>::invalid().

template<class LocalOrdinal, class GlobalOrdinal, class Node>
GlobalOrdinal Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getGlobalElement ( LocalOrdinal  localIndex  )  const

Return the global index for a given local index.

If the local index is not valid for this node, returns Teuchos::OrdinalTraits<GlobalOrdinal>::invalid().

template<class LocalOrdinal, class GlobalOrdinal, class Node>
LookupStatus Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getRemoteIndexList ( const Teuchos::ArrayView< const GlobalOrdinal > &  GIDList,
const Teuchos::ArrayView< int > &  nodeIDList,
const Teuchos::ArrayView< LocalOrdinal > &  LIDList 
) const

Returns the node IDs and corresponding local indices for a given list of global indices.

Returns:
IDNotPresent indicates that at least one global ID was not present in the directory. Otherwise, returns AllIDsPresent.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
LookupStatus Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getRemoteIndexList ( const Teuchos::ArrayView< const GlobalOrdinal > &  GIDList,
const Teuchos::ArrayView< int > &  nodeIDList 
) const

Returns the node IDs for a given list of global indices.

Returns:
IDNotPresent indicates that at least one global ID was not present in the directory. Otherwise, returns AllIDsPresent.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
Teuchos::ArrayView< const GlobalOrdinal > Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getNodeElementList (  )  const

Return a list of the global indices owned by this node.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
bool Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::isNodeLocalElement ( LocalOrdinal  localIndex  )  const

Returns true if the local index is valid for this Map on this node; returns false if it isn't.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
bool Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::isNodeGlobalElement ( GlobalOrdinal  globalIndex  )  const

Returns true if the global index is found in this Map on this node; returns false if it isn't.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
bool Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::isContiguous (  )  const

Returns true if this Map is distributed contiguously; returns false otherwise.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
bool Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::isDistributed (  )  const

Returns true if this Map is distributed across more than one node; returns false otherwise.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
bool Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::isCompatible ( const Map< LocalOrdinal, GlobalOrdinal, Node > &  map  )  const

Returns true if map is compatible with this Map.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
bool Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::isSameAs ( const Map< LocalOrdinal, GlobalOrdinal, Node > &  map  )  const

Returns true if map is identical to this Map.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
const Teuchos::RCP< const Teuchos::Comm< int > > & Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getComm (  )  const

Get the Comm object for this Map.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
const Teuchos::RCP< Node > & Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::getNode (  )  const

Get the Node object for this Map.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
std::string Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::description (  )  const [virtual]

Return a simple one-line description of this object.

Reimplemented from Teuchos::Describable.

template<class LocalOrdinal, class GlobalOrdinal, class Node>
void Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node >::describe ( Teuchos::FancyOStream out,
const Teuchos::EVerbosityLevel  verbLevel = verbLevel_default 
) const [virtual]

Print the object with some verbosity level to a FancyOStream object.

Reimplemented from Teuchos::Describable.


The documentation for this class was generated from the following files:
Generated on Tue Jul 13 09:39:07 2010 for Tpetra Matrix/Vector Services by  doxygen 1.4.7