Tpetra Matrix/Vector Services Version of the Day
Related Functions
Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

This class builds an object containing information necesary for efficiently exporting entries off-processor. More...

#include <Tpetra_Export.hpp>

Inheritance diagram for Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

Constructor/Destructor Methods
 Export (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &source, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &target)
 Constructs a Export object from the source and target Map.
 Export (const Export< LocalOrdinal, GlobalOrdinal, Node > &import)
 copy constructor.
 ~Export ()
 destructor.
Export Attribute Methods
size_t getNumSameIDs () const
 Returns the number of entries that are identical between the source and target maps, up to the first different ID.
size_t getNumPermuteIDs () const
 Returns the number of entries that are local to the calling image, but not part of the first getNumSameIDs() entries.
ArrayView< const LocalOrdinal > getPermuteFromLIDs () const
 List of entries in the source Map that are permuted. (non-persisting view)
ArrayView< const LocalOrdinal > getPermuteToLIDs () const
 List of entries in the target Map that are permuted. (non-persisting view)
size_t getNumRemoteIDs () const
 Returns the number of entries that are not on the calling image.
ArrayView< const LocalOrdinal > getRemoteLIDs () const
 List of entries in the target Map that are coming from other images. (non-persisting view)
size_t getNumExportIDs () const
 Returns the number of entries that must be sent by the calling image to other images.
ArrayView< const LocalOrdinal > getExportLIDs () const
 List of entries in the source Map that will be sent to other images. (non-persisting view)
ArrayView< const int > getExportImageIDs () const
 List of images to which entries will be sent, getExportLIDs() [i] will be sent to image getExportImageIDs() [i]. (non-persisting view)
const RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getSourceMap () const
 Returns the Source Map used to construct this exporter.
const RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getTargetMap () const
 Returns the Target Map used to construct this exporter.
DistributorgetDistributor () const
Export< LocalOrdinal,
GlobalOrdinal, Node > & 
operator= (const Export< LocalOrdinal, GlobalOrdinal, Node > &Source)
 Assignment operator.
I/O Methods
virtual void print (std::ostream &os) const
 Print method.

Related Functions

(Note that these are not member functions.)

template<class LO , class GO , class Node >
RCP< const Export< LO, GO, Node > > createExport (const RCP< const Map< LO, GO, Node > > &src, const RCP< const Map< LO, GO, Node > > &tgt)
 Non-member constructor for Export objects.

Detailed Description

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

This class builds an object containing information necesary for efficiently exporting entries off-processor.

Export is used to construct a communication plan that can be called repeatedly by computational classes to efficiently export entries to other nodes. For example, an exporter is used when we start out with a multiple-ownership distribution, and we want to merge that into a uniquely-owned distribution.

This class currently has one constructor, taking two Map objects specifying the distributions of the distributed objects on which the Export class will operate.

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

Definition at line 55 of file Tpetra_Export.hpp.


Constructor & Destructor Documentation

template<class LocalOrdinal , class GlobalOrdinal , class Node >
Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::Export ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  source,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &  target 
)

Constructs a Export object from the source and target Map.

Definition at line 139 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::Export ( const Export< LocalOrdinal, GlobalOrdinal, Node > &  import)

copy constructor.

Definition at line 150 of file Tpetra_Export.hpp.

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

destructor.

Definition at line 155 of file Tpetra_Export.hpp.


Member Function Documentation

template<class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getNumSameIDs ( ) const [inline]

Returns the number of entries that are identical between the source and target maps, up to the first different ID.

Definition at line 159 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getNumPermuteIDs ( ) const [inline]

Returns the number of entries that are local to the calling image, but not part of the first getNumSameIDs() entries.

Definition at line 164 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
ArrayView< const LocalOrdinal > Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getPermuteFromLIDs ( ) const [inline]

List of entries in the source Map that are permuted. (non-persisting view)

Definition at line 170 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
ArrayView< const LocalOrdinal > Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getPermuteToLIDs ( ) const [inline]

List of entries in the target Map that are permuted. (non-persisting view)

Definition at line 176 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getNumRemoteIDs ( ) const [inline]

Returns the number of entries that are not on the calling image.

Definition at line 181 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
ArrayView< const LocalOrdinal > Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getRemoteLIDs ( ) const [inline]

List of entries in the target Map that are coming from other images. (non-persisting view)

Definition at line 187 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
size_t Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getNumExportIDs ( ) const [inline]

Returns the number of entries that must be sent by the calling image to other images.

Definition at line 192 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
ArrayView< const LocalOrdinal > Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getExportLIDs ( ) const [inline]

List of entries in the source Map that will be sent to other images. (non-persisting view)

Definition at line 198 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
ArrayView< const int > Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getExportImageIDs ( ) const [inline]

List of images to which entries will be sent, getExportLIDs() [i] will be sent to image getExportImageIDs() [i]. (non-persisting view)

Definition at line 204 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getSourceMap ( ) const [inline]

Returns the Source Map used to construct this exporter.

Definition at line 210 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::getTargetMap ( ) const [inline]

Returns the Target Map used to construct this exporter.

Definition at line 216 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
Export< LocalOrdinal, GlobalOrdinal, Node > & Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::operator= ( const Export< LocalOrdinal, GlobalOrdinal, Node > &  Source)

Assignment operator.

Definition at line 228 of file Tpetra_Export.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
void Tpetra::Export< LocalOrdinal, GlobalOrdinal, Node >::print ( std::ostream &  os) const [virtual]

Print method.

Definition at line 234 of file Tpetra_Export.hpp.


Friends And Related Function Documentation

template<class LO , class GO , class Node >
RCP< const Export< LO, GO, Node > > createExport ( const RCP< const Map< LO, GO, Node > > &  src,
const RCP< const Map< LO, GO, Node > > &  tgt 
) [related]

Non-member constructor for Export objects.

Creates a Export object from the given source and target maps.

Precondition:
src != null
tgt != null
Returns:
Returns the Export object. If src == tgt, returns null. (Debug mode: throws std::runtime_error if one of src or tgt is null.)

Definition at line 416 of file Tpetra_Export.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines