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"
25RCP<const LinearOpBase<Scalar> >
42 const LinearOpBase<Scalar> &M,
43 const EOpTransp M_trans,
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, \
virtual RCP< const LinearOpBase< Scalar > > clone() const
Clone the linear operator object (if supported).
T_To & dyn_cast(T_From &from)