47 #ifndef Xyce_N_NLS_MatrixFreeEpetraOperator_h
48 #define Xyce_N_NLS_MatrixFreeEpetraOperator_h
51 #include <Teuchos_RefCountPtr.hpp>
55 #include <Epetra_Operator.h>
56 #include <Epetra_MultiVector.h>
57 #include <Epetra_Comm.h>
58 #include <Epetra_Map.h>
62 #include <N_LAS_MultiVector.h>
68 using Teuchos::RefCountPtr;
92 RefCountPtr<NonLinearSolver> nonlinearSolver,
93 RefCountPtr<N_LAS_Vector> solVector,
94 RefCountPtr<N_LAS_Vector> rhsVector,
95 RefCountPtr<const Epetra_Map> solutionMap
119 int Apply(
const Epetra_MultiVector& X, Epetra_MultiVector& Y)
const;
120 int Apply(
const N_LAS_MultiVector& X, N_LAS_MultiVector& Y)
const;
134 int ApplyInverse(
const Epetra_MultiVector& X, Epetra_MultiVector& Y)
const;
135 int ApplyInverse(
const N_LAS_MultiVector& X, N_LAS_MultiVector& Y)
const;
146 const char *
Label()
const;
155 const Epetra_Comm &
Comm()
const;
173 RefCountPtr<NonLinearSolver> nonlinearSolver,
174 RefCountPtr<N_LAS_Vector> solVector,
175 RefCountPtr<N_LAS_Vector> rhsVector,
176 RefCountPtr<const Epetra_Map> solutionMap
184 #endif // Xyce_N_NLS_MatrixFreeEpetraOperator_h