Xpetra Version of the Day
Loading...
Searching...
No Matches
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.
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.
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.
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.
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.
static RCP< MatrixBuild (const RCP< const Map > &rowMap, const ArrayRCP< const size_t > &NumEntriesPerRowToAlloc)
 Constructor specifying (possibly different) number of entries in each row.
static RCP< MatrixBuild (const RCP< const CrsGraph > &graph, const RCP< ParameterList > &paramList=Teuchos::null)
 Constructor specifying graph.
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.
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.
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.
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.
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.
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.
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.

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

◆ MatrixFactory()

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

◆ Build() [1/14]

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.

◆ Build() [2/14]

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.

◆ Build() [3/14]

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.

◆ Build() [4/14]

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.

◆ Build() [5/14]

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.

◆ Build() [6/14]

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.

◆ Build() [7/14]

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.

◆ Build() [8/14]

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.

◆ Build() [9/14]

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.

◆ Build() [10/14]

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.

◆ Build() [11/14]

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.

◆ Build() [12/14]

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.

◆ Build() [13/14]

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.

◆ Build() [14/14]

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

Definition at line 153 of file Xpetra_MatrixFactory_def.hpp.

◆ BuildCopy()

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: