Thyra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Thyra_InverseLinearOpBase.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_INVERSE_LINEAR_OP_BASE_HPP
11 #define THYRA_INVERSE_LINEAR_OP_BASE_HPP
12 
13 #include "Thyra_LinearOpWithSolveBase.hpp"
14 
15 
16 namespace Thyra {
17 
18 
24 template<class Scalar>
25 class InverseLinearOpBase : virtual public LinearOpBase<Scalar>
26 {
27 public:
28 
32  virtual bool isLowsConst() const = 0;
33 
38  getNonconstLows() = 0;
39 
44  getLows() const = 0;
45 
46 };
47 
48 
49 } // namespace Thyra
50 
51 
52 #endif // THYRA_INVERSE_LINEAR_OP_BASE_HPP
virtual Teuchos::RCP< LinearOpWithSolveBase< Scalar > > getNonconstLows()=0
Extra a non-const view of the underlying LinearOpWithSolveBase object.
Base class for all linear operators.
Base interface for &lt;ttLinearOpBase objects that are implemented in terms of the solve function on a L...
virtual Teuchos::RCP< const LinearOpWithSolveBase< Scalar > > getLows() const =0
Extra a const view of the underlying LinearOpWithSolveBase object.
virtual bool isLowsConst() const =0
Determine if the underlying LinearOpWithSolveBase is const-only or not.