Belos Version of the Day
Loading...
Searching...
No Matches
BelosStatusTestResNorm.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_STATUS_TEST_RESNORM_H
11#define BELOS_STATUS_TEST_RESNORM_H
12
17
18#include "BelosStatusTest.hpp"
21
26
27namespace Belos {
28
29template <class ScalarType, class MV, class OP, class DM = DefaultDenseMatrix<int,ScalarType>>
30class StatusTestResNorm: public StatusTest<ScalarType,MV,OP,DM> {
31
32 public:
33
34 // Convenience typedefs
35 typedef Teuchos::ScalarTraits<ScalarType> SCT;
36 typedef typename SCT::magnitudeType MagnitudeType;
38
40
41
43
46 virtual int setTolerance(MagnitudeType tolerance) = 0;
47
50 virtual int setQuorum(int quorum) = 0;
51
53 virtual int setShowMaxResNormOnly(bool showMaxResNormOnly) = 0;
54
56 virtual int defineScaleForm( ScaleType TypeOfScaling, NormType TypeOfNorm, MagnitudeType ScaleValue = Teuchos::ScalarTraits<MagnitudeType>::one()) = 0;
57
59
61
62
65 virtual int getQuorum() const = 0;
66
68 virtual bool getShowMaxResNormOnly() = 0;
69
71 virtual std::vector<int> convIndices() = 0;
72
74 virtual MagnitudeType getTolerance() const = 0;
75
77 virtual const std::vector<MagnitudeType>* getTestValue() const = 0;
78
81 virtual Teuchos::RCP<MV> getSolution() = 0;
82
84 virtual bool getLOADetected() const = 0;
85
87
88};
89
90} // end namespace Belos
91
92#endif /* BELOS_STATUS_TEST_RESNORM_H */
Class which describes the linear problem to be solved by the iterative solver.
Declaration of basic traits for the multivector type.
Pure virtual base class for defining the status testing capabilities of Belos.
Traits class which defines basic operations on multivectors.
StatusTest()
Constructor.
An abstract class of StatusTest for stopping criteria using residual norms.
virtual MagnitudeType getTolerance() const =0
Returns the value of the tolerance, , set in the constructor.
virtual std::vector< int > convIndices()=0
Returns the std::vector containing the indices of the residuals that passed the test.
virtual int defineScaleForm(ScaleType TypeOfScaling, NormType TypeOfNorm, MagnitudeType ScaleValue=Teuchos::ScalarTraits< MagnitudeType >::one())=0
Define the form of the scaling for the residual.
virtual int getQuorum() const =0
virtual int setShowMaxResNormOnly(bool showMaxResNormOnly)=0
Set whether the only maximum residual norm is displayed when the print() method is called.
virtual bool getShowMaxResNormOnly()=0
Returns whether the only maximum residual norm is displayed when the print() method is called.
virtual int setQuorum(int quorum)=0
MultiVecTraits< ScalarType, MV, DM > MVT
virtual Teuchos::RCP< MV > getSolution()=0
virtual bool getLOADetected() const =0
Returns a boolean indicating a loss of accuracy has been detected in computing the residual.
virtual int setTolerance(MagnitudeType tolerance)=0
Set the value of the tolerance.
Teuchos::ScalarTraits< ScalarType > SCT
virtual const std::vector< MagnitudeType > * getTestValue() const =0
Returns the test value, , computed in most recent call to CheckStatus.
NormType
The type of vector norm to compute.
ScaleType
The type of scaling to use on the residual norm value.

Generated for Belos by doxygen 1.15.0