ForTrilinos
Data Types
FEpetra_Import Module Reference

Data Types

type  Epetra_Import
 
Epetra_Import:This class builds an import object for efficient importing of off-processor elements. More...

Functions/Subroutines

Constructor Functions
type(Epetra_ImportEpetra_Import (TargetMap, SourceMap)
 
Epetra_Import Constructor
type(Epetra_Importduplicate (this)
 
Constructs a copy of a Epetra_Import object
Public Member Functions
integer(c_int) NumSameIDs (this)
 Returns the number of elements that are identical between the source and target maps, up to the first different ID.
integer(c_int) NumPermuteIDs (this)
 Returns the number of elements that are local to the calling processor, but not part of the first NumSameIDs() elements.
integer(c_int), dimension(:),
allocatable 
PermuteFromLIDs (this)
 List of elements in the source map that are permuted.
integer(c_int), dimension(:),
allocatable 
PermuteToLIDs (this)
 List of elements in the target map that are permuted.
integer(c_int) NumRemoteIDs (this)
 Returns the number of elements that are not on the calling processor.
integer(c_int) NumExportIDs (this)
 Returns the number of elements that must be sent by the calling processor to other processors.
integer(c_int) NumSend (this)
 Total number of elements to be sent.
integer(c_int) NumRecv (this)
 Total number of elements to be received.
type(Epetra_BlockMapSourceMap (this)
 Returns the SourceMap used to construct this importer.
type(Epetra_BlockMapTargetMap (this)
 Returns the TargetMap used to construct this importer.

Function/Subroutine Documentation

type(Epetra_Import) FEpetra_Import::duplicate ( type(Epetra_Import),intent(in)  this)


Constructs a copy of a Epetra_Import object

This constructor returns a copy of an Epetra_Import object.

type(Epetra_Import) FEpetra_Import::Epetra_Import ( class(Epetra_BlockMap),intent(in)  TargetMap,
class(Epetra_BlockMap),intent(in)  SourceMap 
)


Epetra_Import Constructor

Constructs a Epetra_Import object from the source and target maps. This constructor builds an Epetra_Import object by comparing the GID lists of the source and target maps.

Parameters:
TargetMapIn Map containing the GIDs from which data should be imported to each processor from the source map whenever an import operation is performed using this importer.
SourceMapIn Map containing the GIDs that should be used for importing data.
Warning: Note that the SourceMap must have GIDs uniquely owned, each GID of the source map can occur only once.

Builds an import object that will transfer objects built with SourceMap to objects built with TargetMap. A Epetra_Import object categorizes the elements of the target map into three sets as follows:
  • All elements in the target map that have the same GID as the corresponding element of the source map, starting with the first element in the target map, going up to the first element that is different from the source map. The number of these IDs is returned by NumSameIDs().
  • All elements that are local to the processor, but are not part of the first set of elements. These elements have GIDs that are owned by the calling processor, but at least the first element of this list is permuted. Even if subsequent elements are not permuted, they are included in this list. The number of permuted elements is returned by NumPermutedIDs(). The list of elements (local IDs) in the source map that are permuted can be found in the list PermuteFromLIDs(). The list of elements (local IDs) in the target map that are the new locations of the source elements can be found in the list PermuteToLIDs().
  • All remaining elements of the target map correspond to global IDs that are owned by remote processors. The number of these elements is returned by NumRemoteIDs() and the list of these is returned by RemoteLIDs().
    See Trilinos Epetra_Import documentation for an example.
integer(c_int) FEpetra_Import::NumExportIDs ( class(Epetra_Import),intent(in)  this)

Returns the number of elements that must be sent by the calling processor to other processors.

integer(c_int) FEpetra_Import::NumPermuteIDs ( class(Epetra_Import),intent(in)  this)

Returns the number of elements that are local to the calling processor, but not part of the first NumSameIDs() elements.

integer(c_int) FEpetra_Import::NumRecv ( class(Epetra_Import),intent(in)  this)

Total number of elements to be received.

integer(c_int) FEpetra_Import::NumRemoteIDs ( class(Epetra_Import),intent(in)  this)

Returns the number of elements that are not on the calling processor.

integer(c_int) FEpetra_Import::NumSameIDs ( class(Epetra_Import),intent(in)  this)

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

integer(c_int) FEpetra_Import::NumSend ( class(Epetra_Import),intent(in)  this)

Total number of elements to be sent.

integer(c_int),dimension(:),allocatable FEpetra_Import::PermuteFromLIDs ( class(Epetra_Import),intent(in)  this)

List of elements in the source map that are permuted.

integer(c_int),dimension(:),allocatable FEpetra_Import::PermuteToLIDs ( class(Epetra_Import),intent(in)  this)

List of elements in the target map that are permuted.

type(Epetra_BlockMap) FEpetra_Import::SourceMap ( class(Epetra_Import),intent(in)  this)

Returns the SourceMap used to construct this importer.

type(Epetra_BlockMap) FEpetra_Import::TargetMap ( class(Epetra_Import),intent(in)  this)

Returns the TargetMap used to construct this importer.

 All Classes Namespaces Files Functions