Zoltan2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Typedefs | Functions | Variables
GraphModel.cpp File Reference
#include <Zoltan2_GraphModel.hpp>
#include <Zoltan2_XpetraCrsMatrixAdapter.hpp>
#include <Zoltan2_XpetraCrsGraphAdapter.hpp>
#include <Zoltan2_BasicVectorAdapter.hpp>
#include <Zoltan2_TestHelpers.hpp>
#include <Zoltan2_InputTraits.hpp>
#include <string>
#include <vector>
#include <iostream>
#include <bitset>
#include <Teuchos_Comm.hpp>
#include <Teuchos_DefaultComm.hpp>
#include <Teuchos_ArrayView.hpp>
Include dependency graph for GraphModel.cpp:

Go to the source code of this file.

Typedefs

typedef
Zoltan2::BasicUserTypes
< zscalar_t, zlno_t, zgno_t
simpleUser_t
 
typedef Tpetra::CrsMatrix
< zscalar_t, zlno_t, zgno_t,
znode_t
tcrsMatrix_t
 
typedef Tpetra::CrsGraph
< zlno_t, zgno_t, znode_t
tcrsGraph_t
 
typedef Tpetra::Map< zlno_t,
zgno_t, znode_t
tmap_t
 
typedef
Zoltan2::BasicVectorAdapter
< simpleUser_t
simpleVAdapter_t
 
typedef Zoltan2::MatrixAdapter
< tcrsMatrix_t, simpleUser_t
baseMAdapter_t
 
typedef Zoltan2::GraphAdapter
< tcrsGraph_t, simpleUser_t
baseGAdapter_t
 
typedef
Zoltan2::XpetraCrsMatrixAdapter
< tcrsMatrix_t, simpleUser_t
xMAdapter_t
 
typedef
Zoltan2::XpetraCrsGraphAdapter
< tcrsGraph_t, simpleUser_t
xGAdapter_t
 

Functions

template<typename offset_t >
void printGraph (zlno_t nrows, const zgno_t *v, const zgno_t *elid, const zgno_t *egid, const offset_t *idx, const RCP< const Comm< int > > &comm)
 
template<typename MatrixOrGraph >
void computeNumDiags (RCP< const MatrixOrGraph > &M, size_t &numLocalDiags, size_t &numGlobalDiags)
 
template<>
void computeNumDiags< tcrsGraph_t > (RCP< const tcrsGraph_t > &M, size_t &numLocalDiags, size_t &numGlobalDiags)
 
template<>
void computeNumDiags< tcrsMatrix_t > (RCP< const tcrsMatrix_t > &M, size_t &numLocalDiags, size_t &numGlobalDiags)
 
template<typename BaseAdapter , typename Adapter , typename MatrixOrGraph >
void testAdapter (RCP< const MatrixOrGraph > &M, RCP< const Tpetra::CrsGraph< zlno_t, zgno_t > > &Mgraph, const RCP< const Comm< int > > &comm, bool idsAreConsecutive, int nVtxWeights, int nEdgeWeights, int nnzWgtIdx, int coordDim, bool consecutiveIdsRequested, bool removeSelfEdges, bool buildLocalGraph)
 
void testGraphModel (string fname, zgno_t xdim, zgno_t ydim, zgno_t zdim, const RCP< const Comm< int > > &comm, int nVtxWeights, int nnzWgtIdx, int coordDim, bool consecutiveIdsRequested, bool removeSelfEdges, bool buildLocalGraph)
 
int main (int narg, char *arg[])
 

Variables

const int SMALL_NUMBER_OF_ROWS = 5
 Test of GraphModel interface. More...
 

Typedef Documentation

Definition at line 80 of file GraphModel.cpp.

typedef Tpetra::CrsMatrix<zscalar_t, zlno_t, zgno_t, znode_t> tcrsMatrix_t

Definition at line 82 of file GraphModel.cpp.

typedef Tpetra::CrsGraph<zlno_t, zgno_t, znode_t> tcrsGraph_t

Definition at line 83 of file GraphModel.cpp.

typedef Tpetra::Map<zlno_t, zgno_t, znode_t> tmap_t

Definition at line 84 of file GraphModel.cpp.

Definition at line 86 of file GraphModel.cpp.

Definition at line 88 of file GraphModel.cpp.

Definition at line 89 of file GraphModel.cpp.

Definition at line 91 of file GraphModel.cpp.

Definition at line 92 of file GraphModel.cpp.

Function Documentation

template<typename offset_t >
void printGraph ( zlno_t  nrows,
const zgno_t v,
const zgno_t elid,
const zgno_t egid,
const offset_t *  idx,
const RCP< const Comm< int > > &  comm 
)

Definition at line 99 of file GraphModel.cpp.

template<typename MatrixOrGraph >
void computeNumDiags ( RCP< const MatrixOrGraph > &  M,
size_t &  numLocalDiags,
size_t &  numGlobalDiags 
)

Definition at line 131 of file GraphModel.cpp.

template<>
void computeNumDiags< tcrsGraph_t > ( RCP< const tcrsGraph_t > &  M,
size_t &  numLocalDiags,
size_t &  numGlobalDiags 
)

Definition at line 141 of file GraphModel.cpp.

template<>
void computeNumDiags< tcrsMatrix_t > ( RCP< const tcrsMatrix_t > &  M,
size_t &  numLocalDiags,
size_t &  numGlobalDiags 
)

Definition at line 173 of file GraphModel.cpp.

template<typename BaseAdapter , typename Adapter , typename MatrixOrGraph >
void testAdapter ( RCP< const MatrixOrGraph > &  M,
RCP< const Tpetra::CrsGraph< zlno_t, zgno_t > > &  Mgraph,
const RCP< const Comm< int > > &  comm,
bool  idsAreConsecutive,
int  nVtxWeights,
int  nEdgeWeights,
int  nnzWgtIdx,
int  coordDim,
bool  consecutiveIdsRequested,
bool  removeSelfEdges,
bool  buildLocalGraph 
)

Definition at line 186 of file GraphModel.cpp.

void testGraphModel ( string  fname,
zgno_t  xdim,
zgno_t  ydim,
zgno_t  zdim,
const RCP< const Comm< int > > &  comm,
int  nVtxWeights,
int  nnzWgtIdx,
int  coordDim,
bool  consecutiveIdsRequested,
bool  removeSelfEdges,
bool  buildLocalGraph 
)

Definition at line 617 of file GraphModel.cpp.

int main ( int  narg,
char *  arg[] 
)

Definition at line 731 of file GraphModel.cpp.

Variable Documentation

const int SMALL_NUMBER_OF_ROWS = 5

Test of GraphModel interface.

Todo:

test all methods of GraphModel

test with GraphAdapter: add testGraphAdapter which is like testAdapter except is uses GraphAdapter queries and it may have edges weights.

Address the TODOs in the code below.

Definition at line 74 of file GraphModel.cpp.