10 #ifndef THYRA_LINEAR_OP_BASE_DEF_HPP
11 #define THYRA_LINEAR_OP_BASE_DEF_HPP
13 #include "Thyra_LinearOpBase_decl.hpp"
14 #include "Thyra_MultiVectorBase.hpp"
15 #include "Thyra_VectorSpaceBase.hpp"
24 template<
class Scalar>
25 RCP<const LinearOpBase<Scalar> >
40 template<
class Scalar>
42 const LinearOpBase<Scalar> &M,
44 const MultiVectorBase<Scalar> &X,
45 const Ptr<MultiVectorBase<Scalar> > &Y,
50 M.apply(M_trans, X, Y, alpha, beta);
58 #define THYRA_LINEAR_OP_BASE_INSTANT(SCALAR) \
60 template class LinearOpBase<SCALAR >; \
62 template void apply( \
63 const LinearOpBase<SCALAR > &M, \
64 const EOpTransp M_trans, \
65 const MultiVectorBase<SCALAR > &X, \
66 const Ptr<MultiVectorBase<SCALAR > > &Y, \
72 #endif // THYRA_LINEAR_OP_BASE_DEF_HPP
EOpTransp
Enumeration for determining how a linear operator is applied. `*.
virtual RCP< const LinearOpBase< Scalar > > clone() const
Clone the linear operator object (if supported).