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

#include <Xpetra_MatrixFactory_decl.hpp>

Static Public Member Functions

static RCP< MatrixBuild (const RCP< const Map > &rowMap)
 
static RCP< MatrixBuild (const RCP< const Map > &rowMap, size_t maxNumEntriesPerRow)
 Constructor specifying the number of non-zeros for all rows. More...
 
static RCP< MatrixBuild (const RCP< const Map > &rowMap, const RCP< const Map > &colMap, size_t maxNumEntriesPerRow)
 Constructor specifying the max number of non-zeros per row and providing column map. More...
 
static RCP< MatrixBuild (const RCP< const Map > &rowMap, const RCP< const Map > &colMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc)
 Constructor specifying the (possibly different) number of entries per row and providing column map. More...
 
static RCP< MatrixBuild (const Teuchos::RCP< const Map > &rowMap, const Teuchos::RCP< const Map > &colMap, const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &lclMatrix, const Teuchos::RCP< Teuchos::ParameterList > &params=null)
 Constructor providing a local Kokkos::CrsMatrix together with a row and column map. More...
 
static RCP< MatrixBuild (const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &lclMatrix, const Teuchos::RCP< const Map > &rowMap, const Teuchos::RCP< const Map > &colMap, const Teuchos::RCP< const Map > &domainMap=Teuchos::null, const Teuchos::RCP< const Map > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=null)
 Constructor providing a local Kokkos::CrsMatrix together with all maps. More...
 
static RCP< MatrixBuild (const RCP< const Map > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc)
 Constructor specifying (possibly different) number of entries in each row. More...
 
static RCP< MatrixBuild (const RCP< const CrsGraph > &graph, const RCP< ParameterList > &paramList=Teuchos::null)
 Constructor specifying graph. More...
 
static RCP< MatrixBuild (const RCP< const CrsGraph > &graph, typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type::values_type &values, const RCP< ParameterList > &paramList=Teuchos::null)
 Constructor specifying graph and values array. More...
 
static RCP< MatrixBuild (const RCP< const Vector > &diagonal)
 Constructor for creating a diagonal Xpetra::Matrix using the entries of a given vector for the diagonal. More...
 
static RCP< MatrixBuild (const RCP< const Matrix > &sourceMatrix, const Import &importer, const RCP< const Map > &domainMap=Teuchos::null, const RCP< const Map > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor to create a Matrix using a fusedImport-style construction. The originalMatrix must be a Xpetra::CrsMatrixWrap under the hood or this will fail. More...
 
static RCP< MatrixBuild (const RCP< const Matrix > &sourceMatrix, const Export &exporter, const RCP< const Map > &domainMap, const RCP< const Map > &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
 Constructor to create a Matrix using a fusedExport-style construction. The originalMatrix must be a Xpetra::CrsMatrixWrap under the hood or this will fail. More...
 
static RCP< MatrixBuild (const RCP< const Matrix > &sourceMatrix, const Import &RowImporter, const Import &DomainImporter, const RCP< const Map > &domainMap, const RCP< const Map > &rangeMap, const Teuchos::RCP< Teuchos::ParameterList > &params)
 Constructor to create a Matrix using a fusedImport-style construction. The originalMatrix must be a Xpetra::CrsMatrixWrap under the hood or this will fail. More...
 
static RCP< MatrixBuild (const RCP< const Matrix > &sourceMatrix, const Export &RowExporter, const Export &DomainExporter, const RCP< const Map > &domainMap=Teuchos::null, const RCP< const Map > &rangeMap=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &params=Teuchos::null)
 Constructor to create a Matrix using a fusedExport-style construction. The originalMatrix must be a Xpetra::CrsMatrixWrap under the hood or this will fail. More...
 
static RCP< Xpetra::Matrix
< Scalar, LocalOrdinal,
GlobalOrdinal, Node > > 
BuildCopy (const RCP< const Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > A, bool setFixedBlockSize=true)
 

Private Member Functions

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

Detailed Description

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
class Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Definition at line 32 of file Xpetra_MatrixFactory_decl.hpp.

Constructor & Destructor Documentation

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::MatrixFactory ( )
inlineprivate

Private constructor. This is a static class.

Definition at line 38 of file Xpetra_MatrixFactory_decl.hpp.

Member Function Documentation

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Map > &  rowMap)
static

Constructor for an empty, DynamicProfile matrix. Supports Epetra only, as DynamicProfile no longer exists in Tpetra.

Definition at line 22 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Map > &  rowMap,
size_t  maxNumEntriesPerRow 
)
static

Constructor specifying the number of non-zeros for all rows.

Definition at line 27 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Map > &  rowMap,
const RCP< const Map > &  colMap,
size_t  maxNumEntriesPerRow 
)
static

Constructor specifying the max number of non-zeros per row and providing column map.

Definition at line 32 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Map > &  rowMap,
const RCP< const Map > &  colMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc 
)
static

Constructor specifying the (possibly different) number of entries per row and providing column map.

Definition at line 37 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const Teuchos::RCP< const Map > &  rowMap,
const Teuchos::RCP< const Map > &  colMap,
const typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type &  lclMatrix,
const Teuchos::RCP< Teuchos::ParameterList > &  params = null 
)
static

Constructor providing a local Kokkos::CrsMatrix together with a row and column map.

Definition at line 42 of file Xpetra_MatrixFactory_def.hpp.

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

Constructor providing a local Kokkos::CrsMatrix together with all maps.

Definition at line 52 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Map > &  rowMap,
const ArrayRCP< const size_t > &  NumEntriesPerRowToAlloc 
)
static

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

Definition at line 64 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const CrsGraph > &  graph,
const RCP< ParameterList > &  paramList = Teuchos::null 
)
static

Constructor specifying graph.

Definition at line 69 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const CrsGraph > &  graph,
typename Xpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node >::local_matrix_type::values_type &  values,
const RCP< ParameterList > &  paramList = Teuchos::null 
)
static

Constructor specifying graph and values array.

Definition at line 74 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Vector > &  diagonal)
static

Constructor for creating a diagonal Xpetra::Matrix using the entries of a given vector for the diagonal.

Definition at line 81 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Matrix > &  sourceMatrix,
const Import importer,
const RCP< const Map > &  domainMap = Teuchos::null,
const RCP< const Map > &  rangeMap = Teuchos::null,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
static

Constructor to create a Matrix using a fusedImport-style construction. The originalMatrix must be a Xpetra::CrsMatrixWrap under the hood or this will fail.

Definition at line 115 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Matrix > &  sourceMatrix,
const Export exporter,
const RCP< const Map > &  domainMap,
const RCP< const Map > &  rangeMap,
const Teuchos::RCP< Teuchos::ParameterList > &  params 
)
static

Constructor to create a Matrix using a fusedExport-style construction. The originalMatrix must be a Xpetra::CrsMatrixWrap under the hood or this will fail.

Definition at line 129 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Matrix > &  sourceMatrix,
const Import RowImporter,
const Import DomainImporter,
const RCP< const Map > &  domainMap,
const RCP< const Map > &  rangeMap,
const Teuchos::RCP< Teuchos::ParameterList > &  params 
)
static

Constructor to create a Matrix using a fusedImport-style construction. The originalMatrix must be a Xpetra::CrsMatrixWrap under the hood or this will fail.

Definition at line 139 of file Xpetra_MatrixFactory_def.hpp.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
static RCP<Matrix> Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Build ( const RCP< const Matrix > &  sourceMatrix,
const Export RowExporter,
const Export DomainExporter,
const RCP< const Map > &  domainMap = Teuchos::null,
const RCP< const Map > &  rangeMap = Teuchos::null,
const Teuchos::RCP< Teuchos::ParameterList > &  params = Teuchos::null 
)
static

Constructor to create a Matrix using a fusedExport-style construction. The originalMatrix must be a Xpetra::CrsMatrixWrap under the hood or this will fail.

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Xpetra::MatrixFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::BuildCopy ( const RCP< const Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > >  A,
bool  setFixedBlockSize = true 
)
static

create an explicit copy of a given matrix This routine supports blocked and single-block operators

Definition at line 167 of file Xpetra_MatrixFactory_def.hpp.


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