44 #ifndef EPETRA_IMPORT_UTIL_H
45 #define EPETRA_IMPORT_UTIL_H
61 namespace Epetra_Import_Util {
78 std::vector<int>& SourcePids);
89 const int * RemoteLIDs,
91 const int *PermuteToLIDs,
92 const int *PermuteFromLIDs,
111 const int * RemoteLIDs,
113 const int *PermuteToLIDs,
114 const int *PermuteFromLIDs,
118 int TargetNumNonzeros,
123 const std::vector<int> &SourcePids,
124 std::vector<int> &TargetPids);
140 const int * RemoteLIDs,
142 const int *PermuteToLIDs,
143 const int *PermuteFromLIDs,
147 int TargetNumNonzeros,
150 long long * CSR_colind,
152 const std::vector<int> &SourcePids,
153 std::vector<int> &TargetPids);
168 #ifndef EPETRA_NO_32BIT_GLOBAL_INDICES
170 const int *owningPIDs,
bool SortGhostsAssociatedWithEachProcessor,
184 #ifndef EPETRA_NO_64BIT_GLOBAL_INDICES
186 const int *owningPIDs,
bool SortGhostsAssociatedWithEachProcessor, std::vector<int>& RemotePIDs,
Epetra_BlockMap & NewColMap);
Epetra_Map: A class for partitioning vectors and matrices.
Epetra_Import: This class builds an import object for efficient importing of off-processor elements...
int PackAndPrepareWithOwningPIDs(const Epetra_CrsMatrix &SourceMatrix, int NumExportIDs, int *ExportLIDs, int &LenExports, char *&Exports, int &SizeOfPacket, int *Sizes, bool &VarSizes, std::vector< int > &SourcePids)
PackAndPrepareWithOwningPIDs.
int UnpackWithOwningPIDsCount(const Epetra_CrsMatrix &SourceMatrix, int NumSameIDs, int NumRemoteIDs, const int *RemoteLIDs, int NumPermuteIDs, const int *PermuteToLIDs, const int *PermuteFromLIDs, int LenImports, char *Imports)
UnpackWithOwningPIDsCount.
int UnpackAndCombineIntoCrsArrays(const Epetra_CrsMatrix &SourceMatrix, int NumSameIDs, int NumRemoteIDs, const int *RemoteLIDs, int NumPermuteIDs, const int *PermuteToLIDs, const int *PermuteFromLIDs, int LenImports, char *Imports, int TargetNumRows, int TargetNumNonzeros, int MyTargetPID, int *CSR_rowptr, int *CSR_colind, double *CSR_values, const std::vector< int > &SourcePids, std::vector< int > &TargetPids)
UnpackAndCombineIntoCrsArrays.
Epetra_BlockMap: A class for partitioning block element vectors and matrices.
int LowCommunicationMakeColMapAndReindex(int N, const int *rowptr, int *colind, const Epetra_Map &domainMap, const int *owningPIDs, bool SortGhostsAssociatedWithEachProcessor, std::vector< int > &RemotePIDs, Epetra_BlockMap &NewColMap)
LowCommunicationMakeColMapAndReindex.
Epetra_CrsMatrix: A class for constructing and using real-valued double-precision sparse compressed r...