Thyra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Thyra_get_Epetra_Operator.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_GET_EPETRA_OPERATOR_HPP
11 #define THYRA_GET_EPETRA_OPERATOR_HPP
12 
13 #include "Thyra_EpetraTypes.hpp"
14 #include "Teuchos_TestForException.hpp"
15 #include "Teuchos_TypeNameTraits.hpp"
16 #include <stdexcept> // std::invalid_argument
17 
18 namespace Thyra {
19 
46 template<class Scalar>
49 {
51  (true, std::invalid_argument, "Thyra::get_Epetra_Operator: This function "
52  "only works if Scalar=double, because for Epetra objects, the only Scalar"
53  " type is double. Instead, Scalar = " <<
55 }
56 
58 template<>
60 get_Epetra_Operator( LinearOpBase<double> &op );
61 
88 template<class Scalar>
91 {
93  (true, std::invalid_argument, "Thyra::get_Epetra_Operator: This function "
94  "only works if Scalar=double, because for Epetra objects, the only Scalar"
95  " type is double. Instead, Scalar = " <<
97 }
98 
100 template<>
102 get_Epetra_Operator( const LinearOpBase<double> &op );
103 
104 } // namespace Thyra
105 
106 
107 #endif // THYRA_GET_EPETRA_OPERATOR_HPP
108 
109 #if defined(Thyra_SHOW_DEPRECATED_WARNINGS)
110 #ifdef __GNUC__
111 #warning "The ThyraEpetraAdapters package is deprecated"
112 #endif
113 #endif
114 
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Base class for all linear operators.
Teuchos::RCP< Epetra_Operator > get_Epetra_Operator(LinearOpBase< Scalar > &)
Get smart pointer to non-const Epetra_Operator object from reference to a non-const EpetraLinearOp ac...