Thyra Version of the Day
Loading...
Searching...
No Matches
Thyra_BlockedLinearOpWithSolveBase.hpp
1// @HEADER
2// *****************************************************************************
3// Thyra: Interfaces and Support for Abstract Numerical Algorithms
4//
5// Copyright 2004 NTESS and the Thyra contributors.
6// SPDX-License-Identifier: BSD-3-Clause
7// *****************************************************************************
8// @HEADER
9
10#ifndef THYRA_BLOCKED_LINEAR_OP_WITH_SOLVE_BASE_HPP
11#define THYRA_BLOCKED_LINEAR_OP_WITH_SOLVE_BASE_HPP
12
13#include "Thyra_LinearOpWithSolveBase.hpp"
14#include "Thyra_BlockedLinearOpBase.hpp"
15
16
17namespace Thyra {
18
19
27template<class Scalar>
29 : virtual public LinearOpWithSolveBase<Scalar>,
30 virtual public BlockedLinearOpBase<Scalar>
31
32{
33public:
34
37 getNonconstLOWSBlock(const int i, const int j) = 0;
38
41 getLOWSBlock(const int i, const int j) const = 0;
42
43private:
44
45 // Not defined and not to be called
48
49};
50
51
52} // namespace Thyra
53
54
55#endif // THYRA_BLOCKED_LINEAR_OP_WITH_SOLVE_BASE_HPP
Base interface for linear operators that can be accessed as sub-blocks.
Base interface for linear operators with a solve that can be accessed as sub-blocks.
virtual Teuchos::RCP< LinearOpWithSolveBase< Scalar > > getNonconstLOWSBlock(const int i, const int j)=0
virtual Teuchos::RCP< const LinearOpWithSolveBase< Scalar > > getLOWSBlock(const int i, const int j) const =0
Base class for all linear operators that can support a high-level solve operation.