|
Ifpack2 Templated Preconditioning Package Version 1.0
|
Preconditioners and smoothers for Tpetra sparse matrices. More...
Namespaces | |
| namespace | BlockTriDiContainerDetails |
Classes | |
| class | AdditiveSchwarz |
| Additive Schwarz domain decomposition for Tpetra sparse matrices. More... | |
| class | BandedContainer |
| Store and solve a local Banded linear problem. More... | |
| class | BlockRelaxation |
| Block relaxation preconditioners (or smoothers) for Tpetra::RowMatrix and Tpetra::CrsMatrix sparse matrices. More... | |
| class | BlockTriDiContainer |
| Store and solve local block tridiagonal linear problems. More... | |
| class | BlockTriDiContainer< MatrixType, BlockTriDiContainerDetails::ImplNotAvailTag > |
| class | BlockTriDiContainer< MatrixType, BlockTriDiContainerDetails::ImplSimdTag > |
| class | BorderedOperator |
| Ifpack2 bordered operator. More... | |
| class | Chebyshev |
| Diagonally scaled Chebyshev iteration for Tpetra sparse matrices. More... | |
| class | Container |
| Interface for creating and solving a set of local linear problems. More... | |
| class | ContainerFactory |
| A static "factory" that provides a way to register and construct arbitrary Ifpack2::Container subclasses using string keys. More... | |
| class | ContainerImpl |
| The implementation of the numerical features of Container (Jacobi, Gauss-Seidel, SGS). This class allows a custom scalar type (LocalScalarType) to be used for storing blocks and solving the block systems. Hiding this template parameter from the Container interface simplifies the BlockRelaxation and ContainerFactory classes. More... | |
| class | DatabaseSchwarz |
| Overlapping Schwarz where redundant patches are not stored explicitly. More... | |
| class | DenseContainer |
| Store and solve a local dense linear problem. More... | |
| class | Diagonal |
| Diagonal preconditioner. More... | |
| class | DiagonalFilter |
| Ifpack2_DiagonalFilter: Filter to modify the diagonal entries of a given Tpetra_RowMatrix. More... | |
| class | DropFilter |
| Filter based on matrix entries. More... | |
| class | Factory |
| "Factory" for creating Ifpack2 preconditioners. More... | |
| class | Hiptmair |
| Wrapper for Hiptmair smoothers. More... | |
| class | IdentitySolver |
| "Identity" preconditioner. More... | |
| class | IlukGraph |
| Construct a level filled graph for use in computing an ILU(k) incomplete factorization. More... | |
| class | ILUT |
| ILUT (incomplete LU factorization with threshold) of a Tpetra sparse matrix. More... | |
| class | LinearPartitioner |
| A class to define linear partitions. More... | |
| class | LinePartitioner |
| Ifpack2::LinePartitioner: A class to define partitions into a set of lines. More... | |
| class | LocalFilter |
| Access only local rows and columns of a sparse matrix. More... | |
| class | LocalSparseTriangularSolver |
| "Preconditioner" that solves local sparse triangular systems. More... | |
| class | MDF |
| MDF (incomplete LU factorization with minimum discarded fill reordering) of a Tpetra sparse matrix. More... | |
| class | OverlapGraph |
| Construct an overlapped graph from a given nonoverlapping graph. More... | |
| class | OverlappingPartitioner |
| Create overlapping partitions of a local graph. More... | |
| class | OverlappingRowMatrix |
| Sparse matrix (Tpetra::RowMatrix subclass) with ghost rows. More... | |
| class | Partitioner |
| Ifpack2::Partitioner: More... | |
| class | Preconditioner |
| Interface for all Ifpack2 preconditioners. More... | |
| class | Relaxation |
| Relaxation preconditioners for Tpetra::RowMatrix and Tpetra::CrsMatrix sparse matrices. More... | |
| class | ReorderFilter |
| Wraps a Tpetra::RowMatrix in a filter that reorders local rows and columns. More... | |
| class | RILUK |
| ILU(k) factorization of a given Tpetra::RowMatrix. More... | |
| class | SingletonFilter |
| Filter based on matrix entries. More... | |
| class | SparseContainer |
| Store and solve a local sparse linear problem. More... | |
| class | SparsityFilter |
| Drop entries of a matrix, based on the sparsity pattern. More... | |
| class | TriDiContainer |
| Store and solve a local TriDi linear problem. More... | |
Enumerations | |
| enum | CondestType { Cheap , CG , GMRES } |
| Ifpack2::CondestType: enum to define the type of condition number estimate. More... | |
| enum | ScalingType |
| Ifpack2 scaling type selector. More... | |
Functions | |
| template<class GraphType > | |
| Teuchos::RCP< const GraphType > | createOverlapGraph (const Teuchos::RCP< const GraphType > &inputGraph, const int overlapLevel) |
| Construct an overlapped graph for use with Ifpack2 preconditioners. | |
| template<class MatrixType > | |
| Teuchos::RCP< const MatrixType > | createOverlapMatrix (const Teuchos::RCP< const MatrixType > &inputMatrix, const int overlapLevel) |
| Construct an overlapped matrix for use with Ifpack2 preconditioners. | |
| template<class MatrixType , class VectorType > | |
| Teuchos::RCP< Ifpack2::Diagonal< Tpetra::RowMatrix< typename MatrixType::scalar_type, typename MatrixType::local_ordinal_type, typename MatrixType::global_ordinal_type, typename MatrixType::node_type > > > | createDiagonalPreconditioner (const Teuchos::RCP< const VectorType > &invdiag) |
| bool | supportsUnsymmetric (const std::string &prec_type) |
| \C true if the specified preconditioner type supports nonsymmetric matrices, else false. | |
| template<typename Ordinal , typename SizeType > | |
| void | add_to_heap (const Ordinal &idx, Teuchos::Array< Ordinal > &heap, SizeType &heap_len) |
| template<typename Ordinal , typename SizeType , class Compare > | |
| void | add_to_heap (const Ordinal &idx, Teuchos::Array< Ordinal > &heap, SizeType &heap_len, Compare comp) |
| template<typename Ordinal , typename SizeType > | |
| void | rm_heap_root (Teuchos::Array< Ordinal > &heap, SizeType &heap_len) |
| template<typename Ordinal , typename SizeType , class Compare > | |
| void | rm_heap_root (Teuchos::Array< Ordinal > &heap, SizeType &heap_len, Compare comp) |
| void | getValidParameters (Teuchos::ParameterList ¶ms) |
| Fills a list which contains all the parameters possibly used by Ifpack2. | |
| template<typename T > | |
| void | getParameter (const Teuchos::ParameterList ¶ms, const std::string &name, T &value) |
| Set a value from a ParameterList if a parameter with the specified name exists. | |
Preconditioners and smoothers for Tpetra sparse matrices.
| enum Ifpack2::CondestType |
Ifpack2::CondestType: enum to define the type of condition number estimate.
| Enumerator | |
|---|---|
| Cheap | cheap estimate |
| CG | Uses AztecOO's CG. |
| GMRES | Uses AztecOO's GMRES. |
| enum Ifpack2::ScalingType |
| Teuchos::RCP< const GraphType > Ifpack2::createOverlapGraph | ( | const Teuchos::RCP< const GraphType > & | inputGraph, |
| const int | overlapLevel | ||
| ) |
Construct an overlapped graph for use with Ifpack2 preconditioners.
| GraphType | A specialization of Tpetra::RowGraph or Tpetra::CrsGraph. |
| inputGraph | [in] The input graph. We assume that its row Map is nonoverlapping. |
| overlapLevel | [in] The level of overlap. Zero means no overlap, in which case this function just returns the original inputGraph. |
| Teuchos::RCP< const MatrixType > Ifpack2::createOverlapMatrix | ( | const Teuchos::RCP< const MatrixType > & | inputMatrix, |
| const int | overlapLevel | ||
| ) |
Construct an overlapped matrix for use with Ifpack2 preconditioners.
| MatrixType | A specialization of Tpetra::CrsMatrix. |
| inputMatrix | [in] The input matrix. We assume that its row Map is nonoverlapping. |
| overlapLevel | [in] The level of overlap. Zero means no overlap, in which case this function just returns the original inputMatrix. |
| Teuchos::RCP< Ifpack2::Diagonal< Tpetra::RowMatrix< typename MatrixType::scalar_type, typename MatrixType::local_ordinal_type, typename MatrixType::global_ordinal_type, typename MatrixType::node_type > > > Ifpack2::createDiagonalPreconditioner | ( | const Teuchos::RCP< const VectorType > & | invdiag | ) |
Function to construct a Diagonal preconditioner with Vector input. This is just a nonmember function version of Diagonal's constructor.
Example usage:
| bool Ifpack2::supportsUnsymmetric | ( | const std::string & | prec_type | ) |
\C true if the specified preconditioner type supports nonsymmetric matrices, else false.
| void Ifpack2::add_to_heap | ( | const Ordinal & | idx, |
| Teuchos::Array< Ordinal > & | heap, | ||
| SizeType & | heap_len | ||
| ) |
Add idx to heap, don't assume heap occupies entire vector.
| void Ifpack2::add_to_heap | ( | const Ordinal & | idx, |
| Teuchos::Array< Ordinal > & | heap, | ||
| SizeType & | heap_len, | ||
| Compare | comp | ||
| ) |
Add idx to heap, don't assume heap occupies entire vector. Also take custom comparator.
| void Ifpack2::rm_heap_root | ( | Teuchos::Array< Ordinal > & | heap, |
| SizeType & | heap_len | ||
| ) |
Remove heap root, don't shorten vector but update a heap_len parameter.
| void Ifpack2::rm_heap_root | ( | Teuchos::Array< Ordinal > & | heap, |
| SizeType & | heap_len, | ||
| Compare | comp | ||
| ) |
Remove heap root, with custom comparator, don't assume heap occupies entire vector.
| void Ifpack2::getValidParameters | ( | Teuchos::ParameterList & | params | ) |
Fills a list which contains all the parameters possibly used by Ifpack2.
| void Ifpack2::getParameter | ( | const Teuchos::ParameterList & | params, |
| const std::string & | name, | ||
| T & | value | ||
| ) |
Set a value from a ParameterList if a parameter with the specified name exists.
If the specified name does not name a parameter in the list, then 'value' is not referenced.