Xpetra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

#include <Xpetra_CrsMatrixFactory.hpp>

Static Public Member Functions

static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rowMap)
 Constructor for empty matrix (intended use is an import/export target - can't insert entries directly) More...
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rowMap, size_t maxNumEntriesPerRow, const Teuchos::RCP< Teuchos::ParameterList > &plist=Teuchos::null)
 Constructor specifying fixed number of entries for each row. More...
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, const Teuchos::RCP< Teuchos::ParameterList > &plist=Teuchos::null)
 Constructor specifying (possibly different) number of entries in each row. More...
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &colMap, size_t maxNumEntriesPerRow, const Teuchos::RCP< Teuchos::ParameterList > &plist=Teuchos::null)
 Constructor specifying column Map and fixed number of entries for each row. More...
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc, const Teuchos::RCP< Teuchos::ParameterList > &plist=Teuchos::null)
 Constructor specifying column Map and number of entries in each row. More...
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node >> &graph, const Teuchos::RCP< Teuchos::ParameterList > &plist=Teuchos::null)
 Constructor specifying a previously constructed graph. More...
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node >> &graph, typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type::values_type &values, const Teuchos::RCP< Teuchos::ParameterList > &plist=Teuchos::null)
 Constructor specifying a previously constructed graph and values array. More...
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &sourceMatrix, const Import< LocalOrdinal, GlobalOrdinal, Node > &importer, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &domainMap=Teuchos::null, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &sourceMatrix, const Export< LocalOrdinal, GlobalOrdinal, Node > &exporter, const RCP< Map< LocalOrdinal, GlobalOrdinal, Scalar >> &domainMap=Teuchos::null, const RCP< Map< LocalOrdinal, GlobalOrdinal, Scalar >> &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &sourceMatrix, const Import< LocalOrdinal, GlobalOrdinal, Node > &RowImporter, const RCP< const Import< LocalOrdinal, GlobalOrdinal, Node >> DomainImporter, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &domainMap, const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &sourceMatrix, const Export< LocalOrdinal, GlobalOrdinal, Node > &RowExporter, const RCP< const Export< LocalOrdinal, GlobalOrdinal, Node >> DomainExporter, const RCP< Map< LocalOrdinal, GlobalOrdinal, Scalar >> &domainMap, const RCP< Map< LocalOrdinal, GlobalOrdinal, Scalar >> &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &colMap, const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &lclMatrix, const Teuchos::RCP< Teuchos::ParameterList > &params=null)
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &lclMatrix, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &colMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &domainMap=Teuchos::null, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=null)
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
Build (const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &lclMatrix, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rowMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &colMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &domainMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rangeMap, const Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node >> &importer, const Teuchos::RCP< const Export< LocalOrdinal, GlobalOrdinal, Node >> &exporter, const Teuchos::RCP< Teuchos::ParameterList > &params=null)
 
static RCP< CrsMatrix< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
BuildBlock (const Teuchos::RCP< const Xpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node >> &blockGraph, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &domainMap, const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &rangeMap, LocalOrdinal blockSize)
 

Private Member Functions

 CrsMatrixFactory ()
 Private constructor. This is a static class. More...
 

Detailed Description

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
class Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Definition at line 70 of file Xpetra_CrsMatrixFactory.hpp.

Constructor & Destructor Documentation

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::CrsMatrixFactory ( )
inlineprivate

Private constructor. This is a static class.

Definition at line 73 of file Xpetra_CrsMatrixFactory.hpp.

Member Function Documentation

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rowMap)
inlinestatic

Constructor for empty matrix (intended use is an import/export target - can't insert entries directly)

Definition at line 78 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rowMap,
size_t  maxNumEntriesPerRow,
const Teuchos::RCP< Teuchos::ParameterList > &  plist = Teuchos::null 
)
inlinestatic

Constructor specifying fixed number of entries for each row.

Definition at line 91 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rowMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc,
const Teuchos::RCP< Teuchos::ParameterList > &  plist = Teuchos::null 
)
inlinestatic

Constructor specifying (possibly different) number of entries in each row.

Definition at line 107 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  colMap,
size_t  maxNumEntriesPerRow,
const Teuchos::RCP< Teuchos::ParameterList > &  plist = Teuchos::null 
)
inlinestatic

Constructor specifying column Map and fixed number of entries for each row.

Definition at line 121 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  colMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc,
const Teuchos::RCP< Teuchos::ParameterList > &  plist = Teuchos::null 
)
inlinestatic

Constructor specifying column Map and number of entries in each row.

Definition at line 137 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node >> &  graph,
const Teuchos::RCP< Teuchos::ParameterList > &  plist = Teuchos::null 
)
inlinestatic

Constructor specifying a previously constructed graph.

Definition at line 150 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const CrsGraph< LocalOrdinal, GlobalOrdinal, Node >> &  graph,
typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type::values_type &  values,
const Teuchos::RCP< Teuchos::ParameterList > &  plist = Teuchos::null 
)
inlinestatic

Constructor specifying a previously constructed graph and values array.

Definition at line 163 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  sourceMatrix,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  importer,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  domainMap = Teuchos::null,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rangeMap = Teuchos::null,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inlinestatic

Definition at line 175 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  sourceMatrix,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  exporter,
const RCP< Map< LocalOrdinal, GlobalOrdinal, Scalar >> &  domainMap = Teuchos::null,
const RCP< Map< LocalOrdinal, GlobalOrdinal, Scalar >> &  rangeMap = Teuchos::null,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
inlinestatic

Definition at line 192 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  sourceMatrix,
const Import< LocalOrdinal, GlobalOrdinal, Node > &  RowImporter,
const RCP< const Import< LocalOrdinal, GlobalOrdinal, Node >>  DomainImporter,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  domainMap,
const RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rangeMap,
const Teuchos::RCP< Teuchos::ParameterList > &  params 
)
inlinestatic

Definition at line 209 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >> &  sourceMatrix,
const Export< LocalOrdinal, GlobalOrdinal, Node > &  RowExporter,
const RCP< const Export< LocalOrdinal, GlobalOrdinal, Node >>  DomainExporter,
const RCP< Map< LocalOrdinal, GlobalOrdinal, Scalar >> &  domainMap,
const RCP< Map< LocalOrdinal, GlobalOrdinal, Scalar >> &  rangeMap,
const Teuchos::RCP< Teuchos::ParameterList > &  params 
)
inlinestatic

Definition at line 227 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  colMap,
const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &  lclMatrix,
const Teuchos::RCP< Teuchos::ParameterList > &  params = null 
)
inlinestatic

Definition at line 245 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &  lclMatrix,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  colMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  domainMap = Teuchos::null,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rangeMap = Teuchos::null,
const Teuchos::RCP< Teuchos::ParameterList > &  params = null 
)
inlinestatic

Definition at line 261 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &  lclMatrix,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rowMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  colMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  domainMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rangeMap,
const Teuchos::RCP< const Import< LocalOrdinal, GlobalOrdinal, Node >> &  importer,
const Teuchos::RCP< const Export< LocalOrdinal, GlobalOrdinal, Node >> &  exporter,
const Teuchos::RCP< Teuchos::ParameterList > &  params = null 
)
inlinestatic

Definition at line 279 of file Xpetra_CrsMatrixFactory.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
static RCP<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::CrsMatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::BuildBlock ( const Teuchos::RCP< const Xpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node >> &  blockGraph,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  domainMap,
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &  rangeMap,
LocalOrdinal  blockSize 
)
inlinestatic

Definition at line 301 of file Xpetra_CrsMatrixFactory.hpp.


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