Tpetra parallel linear algebra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
List of all members
Tpetra::CrsGraphTransposer< LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

Construct and (optionally) redistribute the explicitly stored transpose of a CrsGraph. More...

#include <Tpetra_CrsGraphTransposer_decl.hpp>

Public Types

Typedefs
typedef LocalOrdinal local_ordinal_type
 
typedef GlobalOrdinal global_ordinal_type
 
typedef Node node_type
 
typedef Map< LocalOrdinal,
GlobalOrdinal, Node > 
map_type
 
typedef CrsGraph< LocalOrdinal,
GlobalOrdinal, Node > 
crs_graph_type
 

Public Member Functions

Constructors
 CrsGraphTransposer (const Teuchos::RCP< const crs_graph_type > &origGraph, const std::string &label=std::string())
 Constructor that takes the graph to transpose. More...
 

Methods for computing the explicit transpose.

Teuchos::RCP< crs_graph_typesymmetrize (const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Compute and return graph+graph^T of the graph given to the constructor. More...
 
Teuchos::RCP< crs_graph_typecreateTranspose (const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Compute and return the transpose of the graph given to the constructor. More...
 
Teuchos::RCP< crs_graph_typecreateTransposeLocal (const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Compute and return the transpose of the graph given to the constructor. More...
 

Detailed Description

template<class LocalOrdinal, class GlobalOrdinal, class Node>
class Tpetra::CrsGraphTransposer< LocalOrdinal, GlobalOrdinal, Node >

Construct and (optionally) redistribute the explicitly stored transpose of a CrsGraph.

This class is based on the EpetraExt version. It first transposes the graph to an intermediate version with overlapping row map. That graph is then converted to a final version whose row map is "unique", i.e., a row is wholly owned by one process.

This class takes the same template parameters as CrsGraph.

Definition at line 78 of file Tpetra_CrsGraphTransposer_decl.hpp.

Constructor & Destructor Documentation

template<class LocalOrdinal , class GlobalOrdinal , class Node >
Tpetra::CrsGraphTransposer< LocalOrdinal, GlobalOrdinal, Node >::CrsGraphTransposer ( const Teuchos::RCP< const crs_graph_type > &  origGraph,
const std::string &  label = std::string() 
)

Constructor that takes the graph to transpose.

Definition at line 212 of file Tpetra_CrsGraphTransposer_def.hpp.

Member Function Documentation

template<class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > Tpetra::CrsGraphTransposer< LocalOrdinal, GlobalOrdinal, Node >::symmetrize ( const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null)

Compute and return graph+graph^T of the graph given to the constructor.

Definition at line 222 of file Tpetra_CrsGraphTransposer_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > Tpetra::CrsGraphTransposer< LocalOrdinal, GlobalOrdinal, Node >::createTranspose ( const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null)

Compute and return the transpose of the graph given to the constructor.

Definition at line 390 of file Tpetra_CrsGraphTransposer_def.hpp.

template<class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< CrsGraph< LocalOrdinal, GlobalOrdinal, Node > > Tpetra::CrsGraphTransposer< LocalOrdinal, GlobalOrdinal, Node >::createTransposeLocal ( const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null)

Compute and return the transpose of the graph given to the constructor.

In this call, we (potentially) leave the graph with an overlapping row Map. This is a perfectly valid graph, but won't work correctly with some routines in Ifpack or Muelu.

Warning
This routine leaves overlapping rows. Unless you're sure that's OK, call createTranspose() instead.

Definition at line 434 of file Tpetra_CrsGraphTransposer_def.hpp.


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