42 #ifndef BELOS_ITERATION_HPP
43 #define BELOS_ITERATION_HPP
52 #include "Teuchos_Array.hpp"
53 #include "Teuchos_ParameterList.hpp"
54 #include "Teuchos_RCP.hpp"
55 #include "Teuchos_ScalarTraits.hpp"
60 template <
class ScalarType,
class MV,
class OP>
63 template <
class ScalarType>
66 template <
class ScalarType,
class MV,
class OP>
69 template <
class ScalarType,
class MV,
class OP>
70 class MatOrthoManager;
72 template<
class ScalarType,
class MV,
class OP>
115 virtual Teuchos::RCP<const MV>
getNativeResiduals( std::vector<
typename Teuchos::ScalarTraits<ScalarType>::magnitudeType> *norms )
const = 0;
Belos header file which uses auto-configuration information to include necessary C++ headers.
Collection of types and exceptions used within the Belos solvers.
virtual void initialize()=0
Initialize the solver with the initial vectors from the linear problem or random data.
virtual int getNumIters() const =0
Get the current iteration count.
virtual Teuchos::RCP< const MV > getNativeResiduals(std::vector< typename Teuchos::ScalarTraits< ScalarType >::magnitudeType > *norms) const =0
Get the residuals native to the solver.
virtual Teuchos::RCP< MV > getCurrentUpdate() const =0
Get the current update to the linear system.
virtual ~Iteration()
Destructor.
virtual void setBlockSize(int blockSize)=0
Set the blocksize to be used by the iterative solver in solving this linear problem.
virtual bool isInitialized()=0
States whether the solver has been initialized or not.
Iteration()
Default Constructor.
virtual void iterate()=0
This method performs linear solver iterations until the status test indicates the need to stop or an ...
virtual const LinearProblem< ScalarType, MV, OP > & getProblem() const =0
Get a constant reference to the linear problem.
virtual int getBlockSize() const =0
Get the blocksize to be used by the iterative solver in solving this linear problem.
virtual void resetNumIters(int iter=0)=0
Reset the iteration count to iter.
A linear system to solve, and its associated information.