Public Member Functions
TSFExtended::PreconditionerFactory< Scalar > Class Template Reference

PreconditionerFactory builds an implementation-specific preconditioner from an abstract specification. More...

Inheritance diagram for TSFExtended::PreconditionerFactory< Scalar >:
Sundance::Handle< PreconditionerFactoryBase< Scalar > > Sundance::ObjectWithVerbosityBase

List of all members.

Public Member Functions

 PreconditionerFactory ()
 Empty ctor.
 PreconditionerFactory (Handleable< PreconditionerFactoryBase< Scalar > > *rawPtr)
 Construct a PreconditionerFactory<Scalar> with a raw pointer to a PreconditionerFactoryBase<Scalar>
 PreconditionerFactory (const RefCountPtr< PreconditionerFactoryBase< Scalar > > &smartPtr)
 Construct a PreconditionerFactory<Scalar> with a smart pointer to a PreconditionerFactoryBase<Scalar>
Preconditioner< Scalar > createPreconditioner (const LinearOperator< Scalar > &A) const
 create a concrete preconditioner

Detailed Description

template<class Scalar>
class TSFExtended::PreconditionerFactory< Scalar >

PreconditionerFactory builds an implementation-specific preconditioner from an abstract specification.

Preconditioners are constructed indirectly through factories rather then directly by preconditioner ctor calls. The reason for this is that when we create a solver and want to specify the preconditioner, we don't yet know the matrix (or even the type or size of matrix) on which the solver is going to operate. Thus we have to defer construction of the preconditioner until the solve() call when the matrix is available. The factory gives us a means by which we can build a preconditioner at that point.

Definition at line 52 of file TSFPreconditionerFactory.hpp.


Constructor & Destructor Documentation

template<class Scalar>
TSFExtended::PreconditionerFactory< Scalar >::PreconditionerFactory ( ) [inline]

Empty ctor.

Definition at line 57 of file TSFPreconditionerFactory.hpp.

template<class Scalar>
TSFExtended::PreconditionerFactory< Scalar >::PreconditionerFactory ( Handleable< PreconditionerFactoryBase< Scalar > > *  rawPtr) [inline]

Construct a PreconditionerFactory<Scalar> with a raw pointer to a PreconditionerFactoryBase<Scalar>

Definition at line 57 of file TSFPreconditionerFactory.hpp.

template<class Scalar>
TSFExtended::PreconditionerFactory< Scalar >::PreconditionerFactory ( const RefCountPtr< PreconditionerFactoryBase< Scalar > > &  smartPtr) [inline]

Construct a PreconditionerFactory<Scalar> with a smart pointer to a PreconditionerFactoryBase<Scalar>

Definition at line 57 of file TSFPreconditionerFactory.hpp.


Member Function Documentation

template<class Scalar>
Preconditioner<Scalar> TSFExtended::PreconditionerFactory< Scalar >::createPreconditioner ( const LinearOperator< Scalar > &  A) const [inline]

create a concrete preconditioner

Definition at line 60 of file TSFPreconditionerFactory.hpp.

Referenced by TSFExtended::BelosSolver::solve(), and TSFExtended::AnasaziEigensolver< Scalar >::solve().

Site Contact