Belos
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
src
BelosMinresIteration.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_MINRES_ITERATION_HPP
11
#define BELOS_MINRES_ITERATION_HPP
12
16
17
#include "
BelosConfigDefs.hpp
"
18
#include "
BelosTypes.hpp
"
19
#include "
BelosIteration.hpp
"
20
21
namespace
Belos
{
22
24
25
30
template
<
class
ScalarType,
class
MV>
31
struct
MinresIterationState
{
32
34
Teuchos::RCP<const MV>
Y
;
35
37
Teuchos::RCP<const MV>
R1
;
38
40
Teuchos::RCP<const MV>
R2
;
41
43
Teuchos::RCP<const MV>
W
;
44
46
Teuchos::RCP<const MV>
W1
;
47
49
Teuchos::RCP<const MV>
W2
;
50
51
MinresIterationState
() :
Y
(Teuchos::null),
52
R1
(Teuchos::null),
53
R2
(Teuchos::null),
54
W
(Teuchos::null),
55
W1
(Teuchos::null),
56
W2
(Teuchos::null)
57
{}
58
};
59
61
62
69
class
MinresIterateFailure
:
public
BelosError
{
public
:
70
MinresIterateFailure
(
const
std::string& what_arg) :
BelosError
(what_arg)
71
{}};
72
74
75
76
template
<
class
ScalarType,
class
MV,
class
OP>
77
class
MinresIteration
:
virtual
public
Iteration
<ScalarType,MV,OP> {
78
79
public
:
80
82
83
97
virtual
void
initializeMinres
(
const
MinresIterationState<ScalarType,MV>
& newstate) = 0;
98
105
virtual
MinresIterationState<ScalarType,MV>
getState
()
const
= 0;
107
108
};
109
110
}
// end Belos namespace
111
112
#endif
/* BELOS_MINRES_ITERATION_HPP */
BelosConfigDefs.hpp
Belos header file which uses auto-configuration information to include necessary C++ headers.
BelosIteration.hpp
Pure virtual base class which describes the basic interface to the linear solver iteration.
BelosTypes.hpp
Collection of types and exceptions used within the Belos solvers.
Belos::BelosError::BelosError
BelosError(const std::string &what_arg)
Definition
BelosTypes.hpp:30
Belos::Iteration::Iteration
Iteration()
Default Constructor.
Definition
BelosIteration.hpp:49
Belos::MinresIterateFailure::MinresIterateFailure
MinresIterateFailure(const std::string &what_arg)
Definition
BelosMinresIteration.hpp:70
Belos::MinresIteration
Definition
BelosMinresIteration.hpp:77
Belos::MinresIteration::getState
virtual MinresIterationState< ScalarType, MV > getState() const =0
Get the current state of the linear solver.
Belos::MinresIteration::initializeMinres
virtual void initializeMinres(const MinresIterationState< ScalarType, MV > &newstate)=0
Initialize the solver to an iterate, providing a complete state.
Belos
Definition
Belos_Details_EBelosSolverType.cpp:13
Belos::MinresIterationState
Structure to contain pointers to MinresIteration state variables.
Definition
BelosMinresIteration.hpp:31
Belos::MinresIterationState::MinresIterationState
MinresIterationState()
Definition
BelosMinresIteration.hpp:51
Belos::MinresIterationState::W
Teuchos::RCP< const MV > W
The current direction vector.
Definition
BelosMinresIteration.hpp:43
Belos::MinresIterationState::R2
Teuchos::RCP< const MV > R2
Previous residual.
Definition
BelosMinresIteration.hpp:40
Belos::MinresIterationState::W1
Teuchos::RCP< const MV > W1
Previous direction vector.
Definition
BelosMinresIteration.hpp:46
Belos::MinresIterationState::Y
Teuchos::RCP< const MV > Y
The current residual.
Definition
BelosMinresIteration.hpp:34
Belos::MinresIterationState::W2
Teuchos::RCP< const MV > W2
Previous direction vector.
Definition
BelosMinresIteration.hpp:49
Belos::MinresIterationState::R1
Teuchos::RCP< const MV > R1
Previous residual.
Definition
BelosMinresIteration.hpp:37
Generated for Belos by
1.17.0