FEI Package Browser (Single Doxygen Collection)
Version of the Day
|
#include <fei_Graph_Impl.hpp>
Public Member Functions | |
Graph_Impl (MPI_Comm comm, int firstLocalRow, int lastLocalRow) | |
virtual | ~Graph_Impl () |
int | addIndices (int row, int len, const int *indices) |
int | addSymmetricIndices (int numIndices, int *indices, bool diagonal=false) |
int | gatherFromOverlap () |
table_type * | getLocalGraph () |
std::vector< remote_table_type * > & | getRemoteGraph () |
int | writeLocalGraph (FEI_OSTREAM &os, bool debug=false, bool prefixLinesWithPoundSign=true) |
int | writeRemoteGraph (FEI_OSTREAM &os) |
int | getNumLocalRows () |
int | getNumLocalNonzeros () const |
int | getLocalRowLength (int row) |
Public Member Functions inherited from fei::Graph | |
virtual | ~Graph () |
Private Member Functions | |
void | addDiagonals (int numIndices, int *indices) |
Private Attributes | |
table_type * | localGraphData_ |
std::vector< remote_table_type * > | remoteGraphData_ |
fei::SharedPtr< fei::EqnComm > | eqnComm_ |
int | firstLocalRow_ |
int | lastLocalRow_ |
int | localProc_ |
int | numProcs_ |
MPI_Comm | comm_ |
Additional Inherited Members | |
Public Types inherited from fei::Graph | |
typedef snl_fei::RaggedTable < snl_fei::MapContig < fei::ctg_set< int > * >, fei::ctg_set< int > > | table_type |
typedef fei::ctg_set< int > | table_row_type |
typedef snl_fei::RaggedTable < std::map< int, fei::ctg_set < int > * >, fei::ctg_set< int > > | remote_table_type |
Basic algebraic matrix-graph representation.
Definition at line 21 of file fei_Graph_Impl.hpp.
fei::Graph_Impl::Graph_Impl | ( | MPI_Comm | comm, |
int | firstLocalRow, | ||
int | lastLocalRow | ||
) |
constructor
Definition at line 22 of file fei_Graph_Impl.cpp.
References comm_, eqnComm_, firstLocalRow_, lastLocalRow_, localGraphData_, fei::localProc(), localProc_, fei::numProcs(), numProcs_, and remoteGraphData_.
|
virtual |
destructor
Definition at line 45 of file fei_Graph_Impl.cpp.
|
virtual |
Add indices to a specified row of the table
Implements fei::Graph.
Definition at line 54 of file fei_Graph_Impl.cpp.
|
virtual |
Add a symmetric block of indices. The array of indices will serve as
both row-numbers, and as column-numbers in those rows.
Implements fei::Graph.
Definition at line 70 of file fei_Graph_Impl.cpp.
|
virtual |
gather all remotely-owned table portions to owning processors
Implements fei::Graph.
Definition at line 191 of file fei_Graph_Impl.cpp.
References fei::mirrorProcs(), and fei::packRaggedTable().
|
inlinevirtual |
Retrieve the local portion of the graph. i.e., The rows which correspond to locally-owned IDs.
Implements fei::Graph.
Definition at line 46 of file fei_Graph_Impl.hpp.
References localGraphData_.
Referenced by fei::Reducer::assembleReducedGraph().
|
inlinevirtual |
Retrieve the remotely-owned portion of the graph.
Implements fei::Graph.
Definition at line 52 of file fei_Graph_Impl.hpp.
References remoteGraphData_.
|
virtual |
Write locally-owned portion of the graph to a specified ostream.
Implements fei::Graph.
Definition at line 152 of file fei_Graph_Impl.cpp.
References FEI_ENDL, and fei::writeToStream().
|
virtual |
Write remotely-owned portion of the graph to a specified ostream.
Implements fei::Graph.
Definition at line 181 of file fei_Graph_Impl.cpp.
References fei::writeToStream().
int fei::Graph_Impl::getNumLocalRows | ( | ) |
Get the number of locally-owned rows.
Definition at line 303 of file fei_Graph_Impl.cpp.
int fei::Graph_Impl::getNumLocalNonzeros | ( | ) | const |
Get the number of nonzeros in the locally-owned portion of the graph.
Definition at line 311 of file fei_Graph_Impl.cpp.
References fei::countNonzeros().
int fei::Graph_Impl::getLocalRowLength | ( | int | row | ) |
Get the length of a specified locally-owned row.
Definition at line 292 of file fei_Graph_Impl.cpp.
References fei::ctg_set< T >::size().
|
private |
Definition at line 114 of file fei_Graph_Impl.cpp.
|
private |
Definition at line 78 of file fei_Graph_Impl.hpp.
Referenced by getLocalGraph(), and Graph_Impl().
|
private |
Definition at line 79 of file fei_Graph_Impl.hpp.
Referenced by getRemoteGraph(), and Graph_Impl().
|
private |
Definition at line 80 of file fei_Graph_Impl.hpp.
Referenced by Graph_Impl().
|
private |
Definition at line 82 of file fei_Graph_Impl.hpp.
Referenced by Graph_Impl().
|
private |
Definition at line 82 of file fei_Graph_Impl.hpp.
Referenced by Graph_Impl().
|
private |
Definition at line 83 of file fei_Graph_Impl.hpp.
Referenced by Graph_Impl().
|
private |
Definition at line 83 of file fei_Graph_Impl.hpp.
Referenced by Graph_Impl().
|
private |
Definition at line 84 of file fei_Graph_Impl.hpp.
Referenced by Graph_Impl().