Belos
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
src
BelosIteration.hpp
Go to the documentation of this file.
1
// @HEADER
2
// *****************************************************************************
3
// Belos: Block Linear Solvers Package
4
//
5
// Copyright 2004-2016 NTESS and the Belos contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef BELOS_ITERATION_HPP
11
#define BELOS_ITERATION_HPP
12
16
17
#include "
BelosConfigDefs.hpp
"
18
#include "
BelosTypes.hpp
"
19
20
#include "Teuchos_Array.hpp"
21
#include "Teuchos_ParameterList.hpp"
22
#include "Teuchos_RCP.hpp"
23
#include "Teuchos_ScalarTraits.hpp"
24
25
26
namespace
Belos
{
27
28
template
<
class
ScalarType,
class
MV,
class
OP>
29
class
LinearProblem
;
30
31
template
<
class
ScalarType>
32
class
OutputManager
;
33
34
template
<
class
ScalarType,
class
MV,
class
OP>
35
class
StatusTest
;
36
37
template
<
class
ScalarType,
class
MV,
class
OP>
38
class
MatOrthoManager
;
39
40
template
<
class
ScalarType,
class
MV,
class
OP>
41
class
Iteration
{
42
43
public
:
44
46
47
49
Iteration
() {};
50
52
virtual
~Iteration
() {};
54
55
57
58
62
virtual
void
iterate
() = 0;
63
67
virtual
void
initialize
() = 0;
68
70
71
73
74
76
virtual
int
getNumIters
()
const
= 0;
77
79
virtual
void
resetNumIters
(
int
iter = 0 ) = 0;
80
83
virtual
Teuchos::RCP<const MV>
getNativeResiduals
( std::vector<
typename
Teuchos::ScalarTraits<ScalarType>::magnitudeType> *norms )
const
= 0;
84
86
89
virtual
Teuchos::RCP<MV>
getCurrentUpdate
()
const
= 0;
90
92
93
94
96
97
99
virtual
const
LinearProblem<ScalarType,MV,OP>
&
getProblem
()
const
= 0;
100
102
virtual
int
getBlockSize
()
const
= 0;
103
105
virtual
void
setBlockSize
(
int
blockSize) = 0;
106
108
virtual
bool
isInitialized
() = 0;
109
111
112
};
113
114
}
// end Belos namespace
115
116
#endif
/* BELOS_ITERATION_HPP */
BelosConfigDefs.hpp
Belos header file which uses auto-configuration information to include necessary C++ headers.
BelosTypes.hpp
Collection of types and exceptions used within the Belos solvers.
Belos::Iteration::initialize
virtual void initialize()=0
Initialize the solver with the initial vectors from the linear problem or random data.
Belos::Iteration::getNumIters
virtual int getNumIters() const =0
Get the current iteration count.
Belos::Iteration::getNativeResiduals
virtual Teuchos::RCP< const MV > getNativeResiduals(std::vector< typename Teuchos::ScalarTraits< ScalarType >::magnitudeType > *norms) const =0
Belos::Iteration::~Iteration
virtual ~Iteration()
Destructor.
Definition
BelosIteration.hpp:52
Belos::Iteration::setBlockSize
virtual void setBlockSize(int blockSize)=0
Set the blocksize to be used by the iterative solver in solving this linear problem.
Belos::Iteration::isInitialized
virtual bool isInitialized()=0
States whether the solver has been initialized or not.
Belos::Iteration::Iteration
Iteration()
Default Constructor.
Definition
BelosIteration.hpp:49
Belos::Iteration::iterate
virtual void iterate()=0
This method performs linear solver iterations until the status test indicates the need to stop or an ...
Belos::Iteration::getBlockSize
virtual int getBlockSize() const =0
Get the blocksize to be used by the iterative solver in solving this linear problem.
Belos::Iteration::getCurrentUpdate
virtual Teuchos::RCP< MV > getCurrentUpdate() const =0
Get the current update to the linear system.
Belos::Iteration::resetNumIters
virtual void resetNumIters(int iter=0)=0
Reset the iteration count to iter.
Belos::Iteration::getProblem
virtual const LinearProblem< ScalarType, MV, OP > & getProblem() const =0
Get a constant reference to the linear problem.
Belos::LinearProblem
Definition
BelosLinearProblem.hpp:50
Belos::MatOrthoManager
Belos's templated virtual class for providing routines for orthogonalization and orthonormzalition of...
Definition
BelosMatOrthoManager.hpp:46
Belos::OutputManager
Belos's basic output manager for sending information of select verbosity levels to the appropriate ou...
Definition
BelosOutputManager.hpp:42
Belos::StatusTest
A pure virtual class for defining the status tests for the Belos iterative solvers.
Definition
BelosStatusTest.hpp:50
Belos
Definition
Belos_Details_EBelosSolverType.cpp:13
Generated for Belos by
1.17.0