src/eigsolv/AbstractEigsolvOperators.h

Go to the documentation of this file.
00001 #ifndef ABSTRACTEIGSOLVOPERATORS_H
00002 #define ABSTRACTEIGSOLVOPERATORS_H
00003 
00004 #include <string>
00005 
00006 using namespace std;
00007 
00008 class Epetra_CrsMatrix;
00009 class Epetra_Operator;
00010 
00011 class AbstractEigsolvOperators {
00012 
00013 public:
00014 
00015     virtual ~AbstractEigsolvOperators()                { }
00016 
00017     virtual const Epetra_Operator* getA() const = 0;
00018     virtual const Epetra_Operator* getM() const = 0;
00019     virtual const Epetra_Operator* getAsigmaPrec(double sigma) = 0;
00020     virtual const Epetra_Operator* getHSolver() = 0;
00021     virtual const Epetra_Operator* getHPrec() = 0;
00022     virtual Epetra_Operator* getH() = 0;
00023     virtual Epetra_Operator* getY() const = 0;
00024     virtual Epetra_Operator* getC() const = 0;
00025 
00026 protected:
00029     Epetra_CrsMatrix* build_Asigma(const Epetra_CrsMatrix& A, const Epetra_CrsMatrix& M, double sigma);
00030 };
00031 
00032 #endif
00033 

Generated on Fri Oct 26 13:35:11 2007 for FEMAXX (Finite Element Maxwell Eigensolver) by  doxygen 1.4.7