Anasazi Version of the Day
Loading...
Searching...
No Matches
AnasaziStatusTest.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Anasazi: Block Eigensolvers Package
4//
5// Copyright 2004 NTESS and the Anasazi contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9//
10
11#ifndef ANASAZI_STATUS_TEST_HPP
12#define ANASAZI_STATUS_TEST_HPP
13
16
17#include "AnasaziTypes.hpp"
20
21namespace Anasazi {
22
24
25
29 {public: StatusTestError(const std::string& what_arg) : AnasaziError(what_arg) {}};
30
32
41
42template <class ScalarType, class MV, class OP>
44
45 public:
47
48
51
53 virtual ~StatusTest() {};
55
57
58
63
65 virtual TestStatus getStatus() const = 0;
66
68 virtual std::vector<int> whichVecs() const = 0;
69
71 virtual int howMany() const = 0;
72
74
76
77
83 virtual void reset() = 0;
84
86
91 virtual void clearStatus() = 0;
92
94
96
97
99 virtual std::ostream& print(std::ostream& os, int indent = 0) const = 0;
100
102
103};
104
105} // end of Anasazi namespace
106
107#endif /* ANASAZI_STATUS_TEST_HPP */
Forward declaration of the virtual base class Anasazi::Eigensolver.
Forward declaration of pure virtual base class Anasazi::StatusTest.
Types and exceptions used within Anasazi solvers and interfaces.
An exception class parent to all Anasazi exceptions.
The Eigensolver is a templated virtual base class that defines the basic interface that any eigensolv...
Exception thrown to signal error in a status test during Anasazi::StatusTest::checkStatus().
Common interface of stopping criteria for Anasazi's solvers.
virtual std::vector< int > whichVecs() const =0
Get the indices for the vectors that passed the test.
virtual int howMany() const =0
Get the number of vectors that passed the test.
virtual void reset()=0
Informs the status test that it should reset its internal configuration to the uninitialized state.
virtual TestStatus checkStatus(Eigensolver< ScalarType, MV, OP > *solver)=0
virtual std::ostream & print(std::ostream &os, int indent=0) const =0
Output formatted description of stopping test to output stream.
virtual ~StatusTest()
Destructor.
virtual void clearStatus()=0
Clears the results of the last status test.
virtual TestStatus getStatus() const =0
Return the result of the most recent checkStatus call, or undefined if it has not been run.
Namespace Anasazi contains the classes, structs, enums and utilities used by the Anasazi package.
TestStatus
Enumerated type used to pass back information from a StatusTest.