HermesCommon  3.0
Hermes::Preconditioners::IfpackPrecond< Scalar > Class Template Reference

Preconditioners built on IFPACK. More...

#include <precond_ifpack.h>

+ Inheritance diagram for Hermes::Preconditioners::IfpackPrecond< Scalar >:

Public Member Functions

 IfpackPrecond (const char *cls, const char *type="Jacobi")
 
 IfpackPrecond (const char *cls, const char *type, int overlap)
 
 IfpackPrecond (Ifpack_Preconditioner *ipc)
 Wrap IFPACK object.
 
void set_param (const char *name, const char *value)
 
void set_param (const char *name, int value)
 
void set_param (const char *name, double value)
 
- Public Member Functions inherited from Hermes::Preconditioners::EpetraPrecond< Scalar >
virtual int SetUseTranspose (bool UseTranspose)
 
virtual int Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
 
virtual double NormInf () const
 
virtual const char * Label () const
 
virtual bool UseTranspose () const
 
virtual bool HasNormInf () const
 

Protected Member Functions

virtual Epetra_Operator * get_obj ()
 
virtual void create (Matrix< Scalar > *mat)
 
virtual void destroy ()
 
virtual void compute ()
 
virtual void recompute ()
 
virtual int ApplyInverse (const Epetra_MultiVector &r, Epetra_MultiVector &z) const
 
virtual const Epetra_Comm & Comm () const
 
virtual const Epetra_Map & OperatorDomainMap () const
 
virtual const Epetra_Map & OperatorRangeMap () const
 
void create_point_relax (EpetraMatrix< Scalar > *a, const char *name)
 
void create_block_relax (EpetraMatrix< Scalar > *a, const char *name)
 
void create_add_schwartz (EpetraMatrix< Scalar > *a, const char *name, int overlap)
 
int initialize ()
 
void apply_params ()
 

Protected Attributes

Ifpack_Preconditioner * prec
 
Teuchos::ParameterList ilist
 
EpetraMatrix< Scalar > * mat
 
unsigned owner: 1
 
const char * cls
 
const char * type
 
int overlap
 

Friends

class AztecOOSolver< Scalar >
 

Detailed Description

template<typename Scalar>
class Hermes::Preconditioners::IfpackPrecond< Scalar >

Preconditioners built on IFPACK.

Definition at line 50 of file epetra.h.

Constructor & Destructor Documentation

template<typename Scalar >
Hermes::Preconditioners::IfpackPrecond< Scalar >::IfpackPrecond ( const char *  cls,
const char *  type = "Jacobi" 
)

Constructor for relaxation methods.

Parameters
[in]cls- class of the preconditioner[ point-relax | block-relax ]
[in]name- the name of the relaxation type Possible values are:[ Jacobi | Gauss-Seidel | symmetric Gauss-Seidel ]

Definition at line 36 of file precond_ifpack.cpp.

template<typename Scalar >
Hermes::Preconditioners::IfpackPrecond< Scalar >::IfpackPrecond ( const char *  cls,
const char *  type,
int  overlap 
)

Constructor for domain decomposition methods

Parameters
[in]cls- class of the preconditioner[ add-schwartz ]
[in]name:[ic | ict | ilu | ilut ]
[in]overlap- number

Definition at line 47 of file precond_ifpack.cpp.


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