Ifpack2 Templated Preconditioning Package Version 1.0
Loading...
Searching...
No Matches
Ifpack2::Details::TriDiSolver< MatrixType, true > Class Template Reference

Partial specialization for stub=true. More...

#include <Ifpack2_Details_TriDiSolver_decl.hpp>

Inheritance diagram for Ifpack2::Details::TriDiSolver< MatrixType, true >:

Public Types

Public typedefs
typedef MatrixType matrix_type
 The first template parameter of this class.
typedef MatrixType::scalar_type scalar_type
 The type of entries in the input (global) matrix.
typedef MatrixType::local_ordinal_type local_ordinal_type
 The type of local indices in the input (global) matrix.
typedef MatrixType::global_ordinal_type global_ordinal_type
 The type of global indices in the input (global) matrix.
typedef MatrixType::node_type node_type
 The Node type of the input (global) matrix.
typedef Teuchos::ScalarTraits< scalar_type >::magnitudeType magnitude_type
 The type of the absolute value (magnitude) of a scalar_type.
typedef Tpetra::RowMatrix< scalar_type, local_ordinal_type, global_ordinal_type, node_typerow_matrix_type
 Specialization of Tpetra::RowMatrix used by this class.
typedef Tpetra::Map< local_ordinal_type, global_ordinal_type, node_typemap_type
 Specialization of Tpetra::Map used by this class.
Public Types inherited from Ifpack2::Preconditioner< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type >
typedef Teuchos::ScalarTraits< MatrixType::scalar_type >::magnitudeType magnitude_type
 The type of the magnitude (absolute value) of a matrix entry.

Public Member Functions

Constructor and destructor
 TriDiSolver (const Teuchos::RCP< const row_matrix_type > &matrix)
 Constructor.
virtual ~TriDiSolver ()
 Destructor (declared virtual for memory safety of derived classes).
Teuchos::RCP< const map_typegetDomainMap () const
 Implementation of Tpetra::Operator.
Teuchos::RCP< const map_typegetRangeMap () const
 The range Map of this operator.
Public Member Functions inherited from Ifpack2::Preconditioner< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type >
virtual ~Preconditioner ()
 Destructor.
virtual void apply (const Tpetra::MultiVector< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type > &X, Tpetra::MultiVector< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, MatrixType::scalar_type alpha=Teuchos::ScalarTraits< MatrixType::scalar_type >::one(), MatrixType::scalar_type beta=Teuchos::ScalarTraits< MatrixType::scalar_type >::zero()) const=0
 Apply the preconditioner to X, putting the result in Y.
virtual void setParameters (const Teuchos::ParameterList &List)=0
 Set this preconditioner's parameters.
virtual void setZeroStartingSolution (bool zeroStartingSolution)
 Set this preconditioner's parameters.
virtual void initialize ()=0
 Set up the graph structure of this preconditioner.
virtual bool isInitialized () const=0
 True if the preconditioner has been successfully initialized, else false.
virtual void compute ()=0
 Set up the numerical values in this preconditioner.
virtual bool isComputed () const=0
 True if the preconditioner has been successfully computed, else false.
virtual Teuchos::RCP< const Tpetra::RowMatrix< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type > > getMatrix () const=0
 The input matrix given to the constructor.
virtual int getNumInitialize () const=0
 The number of calls to initialize().
virtual int getNumCompute () const=0
 The number of calls to compute().
virtual int getNumApply () const=0
 The number of calls to apply().
virtual double getInitializeTime () const=0
 The time (in seconds) spent in initialize().
virtual double getComputeTime () const=0
 The time (in seconds) spent in compute().
virtual double getApplyTime () const=0
 The time (in seconds) spent in apply().
Public Member Functions inherited from Ifpack2::Details::CanChangeMatrix< Tpetra::RowMatrix< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type > >
virtual void setMatrix (const Teuchos::RCP< const Tpetra::RowMatrix< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type > > &A)=0
 Set the new matrix.
virtual ~CanChangeMatrix ()
 Destructor.

Detailed Description

template<class MatrixType>
class Ifpack2::Details::TriDiSolver< MatrixType, true >

Partial specialization for stub=true.

Member Typedef Documentation

◆ matrix_type

template<class MatrixType>
typedef MatrixType Ifpack2::Details::TriDiSolver< MatrixType, true >::matrix_type

The first template parameter of this class.

This must be a Tpetra::RowMatrix specialization.

◆ scalar_type

template<class MatrixType>
typedef MatrixType::scalar_type Ifpack2::Details::TriDiSolver< MatrixType, true >::scalar_type

The type of entries in the input (global) matrix.

◆ local_ordinal_type

template<class MatrixType>
typedef MatrixType::local_ordinal_type Ifpack2::Details::TriDiSolver< MatrixType, true >::local_ordinal_type

The type of local indices in the input (global) matrix.

◆ global_ordinal_type

template<class MatrixType>
typedef MatrixType::global_ordinal_type Ifpack2::Details::TriDiSolver< MatrixType, true >::global_ordinal_type

The type of global indices in the input (global) matrix.

◆ node_type

template<class MatrixType>
typedef MatrixType::node_type Ifpack2::Details::TriDiSolver< MatrixType, true >::node_type

The Node type of the input (global) matrix.

◆ magnitude_type

template<class MatrixType>
typedef Teuchos::ScalarTraits<scalar_type>::magnitudeType Ifpack2::Details::TriDiSolver< MatrixType, true >::magnitude_type

The type of the absolute value (magnitude) of a scalar_type.

◆ row_matrix_type

template<class MatrixType>
typedef Tpetra::RowMatrix<scalar_type, local_ordinal_type, global_ordinal_type, node_type> Ifpack2::Details::TriDiSolver< MatrixType, true >::row_matrix_type

Specialization of Tpetra::RowMatrix used by this class.

◆ map_type

template<class MatrixType>
typedef Tpetra::Map<local_ordinal_type, global_ordinal_type, node_type> Ifpack2::Details::TriDiSolver< MatrixType, true >::map_type

Specialization of Tpetra::Map used by this class.

Constructor & Destructor Documentation

◆ TriDiSolver()

template<class MatrixType>
Ifpack2::Details::TriDiSolver< MatrixType, true >::TriDiSolver ( const Teuchos::RCP< const row_matrix_type > & matrix)

Constructor.

Parameters
matrix[in] The original input matrix.

◆ ~TriDiSolver()

template<class MatrixType>
Ifpack2::Details::TriDiSolver< MatrixType, true >::~TriDiSolver ( )
virtual

Destructor (declared virtual for memory safety of derived classes).

Member Function Documentation

◆ getDomainMap()

template<class MatrixType>
Teuchos::RCP< const typename TriDiSolver< MatrixType, true >::map_type > Ifpack2::Details::TriDiSolver< MatrixType, true >::getDomainMap ( ) const
virtual

Implementation of Tpetra::Operator.

The domain Map of this operator.

The domain Map describes the distribution of valid input vectors X to the apply() method.

Implements Ifpack2::Preconditioner< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type >.

◆ getRangeMap()

template<class MatrixType>
Teuchos::RCP< const typename TriDiSolver< MatrixType, true >::map_type > Ifpack2::Details::TriDiSolver< MatrixType, true >::getRangeMap ( ) const
virtual

The range Map of this operator.

The range Map describes the distribution of valid output vectors Y to the apply() method.

Implements Ifpack2::Preconditioner< MatrixType::scalar_type, MatrixType::local_ordinal_type, MatrixType::global_ordinal_type, MatrixType::node_type >.


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