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 45 of file GraphModel.cpp.

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

Definition at line 47 of file GraphModel.cpp.

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

Definition at line 48 of file GraphModel.cpp.

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

Definition at line 49 of file GraphModel.cpp.

Definition at line 51 of file GraphModel.cpp.

Definition at line 53 of file GraphModel.cpp.

Definition at line 54 of file GraphModel.cpp.

Definition at line 56 of file GraphModel.cpp.

Definition at line 57 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 64 of file GraphModel.cpp.

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

Definition at line 96 of file GraphModel.cpp.

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

Definition at line 106 of file GraphModel.cpp.

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

Definition at line 138 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 151 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 582 of file GraphModel.cpp.

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

Definition at line 696 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 39 of file GraphModel.cpp.