ShyLU
Version of the Day
|
ShyLU's interface to be used as an Ifpack Preconditioner. More...
#include <Ifpack_ShyLU.h>
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 ¶meterlist) |
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 |
ShyLU's interface to be used as an Ifpack Preconditioner.
Definition at line 113 of file Ifpack_ShyLU.h.
Ifpack_ShyLU::Ifpack_ShyLU | ( | Epetra_CrsMatrix * | A | ) |
Constructor.
Definition at line 59 of file Ifpack_ShyLU.cpp.
|
inline |
Destructor.
Definition at line 121 of file Ifpack_ShyLU.h.
int Ifpack_ShyLU::Initialize | ( | ) |
Initialize the preconditioner, does not touch matrix values.
Definition at line 110 of file Ifpack_ShyLU.cpp.
References Comm(), Teuchos::rcp(), Teuchos::RCP< T >::reset(), and shylu_symbolic_factor().
|
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(), Teuchos::Time::start(), and Teuchos::Time::stop().
|
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.
References Teuchos::ParameterList::sublist().
|
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.
X | - (In) A Epetra_MultiVector of dimension NumVectors to solve for. |
Out | Y - (Out) A Epetra_MultiVector of dimension NumVectors containing result. |
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.
|
inline |
Returns a character string describing the operator.
Definition at line 210 of file Ifpack_ShyLU.h.
|
inline |
Sets label for this
object.
Definition at line 213 of file Ifpack_ShyLU.h.
|
inline |
Returns 0.0 because this class cannot compute Inf-norm.
Definition at line 221 of file Ifpack_ShyLU.h.
|
inline |
Returns false because this class cannot compute an Inf-norm.
Definition at line 224 of file Ifpack_ShyLU.h.
|
inline |
Returns the Epetra_Map object associated with the domain of this operator.
Definition at line 227 of file Ifpack_ShyLU.h.
|
inline |
Returns the Epetra_Map object associated with the range of this operator.
Definition at line 230 of file Ifpack_ShyLU.h.
|
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().
|
inline |
Returns a reference to the matrix to be preconditioned.
Definition at line 236 of file Ifpack_ShyLU.h.
|
virtual |
Prints on stream basic information about this
object.
Definition at line 309 of file Ifpack_ShyLU.cpp.
|
inlinevirtual |
Returns the number of calls to Initialize().
Definition at line 245 of file Ifpack_ShyLU.h.
|
inlinevirtual |
Returns the number of calls to Compute().
Definition at line 251 of file Ifpack_ShyLU.h.
|
inlinevirtual |
Returns the number of calls to ApplyInverse().
Definition at line 257 of file Ifpack_ShyLU.h.
|
inlinevirtual |
Returns the time spent in Initialize().
Definition at line 263 of file Ifpack_ShyLU.h.
|
inlinevirtual |
Returns the time spent in Compute().
Definition at line 269 of file Ifpack_ShyLU.h.
|
inlinevirtual |
Returns the time spent in ApplyInverse().
Definition at line 275 of file Ifpack_ShyLU.h.
|
inlinevirtual |
Returns the number of flops in the initialization phase.
Definition at line 281 of file Ifpack_ShyLU.h.