EpetraExt Package Browser (Single Doxygen Collection)  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | Private Member Functions | List of all members
EpetraExt::LightweightCrsMatrix Class Reference

#include <EpetraExt_MMHelpers.h>

Public Member Functions

 LightweightCrsMatrix (const Epetra_CrsMatrix &A, RemoteOnlyImport &RowImporter, bool SortGhosts=false, const char *label=0)
 
 LightweightCrsMatrix (const Epetra_CrsMatrix &A, Epetra_Import &RowImporter)
 
 ~LightweightCrsMatrix ()
 
template<>
std::vector< int > & getcolind ()
 
template<>
std::vector< long long > & getcolind ()
 

Public Attributes

std::vector< int > rowptr_
 
std::vector< int > colind_
 
std::vector< double > vals_
 
std::vector< long long > colind_LL_
 
bool use_lw
 
LightweightMapRowMapLW_
 
Epetra_BlockMapRowMapEP_
 
LightweightMap ColMap_
 
Epetra_Map DomainMap_
 
std::vector< int > ColMapOwningPIDs_
 
std::vector< int > ExportLIDs_
 
std::vector< int > ExportPIDs_
 

Private Member Functions

template<typename ImportType , typename int_type >
void Construct (const Epetra_CrsMatrix &A, ImportType &RowImporter, bool SortGhosts=false, const char *label=0)
 
template<class GO >
int MakeColMapAndReindex (std::vector< int > owningPIDs, std::vector< GO > Gcolind, bool SortGhosts=false, const char *label=0)
 
template<typename int_type >
std::vector< int_type > & getcolind ()
 
template<typename ImportType , typename int_type >
int PackAndPrepareReverseComm (const Epetra_CrsMatrix &SourceMatrix, ImportType &RowImporter, std::vector< int > &ReverseSendSizes, std::vector< int_type > &ReverseSendBuffer)
 
template<typename ImportType , typename int_type >
int MakeExportLists (const Epetra_CrsMatrix &SourceMatrix, ImportType &RowImporter, std::vector< int > &ReverseRecvSizes, const int_type *ReverseRecvBuffer, std::vector< int > &ExportPIDs, std::vector< int > &ExportLIDs)
 

Detailed Description

Definition at line 343 of file EpetraExt_MMHelpers.h.

Constructor & Destructor Documentation

EpetraExt::LightweightCrsMatrix::LightweightCrsMatrix ( const Epetra_CrsMatrix A,
RemoteOnlyImport RowImporter,
bool  SortGhosts = false,
const char *  label = 0 
)

Definition at line 1861 of file EpetraExt_MMHelpers.cpp.

EpetraExt::LightweightCrsMatrix::LightweightCrsMatrix ( const Epetra_CrsMatrix A,
Epetra_Import RowImporter 
)

Definition at line 1894 of file EpetraExt_MMHelpers.cpp.

EpetraExt::LightweightCrsMatrix::~LightweightCrsMatrix ( )

Definition at line 1917 of file EpetraExt_MMHelpers.cpp.

Member Function Documentation

template<typename ImportType , typename int_type >
void EpetraExt::LightweightCrsMatrix::Construct ( const Epetra_CrsMatrix A,
ImportType &  RowImporter,
bool  SortGhosts = false,
const char *  label = 0 
)
private

Definition at line 1599 of file EpetraExt_MMHelpers.cpp.

template<class GO >
int EpetraExt::LightweightCrsMatrix::MakeColMapAndReindex ( std::vector< int >  owningPIDs,
std::vector< GO >  Gcolind,
bool  SortGhosts = false,
const char *  label = 0 
)
private

Definition at line 935 of file EpetraExt_MMHelpers.cpp.

template<typename int_type >
std::vector<int_type>& EpetraExt::LightweightCrsMatrix::getcolind ( )
private
template<typename ImportType , typename int_type >
int EpetraExt::LightweightCrsMatrix::PackAndPrepareReverseComm ( const Epetra_CrsMatrix SourceMatrix,
ImportType &  RowImporter,
std::vector< int > &  ReverseSendSizes,
std::vector< int_type > &  ReverseSendBuffer 
)
private

Definition at line 1116 of file EpetraExt_MMHelpers.cpp.

template<typename ImportType , typename int_type >
int EpetraExt::LightweightCrsMatrix::MakeExportLists ( const Epetra_CrsMatrix SourceMatrix,
ImportType &  RowImporter,
std::vector< int > &  ReverseRecvSizes,
const int_type *  ReverseRecvBuffer,
std::vector< int > &  ExportPIDs,
std::vector< int > &  ExportLIDs 
)
private

Definition at line 1442 of file EpetraExt_MMHelpers.cpp.

template<>
std::vector<int>& EpetraExt::LightweightCrsMatrix::getcolind ( )
inline

Definition at line 398 of file EpetraExt_MMHelpers.h.

template<>
std::vector<long long>& EpetraExt::LightweightCrsMatrix::getcolind ( )
inline

Definition at line 401 of file EpetraExt_MMHelpers.h.

Member Data Documentation

std::vector<int> EpetraExt::LightweightCrsMatrix::rowptr_

Definition at line 350 of file EpetraExt_MMHelpers.h.

std::vector<int> EpetraExt::LightweightCrsMatrix::colind_

Definition at line 351 of file EpetraExt_MMHelpers.h.

std::vector<double> EpetraExt::LightweightCrsMatrix::vals_

Definition at line 352 of file EpetraExt_MMHelpers.h.

std::vector<long long> EpetraExt::LightweightCrsMatrix::colind_LL_

Definition at line 356 of file EpetraExt_MMHelpers.h.

bool EpetraExt::LightweightCrsMatrix::use_lw

Definition at line 360 of file EpetraExt_MMHelpers.h.

LightweightMap* EpetraExt::LightweightCrsMatrix::RowMapLW_

Definition at line 361 of file EpetraExt_MMHelpers.h.

Epetra_BlockMap* EpetraExt::LightweightCrsMatrix::RowMapEP_

Definition at line 362 of file EpetraExt_MMHelpers.h.

LightweightMap EpetraExt::LightweightCrsMatrix::ColMap_

Definition at line 363 of file EpetraExt_MMHelpers.h.

Epetra_Map EpetraExt::LightweightCrsMatrix::DomainMap_

Definition at line 364 of file EpetraExt_MMHelpers.h.

std::vector<int> EpetraExt::LightweightCrsMatrix::ColMapOwningPIDs_

Definition at line 368 of file EpetraExt_MMHelpers.h.

std::vector<int> EpetraExt::LightweightCrsMatrix::ExportLIDs_

Definition at line 371 of file EpetraExt_MMHelpers.h.

std::vector<int> EpetraExt::LightweightCrsMatrix::ExportPIDs_

Definition at line 372 of file EpetraExt_MMHelpers.h.


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