Tpetra parallel linear algebra Version of the Day
Loading...
Searching...
No Matches
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 Member Functions

Constructors
 CrsGraphTransposer (const Teuchos::RCP< const crs_graph_type > &origGraph)
 Constructor that takes the graph to transpose.
 

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.
 
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.
 
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.
 

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 46 of file Tpetra_CrsGraphTransposer_decl.hpp.

Constructor & Destructor Documentation

◆ CrsGraphTransposer()

Tpetra::CrsGraphTransposer< LocalOrdinal, GlobalOrdinal, Node >::CrsGraphTransposer ( const Teuchos::RCP< const crs_graph_type > &  origGraph)

Constructor that takes the graph to transpose.

Definition at line 167 of file Tpetra_CrsGraphTransposer_def.hpp.

Member Function Documentation

◆ symmetrize()

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 175 of file Tpetra_CrsGraphTransposer_def.hpp.

◆ createTranspose()

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 337 of file Tpetra_CrsGraphTransposer_def.hpp.

◆ createTransposeLocal()

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 371 of file Tpetra_CrsGraphTransposer_def.hpp.


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