Thyra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Thyra_LinearOpSourceBase.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_LINEAR_OP_SOURCE_BASE_HPP
11 #define THYRA_LINEAR_OP_SOURCE_BASE_HPP
12 
13 #include "Thyra_SolveSupportTypes.hpp"
14 #include "Teuchos_Describable.hpp"
15 
16 
17 namespace Thyra {
18 
19 
24 template<class Scalar>
26 {
27 public:
28 
31 
34  virtual bool isOpConst() const = 0;
35 
43 
48 
50 
51 };
52 
53 } // namespace Thyra
54 
55 #endif // THYRA_LINEAR_OP_SOURCE_BASE_HPP
virtual Teuchos::RCP< LinearOpBase< Scalar > > getNonconstOp()=0
Return a non-const reference to the underlying linear operator.
Base interface for objects that can return a linear operator.
virtual Teuchos::RCP< const LinearOpBase< Scalar > > getOp() const =0
Return a const left preconditioner linear operator if one is designed or targeted to be applied on th...
virtual bool isOpConst() const =0
Return if the underlying linear operator is const-only or not.