Thyra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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 
17 namespace Thyra {
18 
19 
27 template<class Scalar>
29  : virtual public LinearOpWithSolveBase<Scalar>,
30  virtual public BlockedLinearOpBase<Scalar>
31 
32 {
33 public:
34 
37  getNonconstLOWSBlock(const int i, const int j) = 0;
38 
41  getLOWSBlock(const int i, const int j) const = 0;
42 
43 private:
44 
45  // Not defined and not to be called
47  operator=(const BlockedLinearOpWithSolveBase<Scalar>&);
48 
49 };
50 
51 
52 } // namespace Thyra
53 
54 
55 #endif // THYRA_BLOCKED_LINEAR_OP_WITH_SOLVE_BASE_HPP
virtual Teuchos::RCP< LinearOpWithSolveBase< Scalar > > getNonconstLOWSBlock(const int i, const int j)=0
Base class for all linear operators that can support a high-level solve operation.
Base interface for linear operators that can be accessed as sub-blocks.
virtual Teuchos::RCP< const LinearOpWithSolveBase< Scalar > > getLOWSBlock(const int i, const int j) const =0
Base interface for linear operators with a solve that can be accessed as sub-blocks.