ShyLU  Version of the Day
List of all members
Ifpack_ShyLU Class Reference

ShyLU's interface to be used as an Ifpack Preconditioner. More...

#include <Ifpack_ShyLU.h>

Inheritance diagram for Ifpack_ShyLU:
Inheritance graph
[legend]
Collaboration diagram for Ifpack_ShyLU:
Collaboration graph
[legend]

Public Member Functions

 Ifpack_ShyLU (Epetra_CrsMatrix *A)
 Constructor. More...
 
 ~Ifpack_ShyLU ()
 Destructor. More...
 
int Initialize ()
 Initialize the preconditioner, does not touch matrix values. More...
 
bool IsInitialized () const
 Returns true if the preconditioner has been successfully initialized. More...
 
int Compute ()
 Compute ILU factors L and U using the specified parameters. More...
 
bool IsComputed () const
 If factor is completed, this query returns true, otherwise it returns false. More...
 
int SetParameters (Teuchos::ParameterList &parameterlist)
 Set parameters using a Teuchos::ParameterList object. More...
 
int SetUseTranspose (bool UseTranspose_in)
 
bool UseTranspose () const
 Returns the current UseTranspose setting. More...
 
int Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
 
int Multiply (bool Trans, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
 
int ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
 Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y. More...
 
double Condest (const Ifpack_CondestType CT=Ifpack_Cheap, const int MaxIters=1550, const double Tol=1e-9, Epetra_RowMatrix *Matrix_in=0)
 Computes the estimated condition number and returns the value. More...
 
int JustTryIt ()
 Returns the computed estimated condition number, or -1.0 if not computed. More...
 
double Condest () const
 
const char * Label () const
 Returns a character string describing the operator. More...
 
int SetLabel (std::string Label_in)
 Sets label for this object. More...
 
double NormInf () const
 Returns 0.0 because this class cannot compute Inf-norm. More...
 
bool HasNormInf () const
 Returns false because this class cannot compute an Inf-norm. More...
 
const Epetra_Map & OperatorDomainMap () const
 Returns the Epetra_Map object associated with the domain of this operator. More...
 
const Epetra_Map & OperatorRangeMap () const
 Returns the Epetra_Map object associated with the range of this operator. More...
 
const Epetra_Comm & Comm () const
 Returns the Epetra_BlockMap object associated with the range of this matrix operator. More...
 
const Epetra_RowMatrix & Matrix () const
 Returns a reference to the matrix to be preconditioned. More...
 
virtual ostream & Print (ostream &os) const
 Prints on stream basic information about this object. More...
 
virtual int NumInitialize () const
 Returns the number of calls to Initialize(). More...
 
virtual int NumCompute () const
 Returns the number of calls to Compute(). More...
 
virtual int NumApplyInverse () const
 Returns the number of calls to ApplyInverse(). More...
 
virtual double InitializeTime () const
 Returns the time spent in Initialize(). More...
 
virtual double ComputeTime () const
 Returns the time spent in Compute(). More...
 
virtual double ApplyInverseTime () const
 Returns the time spent in ApplyInverse(). More...
 
virtual double InitializeFlops () const
 Returns the number of flops in the initialization phase. More...
 
virtual double ComputeFlops () const
 
virtual double ApplyInverseFlops () const
 

Detailed Description

ShyLU's interface to be used as an Ifpack Preconditioner.

Definition at line 113 of file Ifpack_ShyLU.h.

Constructor & Destructor Documentation

Ifpack_ShyLU::Ifpack_ShyLU ( Epetra_CrsMatrix *  A)

Constructor.

Definition at line 59 of file Ifpack_ShyLU.cpp.

Ifpack_ShyLU::~Ifpack_ShyLU ( )
inline

Destructor.

Definition at line 121 of file Ifpack_ShyLU.h.

Member Function Documentation

int Ifpack_ShyLU::Initialize ( )

Initialize the preconditioner, does not touch matrix values.

Definition at line 110 of file Ifpack_ShyLU.cpp.

References Comm(), and shylu_symbolic_factor().

bool Ifpack_ShyLU::IsInitialized ( ) const
inline

Returns true if the preconditioner has been successfully initialized.

Definition at line 133 of file Ifpack_ShyLU.h.

int Ifpack_ShyLU::Compute ( )

Compute ILU factors L and U using the specified parameters.

Definition at line 245 of file Ifpack_ShyLU.cpp.

References shylu_factor().

bool Ifpack_ShyLU::IsComputed ( ) const
inline

If factor is completed, this query returns true, otherwise it returns false.

Definition at line 142 of file Ifpack_ShyLU.h.

int Ifpack_ShyLU::SetParameters ( Teuchos::ParameterList &  parameterlist)

Set parameters using a Teuchos::ParameterList object.

Definition at line 235 of file Ifpack_ShyLU.cpp.

bool Ifpack_ShyLU::UseTranspose ( ) const
inline

Returns the current UseTranspose setting.

Definition at line 163 of file Ifpack_ShyLU.h.

int Ifpack_ShyLU::ApplyInverse ( const Epetra_MultiVector &  X,
Epetra_MultiVector &  Y 
) const

Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.

Parameters
X- (In) A Epetra_MultiVector of dimension NumVectors to solve for.
OutY - (Out) A Epetra_MultiVector of dimension NumVectors containing result.
Returns
Integer error code, set to 0 if successful.

Definition at line 278 of file Ifpack_ShyLU.cpp.

References shylu_solve().

double Ifpack_ShyLU::Condest ( const Ifpack_CondestType  CT = Ifpack_Cheap,
const int  MaxIters = 1550,
const double  Tol = 1e-9,
Epetra_RowMatrix *  Matrix_in = 0 
)

Computes the estimated condition number and returns the value.

Definition at line 302 of file Ifpack_ShyLU.cpp.

References Condest().

Referenced by Condest().

int Ifpack_ShyLU::JustTryIt ( )

Returns the computed estimated condition number, or -1.0 if not computed.

Definition at line 261 of file Ifpack_ShyLU.cpp.

const char* Ifpack_ShyLU::Label ( ) const
inline

Returns a character string describing the operator.

Definition at line 210 of file Ifpack_ShyLU.h.

int Ifpack_ShyLU::SetLabel ( std::string  Label_in)
inline

Sets label for this object.

Definition at line 213 of file Ifpack_ShyLU.h.

double Ifpack_ShyLU::NormInf ( ) const
inline

Returns 0.0 because this class cannot compute Inf-norm.

Definition at line 221 of file Ifpack_ShyLU.h.

bool Ifpack_ShyLU::HasNormInf ( ) const
inline

Returns false because this class cannot compute an Inf-norm.

Definition at line 224 of file Ifpack_ShyLU.h.

const Epetra_Map& Ifpack_ShyLU::OperatorDomainMap ( ) const
inline

Returns the Epetra_Map object associated with the domain of this operator.

Definition at line 227 of file Ifpack_ShyLU.h.

const Epetra_Map& Ifpack_ShyLU::OperatorRangeMap ( ) const
inline

Returns the Epetra_Map object associated with the range of this operator.

Definition at line 230 of file Ifpack_ShyLU.h.

const Epetra_Comm& Ifpack_ShyLU::Comm ( ) const
inline

Returns the Epetra_BlockMap object associated with the range of this matrix operator.

Definition at line 233 of file Ifpack_ShyLU.h.

Referenced by Initialize(), and InitializeFlops().

const Epetra_RowMatrix& Ifpack_ShyLU::Matrix ( ) const
inline

Returns a reference to the matrix to be preconditioned.

Definition at line 236 of file Ifpack_ShyLU.h.

ostream & Ifpack_ShyLU::Print ( ostream &  os) const
virtual

Prints on stream basic information about this object.

Definition at line 309 of file Ifpack_ShyLU.cpp.

virtual int Ifpack_ShyLU::NumInitialize ( ) const
inlinevirtual

Returns the number of calls to Initialize().

Definition at line 245 of file Ifpack_ShyLU.h.

virtual int Ifpack_ShyLU::NumCompute ( ) const
inlinevirtual

Returns the number of calls to Compute().

Definition at line 251 of file Ifpack_ShyLU.h.

virtual int Ifpack_ShyLU::NumApplyInverse ( ) const
inlinevirtual

Returns the number of calls to ApplyInverse().

Definition at line 257 of file Ifpack_ShyLU.h.

virtual double Ifpack_ShyLU::InitializeTime ( ) const
inlinevirtual

Returns the time spent in Initialize().

Definition at line 263 of file Ifpack_ShyLU.h.

virtual double Ifpack_ShyLU::ComputeTime ( ) const
inlinevirtual

Returns the time spent in Compute().

Definition at line 269 of file Ifpack_ShyLU.h.

virtual double Ifpack_ShyLU::ApplyInverseTime ( ) const
inlinevirtual

Returns the time spent in ApplyInverse().

Definition at line 275 of file Ifpack_ShyLU.h.

virtual double Ifpack_ShyLU::InitializeFlops ( ) const
inlinevirtual

Returns the number of flops in the initialization phase.

Definition at line 281 of file Ifpack_ShyLU.h.

References Comm().


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