Anasazi  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
AnasaziSolverManager.hpp
Go to the documentation of this file.
1 // @HEADER
2 // *****************************************************************************
3 // Anasazi: Block Eigensolvers Package
4 //
5 // Copyright 2004 NTESS and the Anasazi contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 // @HEADER
9 
10 #ifndef ANASAZI_SOLVERMANAGER_HPP
11 #define ANASAZI_SOLVERMANAGER_HPP
12 
17 #include "AnasaziConfigDefs.hpp"
18 #include "AnasaziTypes.hpp"
19 #include "AnasaziEigenproblem.hpp"
20 
22 #include "Teuchos_RCP.hpp"
23 #include "Teuchos_Array.hpp"
24 #include "Teuchos_Time.hpp"
25 
31 namespace Anasazi {
32 
33 template<class ScalarType, class MV, class OP>
35 
36  public:
37 
39 
40 
43 
45  virtual ~SolverManager() {};
47 
49 
50 
52  virtual const Eigenproblem<ScalarType,MV,OP>& getProblem() const = 0;
53 
55  virtual int getNumIters() const = 0;
56 
59  {
61  return null_time;
62  }
63 
65 
67 
68 
77  virtual ReturnType solve() = 0;
79 
80 };
81 
82 } // end Anasazi namespace
83 
84 #endif /* ANASAZI_SOLVERMANAGER_HPP */
virtual int getNumIters() const =0
Get the iteration count for the most recent call to solve().
This class defines the interface required by an eigensolver and status test class to compute solution...
The Anasazi::SolverManager is a templated virtual base class that defines the basic interface that an...
virtual ReturnType solve()=0
This method performs possibly repeated calls to the underlying eigensolver&#39;s iterate() routine until ...
Abstract base class which defines the interface required by an eigensolver and status test class to c...
ReturnType
Enumerated type used to pass back information from a solver manager.
Anasazi header file which uses auto-configuration information to include necessary C++ headers...
SolverManager()
Empty constructor.
virtual const Eigenproblem< ScalarType, MV, OP > & getProblem() const =0
Return the eigenvalue problem.
virtual Teuchos::Array< Teuchos::RCP< Teuchos::Time > > getTimers() const
Return the timers for this object.
virtual ~SolverManager()
Destructor.
Types and exceptions used within Anasazi solvers and interfaces.