49#include "Teuchos_iostream_helpers.hpp"
150#ifdef HAVE_IFPACK_SUPERLU
151 ,BLOCK_RELAXATION_STAND_ALONE_SILU
153#ifdef HAVE_IFPACK_AMESOS
154 ,BLOCK_RELAXATION_STAND_ALONE_AMESOS
155 ,BLOCK_RELAXATION_AMESOS
167#ifdef HAVE_IFPACK_SPARSKIT
170#ifdef HAVE_IFPACK_HIPS
176#ifdef HAVE_IFPACK_SUPERLU
179#if defined (HAVE_IFPACK_SUPPORTGRAPH) && defined (HAVE_IFPACK_AMESOS)
182#ifdef HAVE_IFPACK_SUPPORTGRAPH
197#ifdef HAVE_IFPACK_AMESOS
201#ifdef HAVE_IFPACK_SPARSKIT
204#ifdef HAVE_IFPACK_HIPS
210#ifdef HAVE_IFPACK_SUPERLU
213#if defined (HAVE_IFPACK_SUPPORTGRAPH) && defined (HAVE_IFPACK_AMESOS)
216#ifdef HAVE_IFPACK_SUPPORTGRAPH
235 {
return precTypeNames[precType]; }
247 EPrecType PrecType,
Epetra_RowMatrix* Matrix,
const int overlap = 0,
bool overrideSerialDefault =
false
266 const int overlap = 0,
267 bool overrideSerialDefault =
false);
276 int SetParameters(
int argc,
char* argv[],
277 Teuchos::ParameterList& List, std::string& PrecType,
283TEUCHOS_ENUM_INPUT_STREAM_OPERATOR(Ifpack::EPrecType)
Ifpack_Preconditioner: basic class for preconditioning in Ifpack.
static const int numPrecTypes
EPrecType
Enum for the type of preconditioner.
@ BLOCK_RELAXATION_STAND_ALONE_IC
@ BLOCK_RELAXATION_STAND_ALONE
@ TRIDI_RELAXATION_STAND_ALONE
@ BLOCK_RELAXATION_STAND_ALONE_ILU
@ POINT_RELAXATION_STAND_ALONE
@ BLOCK_RELAXATION_STAND_ALONE_ILUT
static const bool supportsUnsymmetric[numPrecTypes]
List of bools that determines if the preconditioner type supports unsymmetric matrices.
static const char * precTypeNames[numPrecTypes]
List of preconditioner types as std::string values.
static const char * toString(const EPrecType precType)
Function that gives the std::string name for preconditioner given its enumerication value.
static const EPrecType precTypeValues[numPrecTypes]
List of the preconditioner types as enum values .