36#ifndef _AMESOS_COMPONENTBASESOLVER_H_
37#define _AMESOS_COMPONENTBASESOLVER_H_
39#include "Teuchos_ParameterList.hpp"
40#include "Epetra_LinearProblem.h"
41class Epetra_LinearProblem;
42class Epetra_MultiVector;
Amesos_Component: A pure virtual class for direct solvers to be used within Amesos_Merikos to form a ...
virtual int SetSubMatrixSize(int SubMatrixSize)=0
SetSubMatrixSize.
virtual int GetRowPermutation(int **RowPermutation)=0
GetRowPermutation.
virtual int SetColumnPermutation(int *ColumnPermutation)=0
SetColumnPermutation.
virtual int SetRowPermutation(int *RowPermutation)=0
SetRowPermutation.
virtual int GetSubMatrixSize(int *SubMatrixSize)=0
GetSubMatrixSize.
virtual int GetSchurComplement(Epetra_CrsMatrix *SchurComplement)=0
GetSchurComplement.
virtual int Lsolve()=0
Solves L X = B (or LT x = B)
virtual int PartialFactorization()=0
Performs partial factorization on the matrix A.
virtual int Usolve()=0
Solves L X = B (or LT x = B)
virtual ~Amesos_Component()
Destructor.
virtual int GetColumnPermutation(int **ColumnPermutation)=0
GetColumnPermutation.