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"
60template <
class ScalarType,
class MV,
class OP>
63template <
class ScalarType>
66template <
class ScalarType,
class MV,
class OP>
69template <
class ScalarType,
class MV,
class OP>
72template<
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 ~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 int getBlockSize() const =0
Get the blocksize to be used by the iterative solver in solving this linear problem.
virtual Teuchos::RCP< MV > getCurrentUpdate() const =0
Get the current update to the linear system.
virtual void resetNumIters(int iter=0)=0
Reset the iteration count to iter.
virtual const LinearProblem< ScalarType, MV, OP > & getProblem() const =0
Get a constant reference to the linear problem.
A linear system to solve, and its associated information.